Example #1
0
    def test_delete_with_exception(self, mock_controllerclient, mock_driver):
        # test create with exceptions
        driver = mock_driver()
        driver.attach_mock(mock_controllerclient, 'client')
        driver.client.configure_mock(
            **{'get.return_value': fake_maxcdn_client_get_return_value})

        service_name = 'test_service_name'

        controller_with_delete_exception = services.ServiceController(driver)
        controller_with_delete_exception.client.configure_mock(
            **{
                'delete.side_effect':
                RuntimeError('Deleting service mysteriously failed.')
            })
        service_name = 'test_service_name'
        service_id = str(uuid.uuid4())
        current_domain = str(uuid.uuid1())
        domains_old = domain.Domain(domain=current_domain)
        current_origin = origin.Origin(origin='poppy.org')
        service_obj = Service(service_id=service_id,
                              name='poppy cdn service',
                              domains=[domains_old],
                              origins=[current_origin],
                              flavor_id='cdn',
                              project_id=str(uuid.uuid4()))
        resp = controller_with_delete_exception.delete(service_obj,
                                                       service_name)
        self.assertEqual(resp[driver.provider_name]['error'],
                         'Deleting service mysteriously failed.')
Example #2
0
    def test_update_with_exception(self, service_json, mock_controllerclient,
                                   mock_driver):
        # test create with exceptions
        driver = mock_driver()
        driver.attach_mock(mock_controllerclient, 'client')
        driver.client.configure_mock(
            **{'get.return_value': fake_maxcdn_client_get_return_value})

        controller_with_update_exception = services.ServiceController(driver)
        controller_with_update_exception.client.configure_mock(
            **{
                'put.side_effect':
                RuntimeError('Updating service mysteriously failed.')
            })
        resp = controller_with_update_exception.update(
            self.provider_service_id, service_json)
        self.assertIn('error', resp[driver.provider_name])

        controller_with_update_exception.client.reset_mock()
        controller_with_update_exception.client.configure_mock(
            **{
                'put.side_effect': None,
                'put.return_value': fake_maxcdn_client_400_return_value
            })
        service_obj = service.load_from_json(service_json)
        resp = controller_with_update_exception.update(
            self.provider_service_id, service_obj)
        self.assertIn('error', resp[driver.provider_name])
Example #3
0
 def test_get_metrics_by_domain(self, mock_controllerclient, mock_driver):
     driver = mock_driver()
     driver.attach_mock(mock_controllerclient, 'client')
     controller = services.ServiceController(driver)
     self.assertEqual([],
                      controller.get_metrics_by_domain(
                          'project_id', 'domain_name', []))
Example #4
0
 def test_map_service_name_no_hash(self, service_name):
     maxcdn_driver = driver.CDNProvider(self.conf)
     controller = services.ServiceController(maxcdn_driver)
     mock_service = mock.Mock()
     mock_service.name = service_name
     self.assertEqual(controller.get_provider_service_id(mock_service),
                      service_name)
Example #5
0
 def test_update(self, service_json):
     new_driver = driver.CDNProvider(self.conf)
     # instantiate
     controller = services.ServiceController(new_driver)
     # test create, everything goes through successfully
     service_obj = service.load_from_json(service_json)
     resp = controller.update(self.provider_service_id, service_obj)
     self.assertIn('id', resp[new_driver.provider_name])
Example #6
0
 def test_delete(self):
     new_driver = driver.CDNProvider(self.conf)
     # instantiate
     controller = services.ServiceController(new_driver)
     # test create, everything goes through successfully
     service_name = 'test_service_name'
     resp = controller.delete(service_name)
     self.assertIn('id', resp[new_driver.provider_name])
Example #7
0
 def test_purge(self, mock_controllerclient, mock_driver):
     # test create with exceptions
     driver = mock_driver()
     driver.attach_mock(mock_controllerclient, 'client')
     driver.client.configure_mock(**{'purge.return_value': {u'code': 200}})
     controller_purge_with_error = services.ServiceController(driver)
     pullzone_id = 'test_random_pullzone_id'
     resp = controller_purge_with_error.purge(pullzone_id)
     self.assertIn('id', resp[driver.provider_name])
Example #8
0
 def test_map_service_name_with_hash(self, service_name):
     maxcdn_driver = driver.CDNProvider(self.conf)
     controller = services.ServiceController(maxcdn_driver)
     # test hashed
     self.assertNotEqual(controller._map_service_name(service_name),
                         service_name)
     # test deterministic-ity
     self.assertEqual(controller._map_service_name(service_name),
                      controller._map_service_name(service_name))
Example #9
0
    def test_purge_with_exception(self, mock_controllerclient, mock_driver):
        # test create with exceptions
        error_message = "ding"

        driver = mock_driver()
        driver.attach_mock(mock_controllerclient, 'client')
        driver.client.configure_mock(
            **{'purge.side_effect': RuntimeError(error_message)})
        controller_purge_with_error = services.ServiceController(driver)
        pullzone_id = 'test_random_pullzone_id'
        resp = controller_purge_with_error.purge(pullzone_id)
        self.assertEqual(resp[driver.provider_name]['error'], error_message)
