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]
 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]
Esempio n. 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': {}})
Esempio n. 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)
Esempio n. 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
Esempio n. 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)
Esempio n. 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': ''})
Esempio n. 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')
Esempio n. 9
0
def test_registry_add_ignored():
    registry = ComponentRegistry()

    registry.add({})
Esempio n. 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
Esempio n. 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': {}})
Esempio n. 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)
Esempio n. 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': ''})
Esempio n. 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)
Esempio n. 15
0
def test_registry_add_ignored():
    registry = ComponentRegistry()

    registry.add({})
Esempio n. 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')