Esempio n. 1
0
 def test_do_not_filter_unshared_requests(self):
     result = trusted.filter_factory({'enabled': 'true'})(self.app)
     pkg = 'wafflehaus.neutron.shared_network.trusted.TrustedSharedNetwork'
     with patch(pkg + '._sanitize_shared_nets', self.default_mock) as mock:
         resp = result.__call__.request('/v2.0/networks', method='GET')
         self.assertFalse(mock.called)
     self.assertEqual(resp, self.app)
 def test_do_not_filter_unshared_requests(self):
     result = trusted.filter_factory({"enabled": "true"})(self.app)
     pkg = "wafflehaus.neutron.shared_network.trusted.TrustedSharedNetwork"
     with patch(pkg + "._sanitize_shared_nets", self.default_mock) as mock:
         resp = result.__call__.request("/v2.0/networks", method="GET")
         self.assertFalse(mock.called)
     self.assertEqual(resp, self.app)
 def test_do_call_on_correct_request(self):
     result = trusted.filter_factory({"enabled": "true"})(self.app)
     pkg = "wafflehaus.neutron.shared_network.trusted.TrustedSharedNetwork"
     with patch(pkg + "._sanitize_shared_nets", self.default_mock) as mock:
         result.__call__.request("/v2.0/networks?shared=true", method="GET")
         self.assertTrue(mock.called)
         result.__call__.request("/v2.0/networks.json?shared=true", method="GET")
         self.assertTrue(mock.called)
         result.__call__.request("/v2.0/networks.xml?shared=true", method="GET")
         self.assertTrue(mock.called)
Esempio n. 4
0
 def test_do_call_on_correct_request(self):
     result = trusted.filter_factory({'enabled': 'true'})(self.app)
     pkg = 'wafflehaus.neutron.shared_network.trusted.TrustedSharedNetwork'
     with patch(pkg + '._sanitize_shared_nets', self.default_mock) as mock:
         result.__call__.request('/v2.0/networks?shared=true', method='GET')
         self.assertTrue(mock.called)
         result.__call__.request('/v2.0/networks.json?shared=true',
                                 method='GET')
         self.assertTrue(mock.called)
         result.__call__.request('/v2.0/networks.xml?shared=true',
                                 method='GET')
         self.assertTrue(mock.called)
    def test_runtime_override(self):
        self.set_reconfigure()
        result = trusted.filter_factory({"enabled": "true"})(self.app)
        headers = {"X_WAFFLEHAUS_TRUSTEDSHAREDNETWORK_ENABLED": False}

        pkg = "wafflehaus.neutron.shared_network.trusted.TrustedSharedNetwork"
        with patch(pkg + "._sanitize_shared_nets", self.default_mock) as mock:
            result.__call__.request("/v2.0/networks?shared=true", method="GET", headers=headers)
            self.assertFalse(mock.called)
            result.__call__.request("/v2.0/networks.json?shared=true", method="GET", headers=headers)
            self.assertFalse(mock.called)
            result.__call__.request("/v2.0/networks.xml?shared=true", method="GET", headers=headers)
            self.assertFalse(mock.called)
    def test_do_not_modify_response_with_shared_nets_whitelisted_mixed2(self):
        app = FakeWebApp(response=self.create_response(1, 0, 1, 0))
        app_networks = json.loads(app.body).get("networks")
        self.assertEqual(2, len(app_networks))
        self.assertTrue(all(n.get("shared") for n in app_networks))

        result = trusted.filter_factory(self.trusted_conf)(app)
        resp = result.__call__.request("/v2.0/networks?shared=true", method="GET", headers=self.headers_whitelist1)

        self.assertTrue(isinstance(resp, webob.response.Response))
        self.assertNotEqual(app.body, resp.body)
        body_networks = json.loads(resp.body).get("networks")
        self.assertEqual(2, len(body_networks))
        self.assertTrue(all(n.get("shared") for n in body_networks))
    def test_do_modify_response_with_shared_nets(self):
        app = FakeWebApp(response=self.create_response(1, 1, 0, 0))
        app_networks = json.loads(app.body).get("networks")
        self.assertEqual(2, len(app_networks))
        self.assertTrue(any(n.get("shared") for n in app_networks))

        result = trusted.filter_factory({"enabled": "true"})(app)
        resp = result.__call__.request("/v2.0/networks?shared=true", method="GET")

        self.assertTrue(isinstance(resp, webob.response.Response))
        self.assertNotEqual(app.body, resp.body)
        body_networks = json.loads(resp.body).get("networks")
        self.assertEqual(1, len(body_networks))
        self.assertFalse(any(n.get("shared") for n in body_networks))