Example #10
0
    def test_current_customer_error(self, mock_controllerclient, mock_driver):
        # test create with exceptions
        driver = mock_driver()
        driver.attach_mock(mock_controllerclient, 'client')
        driver.client.configure_mock(
            **{'get.return_value': fake_maxcdn_client_400_return_value})

        controller = services.ServiceController(mock_driver)
        # for some reason self.assertRaises doesn't work
        try:
            controller.current_customer
        except RuntimeError as e:
            self.assertTrue(str(e) == "Get maxcdn current customer failed...")
Example #11
0
    def test_purge_failed(self, mock_controllerclient, mock_driver):
        # test create with exceptions
        mock_response = mock.MagicMock()
        mock_response.text = 'Mock -- something went wrong!'
        mock_dict = {u'code': 500}
        mock_response.__getitem__.side_effect = mock_dict.__getitem__
        driver = mock_driver()
        driver.attach_mock(mock_controllerclient, 'client')
        driver.client.configure_mock(**{'purge.return_value': mock_response})

        controller = services.ServiceController(driver)
        pullzone_id = 'test_random_pullzone_id'
        resp = controller.purge(pullzone_id)
        self.assertIn('error', resp[driver.provider_name])
Example #12
0
    def test_delete_with_exception(self, mock_controllerclient, mock_driver):
        # test create with exceptions
        driver = mock_driver()
        driver.attach_mock(mock_controllerclient, 'client')
        driver.client.configure_mock(
            **{'get.return_value': fake_maxcdn_client_get_return_value})

        service_name = 'test_service_name'

        controller_with_delete_exception = services.ServiceController(driver)
        controller_with_delete_exception.client.configure_mock(
            **{
                'delete.side_effect':
                RuntimeError('Deleting service mysteriously failed.')
            })
        resp = controller_with_delete_exception.delete(service_name)
        self.assertEqual(resp[driver.provider_name]['error'],
                         'Deleting service mysteriously failed.')
Example #13
0
 def test_delete(self):
     new_driver = driver.CDNProvider(self.conf)
     # instantiate
     controller = services.ServiceController(new_driver)
     # test create, everything goes through successfully
     service_name = 'test_service_name'
     service_id = str(uuid.uuid4())
     current_domain = str(uuid.uuid1())
     domains_old = domain.Domain(domain=current_domain)
     current_origin = origin.Origin(origin='poppy.org')
     service_obj = Service(service_id=service_id,
                           name='poppy cdn service',
                           domains=[domains_old],
                           origins=[current_origin],
                           flavor_id='cdn',
                           project_id=str(uuid.uuid4()))
     resp = controller.delete(service_obj, service_name)
     self.assertIn('id', resp[new_driver.provider_name])
Example #14
0
    def test_delete_failed(self, mock_controllerclient, mock_driver):
        # test create with exceptions
        mock_response = mock.MagicMock()
        mock_response.text = 'Mock -- something went wrong!'
        mock_dict = {u'code': 500}
        mock_response.__getitem__.side_effect = mock_dict.__getitem__
        driver = mock_driver()
        driver.attach_mock(mock_controllerclient, 'client')
        driver.client.configure_mock(**{'delete.return_value': mock_response})

        controller = services.ServiceController(driver)
        service_name = 'test_service_name'
        service_id = str(uuid.uuid4())
        current_domain = str(uuid.uuid1())
        domains_old = domain.Domain(domain=current_domain)
        current_origin = origin.Origin(origin='poppy.org')
        service_obj = Service(service_id=service_id,
                              name='poppy cdn service',
                              domains=[domains_old],
                              origins=[current_origin],
                              flavor_id='cdn',
                              project_id=str(uuid.uuid4()))
        resp = controller.delete(service_obj, service_name)
        self.assertIn('error', resp[driver.provider_name])
Example #15
0
 def test_regions(self, mock_controllerclient, mock_driver):
     driver = mock_driver()
     driver.regions = []
     driver.attach_mock(mock_controllerclient, 'client')
     controller = services.ServiceController(driver)
     self.assertEqual(controller.driver.regions, [])
Example #16
0
 def test_current_customer(self):
     new_driver = driver.CDNProvider(self.conf)
     # instantiate
     controller = services.ServiceController(new_driver)
     self.assertTrue(
         controller.current_customer['name'] == u'<My_fake_company_alias>')
Example #17
0
 def test_get(self):
     new_driver = driver.CDNProvider(self.conf)
     # instantiate
     controller = services.ServiceController(new_driver)
     service_name = 'test_service_name'
     self.assertTrue(controller.get(service_name) is not None)
Example #18
0
 def test_map_service_name_no_hash(self, service_name):
     maxcdn_driver = driver.CDNProvider(self.conf)
     controller = services.ServiceController(maxcdn_driver)
     self.assertEqual(controller._map_service_name(service_name),
                      service_name)