def test_create_or_get_network_with_segmentation_id_conflict(self):

        test_segmentation_id = '42'
        mock_client = Mock()
        test_neutron_network_service.neutron_client.Client = Mock(return_value=mock_client)
        mock_client.create_network = Mock(side_effect=test_neutron_network_service.NetCreateConflict)
        mock_client.list_networks = Mock(return_value={'networks': ['test_network']})

        result = self.network_service.create_or_get_network_with_segmentation_id(openstack_session=self.openstack_session,
                                                                                 segmentation_id=test_segmentation_id,
                                                                                 cp_resource_model=self.moc_cp_model,
                                                                                 logger=self.mock_logger)

        self.assertEqual(result, 'test_network')
    def test_validate_vlan_type_success(self):
        test_net_client = Mock()

        test_net_client.create_network = Mock(return_value={'network': {'id': 'test_id'}})
        test_net_client.delete_network = Mock()

        test_vlan_type = 'vlan'
        test_provider_net_interface = 'test_interface'

        result = self.cp_validator.validate_vlan_type(net_client=test_net_client,
                                                      vlan_type=test_vlan_type,
                                                      provider_net_interface=test_provider_net_interface,
                                                      logger=self.mock_logger)
        self.assertTrue(result)
    def test_validate_vlan_type_exception(self):
        test_net_client = Mock()

        test_net_client.create_network = Mock(side_effect=Exception)
        test_net_client.delete_network = Mock()

        test_vlan_type = 'vlan'
        test_provider_net_interface = 'test_interface'

        with self.assertRaises(Exception) as context:
            self.cp_validator.validate_vlan_type(net_client=test_net_client,
                                                 vlan_type=test_vlan_type,
                                                 provider_net_interface=test_provider_net_interface,
                                                 logger=self.mock_logger)
        self.assertTrue(context)
    def test_create_or_get_network_with_segmentation_id_no_conflict(self):
        """
        Tests a successful operation of network creation with no NetCreateConflict error
        :return:
        """
        test_segmentation_id = '42'
        mock_client = Mock()
        test_neutron_network_service.neutron_client.Client = Mock(return_value=mock_client)

        mock_client.create_network = Mock(return_value={'network':'test_network'})
        result = self.network_service.create_or_get_network_with_segmentation_id(openstack_session=self.openstack_session,
                                                                                 segmentation_id=test_segmentation_id,
                                                                                 cp_resource_model=self.moc_cp_model,
                                                                                 logger=self.mock_logger)

        self.assertEqual(result, 'test_network')