Beispiel #1
0
    def test_adding_provides_port_to_existing_component(self):
        # GIVEN a Mesh with existing component
        m = Mesh()
        m.add_component('Component A')

        # WHEN we add a provides port to the component
        m.add_provides_port('Component A', 'provides 1')

        # THEN the provides port is represented in the output
        self.assertEqual({
            'components': [
                {
                    'name': 'Component A',
                    'needs_ports': [],
                    'provides_ports': ['provides 1']
                },
            ],
            'resources': [],
            'connections': [],
        }, m.as_dict())
Beispiel #2
0
    def test_ports_are_returned_in_the_order_they_were_added(self):
        # GIVEN a new Mesh instance
        m = Mesh()

        # WHEN I add a component with ports in a specific order
        m.add_component('Component A',
                        needs_ports=['needs 8', 'needs 7'],
                        provides_ports=['provides 8', 'provides 7'])
        m.add_needs_port('Component A', 'needs 1')
        m.add_provides_port('Component A', 'provides 1')

        # THEN the ports are represented in the output in the same order they were entered
        self.assertEqual({
            'components': [
                {
                    'name': 'Component A',
                    'needs_ports': ['needs 8', 'needs 7', 'needs 1'],
                    'provides_ports': ['provides 8', 'provides 7', 'provides 1'],
                },
            ],
            'resources': [],
            'connections': [],
        }, m.as_dict())