Why Gemfury? Push, build, and install  RubyGems npm packages Python packages Maven artifacts PHP packages Go Modules Debian packages RPM packages NuGet packages

Repository URL to install this package:

Details    
hub-client / dockerhub / test / test_middleware.py
Size: Mime:
# Copyright (c) 2015 Docker, Inc. All rights reserved.

import json
import requests

from django.test import TestCase, RequestFactory
from dockerhub import middleware


class TestDockerHubAPIExceptionMiddleware(TestCase):
    @classmethod
    def setUpClass(cls):
        cls.factory = RequestFactory()
        cls.middleware = middleware.DockerHubAPIExceptionMiddleware()

    def test_v2_error(self):
        req = self.factory.get('/v2/foo')
        resp = self.middleware.process_exception(req, ValueError())
        self.assertEqual(resp.status_code, requests.codes.internal_server_error)
        self.assertTrue('detail' in json.loads(resp.content))

    def test_non_v2_error(self):
        req = self.factory.get('/foo')
        resp = self.middleware.process_exception(req, ValueError())
        self.assertIsNone(resp)