def test_create_branches(converter, results):
    cim_objects = RDFXMLReader.cimread(converter.cim_file)
    base_power, tnodes, lines = converter._iterate_prim_eq(cim_objects)
    buses, gens, pt = converter._create_buses(tnodes)

    branches = converter._create_branches(lines, pt, base_power, buses)
    assert branches == results['branch_attr']
Example #2
0
    def transform(self):
        """
        Actually parses the CIM file and transforms its contents.
        A :class:`topology.Case` object is returned.

        """
        cim_objects = RDFXMLReader.cimread(self.cim_file)
        base_power, tnodes, lines = self._iterate_prim_eq(cim_objects)
        self._create_bb_topology(base_power, tnodes, lines)
def test_iterate_primary_equipment(converter, results):
    cim_objects = RDFXMLReader.cimread(converter.cim_file)
    base_power, tnodes, branches = converter._iterate_prim_eq(cim_objects)

    assert base_power == results['base_power']

    assert len(tnodes) == results['num_tnodes']
    for tnode, equip in tnodes.items():
        assert tnode.__class__.__name__ == 'TopologicalNode'
        assert len(equip) >= 1

    assert len(branches) == results['num_lines']
    for branch in branches:
        assert branch.__class__.__name__ == 'ACLineSegment'
def test_create_buses(converter, results):
    cim_objects = RDFXMLReader.cimread(converter.cim_file)
    base_power, tnodes, lines = converter._iterate_prim_eq(cim_objects)

    buses, gens, pt = converter._create_buses(tnodes)
    data = sorted([
            (b.name, b.btype, b.pd, b.qd, b.vm, b.va, b.cim_classes, b.pos)
                for b in buses.values()
        ])
    print (data)
    print (results['bus_attr'])
    assert data == results['bus_attr']

    assert gens == {}
    assert len(pt) == results['num_transformers']