예제 #1
0
    def setUp(self):
        self.mock_clients = self._create_service_mock('service_management')
        self.sms = ServiceManagementService()
        self.sms.clients = self.mock_clients
        self.yaml_definition = '''
name: datastore_testing
docstring:  Service used to create, read, update and delete persistent Objects
dependencies: []
methods:
  create_datastore:
    docstring: Create a new datastore namespace.
    in:
      datastore_name: ""
    out:
      success: True
'''
        self.bad_yaml = '''
methods:
  create_datastore:
    docstring: Create a new datastore namespace.
   in:
      datastore_name: ""
    out:
      success: True

    def test_create_resource(self):

'''
        service_definition = Mock()

        # Test bad YAML definition
        service_definition.name = "name"
        service_definition.definition = self.bad_yaml
        with self.assertRaises(BadRequest):
            self.sms.create_service_definition(service_definition)

        # Test bad name
        service_definition.definition = self.yaml_definition
        service_definition.name = "name name"
        with self.assertRaises(BadRequest):
            self.sms.create_service_definition(service_definition)

        service_definition.name = "name"
        self.mock_clients.resource_registry.create.return_value = ['123', 1]
        service_id = self.sms.create_service_definition(service_definition)
        self.assertEqual(service_id, '123')
        self.mock_clients.resource_registry.create.assert_called_once_with(
            service_definition)