Esempio n. 8
0
    def test_do_modify_response_with_shared_nets(self):
        app = FakeWebApp(response=self.create_response(1, 1, 0, 0))
        app_networks = json.loads(app.body).get("networks")
        self.assertEqual(2, len(app_networks))
        self.assertTrue(any(n.get('shared') for n in app_networks))

        result = trusted.filter_factory({'enabled': 'true'})(app)
        resp = result.__call__.request('/v2.0/networks?shared=true',
                                       method='GET')

        self.assertTrue(isinstance(resp, webob.response.Response))
        self.assertNotEqual(app.body, resp.body)
        body_networks = json.loads(resp.body).get("networks")
        self.assertEqual(1, len(body_networks))
        self.assertFalse(any(n.get('shared') for n in body_networks))
    def test_override_trusted_conf_with_blacklist_multiples(self):
        app = FakeWebApp(response=self.create_response(0, 2, 2, 0))
        app_networks = json.loads(app.body).get("networks")
        self.assertEqual(4, len(app_networks))
        self.assertTrue(any(n.get("shared") for n in app_networks))

        result = trusted.filter_factory(self.trusted_confs)(app)
        resp = result.__call__.request("/v2.0/networks?shared=true", method="GET", headers=self.headers_blacklist2)

        self.assertTrue(isinstance(resp, webob.response.Response))
        self.assertNotEqual(app.body, resp.body)
        body_networks = json.loads(resp.body).get("networks")
        self.assertEqual(2, len(body_networks))
        self.assertFalse(any(n.get("shared") for n in body_networks))
        self.assertFalse(any(n.get("id") == self.trusted_id1 for n in body_networks))
        self.assertFalse(any(n.get("id") == self.trusted_id2 for n in body_networks))
Esempio n. 10
0
    def test_do_not_modify_response_with_shared_nets_whitelisted_mixed2(self):
        app = FakeWebApp(response=self.create_response(1, 0, 1, 0))
        app_networks = json.loads(app.body).get("networks")
        self.assertEqual(2, len(app_networks))
        self.assertTrue(all(n.get('shared') for n in app_networks))

        result = trusted.filter_factory(self.trusted_conf)(app)
        resp = result.__call__.request('/v2.0/networks?shared=true',
                                       method='GET',
                                       headers=self.headers_whitelist1)

        self.assertTrue(isinstance(resp, webob.response.Response))
        self.assertNotEqual(app.body, resp.body)
        body_networks = json.loads(resp.body).get("networks")
        self.assertEqual(2, len(body_networks))
        self.assertTrue(all(n.get('shared') for n in body_networks))
Esempio n. 11
0
    def test_runtime_override(self):
        self.set_reconfigure()
        result = trusted.filter_factory({'enabled': 'true'})(self.app)
        headers = {'X_WAFFLEHAUS_TRUSTEDSHAREDNETWORK_ENABLED': False}

        pkg = 'wafflehaus.neutron.shared_network.trusted.TrustedSharedNetwork'
        with patch(pkg + '._sanitize_shared_nets', self.default_mock) as mock:
            result.__call__.request('/v2.0/networks?shared=true',
                                    method='GET',
                                    headers=headers)
            self.assertFalse(mock.called)
            result.__call__.request('/v2.0/networks.json?shared=true',
                                    method='GET',
                                    headers=headers)
            self.assertFalse(mock.called)
            result.__call__.request('/v2.0/networks.xml?shared=true',
                                    method='GET',
                                    headers=headers)
            self.assertFalse(mock.called)
Esempio n. 12
0
    def test_override_trusted_conf_with_blacklist_multiples(self):
        app = FakeWebApp(response=self.create_response(0, 2, 2, 0))
        app_networks = json.loads(app.body).get("networks")
        self.assertEqual(4, len(app_networks))
        self.assertTrue(any(n.get('shared') for n in app_networks))

        result = trusted.filter_factory(self.trusted_confs)(app)
        resp = result.__call__.request('/v2.0/networks?shared=true',
                                       method='GET',
                                       headers=self.headers_blacklist2)

        self.assertTrue(isinstance(resp, webob.response.Response))
        self.assertNotEqual(app.body, resp.body)
        body_networks = json.loads(resp.body).get("networks")
        self.assertEqual(2, len(body_networks))
        self.assertFalse(any(n.get('shared') for n in body_networks))
        self.assertFalse(
            any(n.get('id') == self.trusted_id1 for n in body_networks))
        self.assertFalse(
            any(n.get('id') == self.trusted_id2 for n in body_networks))
 def test_default_intance_create(self):
     self.app = FakeWebApp(response=self.create_response(0, 1, 0, 0))
     result = trusted.filter_factory({"enabled": "true"})(self.app)
     self.assertIsNotNone(result)
Esempio n. 14
0
 def test_default_intance_create(self):
     self.app = FakeWebApp(response=self.create_response(0, 1, 0, 0))
     result = trusted.filter_factory({'enabled': 'true'})(self.app)
     self.assertIsNotNone(result)