Пример #1
0
    def test_get_not_found(self, not_found, allow_access, pulp_conf, exists,
                           realpath):
        allow_access.return_value = True
        exists.return_value = False
        realpath.side_effect = lambda p: p.upper()

        host = 'localhost'
        path = '/pulp/content'

        conf = {
            'authentication': {
                'rsa_key': '/tmp/key'
            },
            'lazy': {
                'enabled': 'false',
            }
        }
        pulp_conf.get.side_effect = lambda s, p: conf.get(s).get(p)

        request = Mock(path_info=path)
        request.get_host.return_value = host

        # test
        view = ContentView()
        reply = view.get(request)

        # validation
        allow_access.assert_called_once_with(request.environ, host)
        realpath.assert_called_once_with(path)
        exists.assert_called_once_with(path.upper())
        not_found.assert_called_once_with(path)
        self.assertEqual(reply, not_found.return_value)
Пример #2
0
    def test_init(self, key_load, pulp_conf):
        key_path = '/tmp/rsa.key'
        conf = {'authentication': {'rsa_key': key_path}}

        pulp_conf.get.side_effect = lambda s, p: conf.get(s).get(p)

        # test
        ContentView()

        # validation
        key_load.assert_called_once_with(key_path)
Пример #3
0
    def test_get_http(self, realpath, allow_access):
        realpath.side_effect = lambda p: '/some/content'
        host = 'localhost'
        path = '/some/content/'
        self.environ['wsgi.url_scheme'] = 'http'

        request = Mock(path_info=path, environ=self.environ)
        request.get_host.return_value = host

        # test
        view = ContentView()
        view.x_send = Mock()
        self.assertRaises(content_views.Http404, view.get, request)
        self.assertEqual(0, allow_access.call_count)
Пример #4
0
    def test_get_outside_pub(self, forbidden, allow_access):
        allow_access.return_value = True

        host = 'localhost'
        path = '/etc/pki/tls/private/myprecious.key'

        request = Mock(path_info=path, environ=self.environ)
        request.get_host.return_value = host

        # test
        view = ContentView()
        reply = view.get(request)

        # validation
        allow_access.assert_called_once_with(request.environ, host)
        self.assertEqual(reply, forbidden.return_value)
Пример #5
0
    def test_get_not_authorized(self, forbidden, allow_access):
        allow_access.return_value = False

        host = 'localhost'
        path = '/var/lib/pulp/published/content'

        request = Mock(path_info=path, environ=self.environ)
        request.get_host.return_value = host

        # test
        view = ContentView()
        reply = view.get(request)

        # validation
        allow_access.assert_called_once_with(request.environ, host)
        self.assertEqual(reply, forbidden.return_value)
Пример #6
0
    def test_get_not_found(self, pulp_conf):
        host = 'localhost'
        path = '/var/lib/pulp/published/content'
        request = Mock(path_info=path, environ=self.environ)
        request.get_host.return_value = host
        conf = {
            'authentication': {
                'rsa_key': '/tmp/key'
            },
            'server': {
                'storage_dir': '/var/lib/pulp'
            }
        }
        pulp_conf.get.side_effect = lambda s, p: conf.get(s).get(p)

        # test
        view = ContentView()
        self.assertRaises(content_views.Http404, view.get, request)
Пример #7
0
    def test_get_x_send(self, x_send, allow_access, exists, realpath):
        allow_access.return_value = True
        exists.return_value = True
        realpath.side_effect = lambda p: '/var/lib/pulp/published/content'

        host = 'localhost'
        path = '/var/www/pub/content'

        request = Mock(path_info=path, environ=self.environ)
        request.get_host.return_value = host

        # test
        view = ContentView()
        reply = view.get(request)

        # validation
        allow_access.assert_called_once_with(request.environ, host)
        realpath.assert_called_with(path)
        x_send.assert_called_once_with('/var/lib/pulp/published/content')
        self.assertEqual(reply, x_send.return_value)
Пример #8
0
    def test_get_x_send(self, x_send, allow_access, exists, realpath):
        allow_access.return_value = True
        exists.return_value = True
        realpath.side_effect = lambda p: p.upper()

        host = 'localhost'
        path = '/pulp/content'

        request = Mock(path_info=path)
        request.get_host.return_value = host

        # test
        view = ContentView()
        reply = view.get(request)

        # validation
        allow_access.assert_called_once_with(request.environ, host)
        realpath.assert_called_once_with(path)
        exists.assert_called_once_with(path.upper())
        x_send.assert_called_once_with(path.upper())
        self.assertEqual(reply, x_send.return_value)
Пример #9
0
    def test_get_redirected(self, redirect, allow_access, mock_conf_get,
                            exists, realpath):
        allow_access.return_value = True
        exists.return_value = False
        realpath.side_effect = lambda p: '/var/lib/pulp/content/rpm'

        host = 'localhost'
        path = '/var/www/pub/content'

        request = Mock(path_info=path, environ=self.environ)
        request.get_host.return_value = host

        # test
        view = ContentView()
        reply = view.get(request)

        # validation
        allow_access.assert_called_once_with(request.environ, host)
        realpath.assert_called_with(path)
        exists.assert_has_call('/var/lib/pulp/content/rpm')
        self.assertTrue(exists.call_count > 0)
        redirect.assert_called_once_with(request, view.key)
        self.assertEqual(reply, redirect.return_value)