コード例 #1
0
 def load_projects(self, paths):
     registry = ComponentRegistry()
     for path in paths:
         with open(path, 'r') as fp:
             for component in self._iter_over_all(yaml.load_all(fp, Loader=yaml.FullLoader)):
                 registry.add(component)
     return registry[Project]
コード例 #2
0
 def load_projects(self, paths):
     registry = ComponentRegistry()
     for path in paths:
         with open(path, 'r') as fp:
             for component in self._iter_over_all(yaml.load_all(fp)):
                 registry.add(component)
     return registry[Project]
コード例 #3
0
def test_registry_add_component_duplicate_key():
    registry = ComponentRegistry()

    registry.add({'name': 'name', 'test-base': {}})
    with pytest.raises(errors.DuplicateKeyError):
        registry.add({'name': 'name', 'test-base': {}})
コード例 #4
0
def test_registry_add_component_without_name():
    registry = ComponentRegistry()

    registry.add({'test-base': {}, 'other': ''})
    with pytest.raises(errors.UnregisteredComponentError):
        registry.get_component('test-base', None)
コード例 #5
0
def test_registry_add_component():
    registry = ComponentRegistry()

    registry.add({'name': 'name', 'test-base': {}})
    assert registry.get_component(TestBase, 'name') is not None
    assert registry[TestBase] is not None
コード例 #6
0
def test_registry_add_component_with_too_few_fields():
    registry = ComponentRegistry()

    registry.add({'test-base': {}})
    with pytest.raises(errors.UnregisteredComponentError):
        registry.get_component('test-base', None)
コード例 #7
0
def test_registry_add_component_with_too_many_fields():
    registry = ComponentRegistry()

    with pytest.raises(errors.WrongComponentAttributeCountError):
        registry.add({'test-base': {}, 'other': '', 'yet-another': ''})
コード例 #8
0
def test_registry_unregistered_component():
    registry = ComponentRegistry()

    registry.add({'name': 'name', 'non-existent': {}})
    with pytest.raises(errors.UnregisteredComponentError):
        registry.get_component('non-existent', 'name')
コード例 #9
0
def test_registry_add_ignored():
    registry = ComponentRegistry()

    registry.add({})
コード例 #10
0
def test_registry_add_component():
    registry = ComponentRegistry()

    registry.add({'name': 'name', 'test-base': {}})
    assert registry.get_component(TestBase, 'name') is not None
    assert registry[TestBase] is not None
コード例 #11
0
def test_registry_add_component_duplicate_key():
    registry = ComponentRegistry()

    registry.add({'name': 'name', 'test-base': {}})
    with pytest.raises(errors.DuplicateKeyError):
        registry.add({'name': 'name', 'test-base': {}})
コード例 #12
0
def test_registry_add_component_without_name():
    registry = ComponentRegistry()

    registry.add({'test-base': {}, 'other': ''})
    with pytest.raises(errors.UnregisteredComponentError):
        registry.get_component('test-base', None)
コード例 #13
0
def test_registry_add_component_with_too_many_fields():
    registry = ComponentRegistry()

    with pytest.raises(errors.WrongComponentAttributeCountError):
        registry.add({'test-base': {}, 'other': '', 'yet-another': ''})
コード例 #14
0
def test_registry_add_component_with_too_few_fields():
    registry = ComponentRegistry()

    registry.add({'test-base': {}})
    with pytest.raises(errors.UnregisteredComponentError):
        registry.get_component('test-base', None)
コード例 #15
0
def test_registry_add_ignored():
    registry = ComponentRegistry()

    registry.add({})
コード例 #16
0
def test_registry_unregistered_component():
    registry = ComponentRegistry()

    registry.add({'name': 'name', 'non-existent': {}})
    with pytest.raises(errors.UnregisteredComponentError):
        registry.get_component('non-existent', 'name')