Example #1
0
def test_tag_reference_tag_format():
    m = ConcreteModel()
    m.x = Var([0,1], initialize={0:2.22,1:3.33})
    m.y = Var([0,1], initialize={0:4.44,1:5.55})
    m.f = Var([0,1], initialize={0:6.66,1:7.77})
    test_tag = {}
    test_tag["[email protected]"] = TagReference(m.x[:], description="x tag")
    test_tag["[email protected]"] = TagReference(m.y[:], description="y tag")
    test_tag["[email protected]"] = TagReference(m.f[:], description="z tag")
    m.tag = test_tag

    xml_str = svg_tag(m.tag, svg_test_str, idx=0, tag_format={"[email protected]":"{:.5e}"})
    # lazy testing
    assert("2.2200e" in xml_str)
    assert("4.44000e" in xml_str)
    assert("6.6600e" in xml_str)
Example #2
0
def test_tag_reference():
    m = ConcreteModel()
    m.z = Var([0, 1], ["A", "B"], initialize={
        (0, "A"): 6, (0, "B"): 7, (1, "A"): 8, (1, "B"): 9})
    test_tag = {}
    test_tag["MyTag34&@!e.5"] = TagReference(m.z[:, "A"], description="z tag")
    assert(len(test_tag["MyTag34&@!e.5"]) == 2)
    assert(test_tag["MyTag34&@!e.5"][0].value == 6)
    assert(test_tag["MyTag34&@!e.5"][1].value == 8)
    assert(test_tag["MyTag34&@!e.5"].description == "z tag")
    m.b = Block([0, 1])
    m.b[0].y = Var(initialize=1)
    m.b[1].y = Var(initialize=2)
    test_tag = TagReference(m.b[:].y, description="y tag")
    assert(test_tag[0] == 1)
    assert(test_tag[1] == 2)
    assert(test_tag.description == "y tag")
Example #3
0
def test_tag_reference_tag_format_conditional():
    m = ConcreteModel()
    m.x = Var([0,1], initialize={0:10000,1:3.33})
    m.y = Var([0,1], initialize={0:1.1,1:5.55})
    m.f = Var([0,1], initialize={0:4.5,1:7.77})
    test_tag = {}
    test_tag["[email protected]"] = TagReference(m.x[:], description="x tag")
    test_tag["[email protected]"] = TagReference(m.y[:], description="y tag")
    test_tag["[email protected]"] = TagReference(m.f[:], description="z tag")
    m.tag = test_tag

    xml_str = svg_tag(
        m.tag,
        svg_test_str,
        idx=0,
        tag_format_default=lambda x: "{:,.0f} kPa" if x >= 100 else "{:.2f} kPa")
    # lazy testing
    assert("10,000 kPa" in xml_str)
    assert("1.10 kPa" in xml_str)
    assert("4.50 kPa" in xml_str)
Example #4
0
def test_tag_reference():
    m = ConcreteModel()
    m.x = Var([0,1], initialize={0:2.22,1:3.33})
    m.y = Var([0,1], initialize={0:4.44,1:5.55})
    m.f = Var([0,1], initialize={0:6.66,1:7.77})
    test_tag = {}
    test_tag["[email protected]"] = TagReference(m.x[:], description="x tag")
    test_tag["[email protected]"] = TagReference(m.y[:], description="y tag")
    test_tag["[email protected]"] = TagReference(m.f[:], description="z tag")
    m.tag = test_tag

    xml_str = svg_tag(m.tag, svg_test_str, idx=0)
    # lazy testing
    assert("2.22" in xml_str)
    assert("4.44" in xml_str)
    assert("6.66" in xml_str)

    xml_str = svg_tag(m.tag, svg_test_str, idx=1)
    # lazy testing
    assert("3.33" in xml_str)
    assert("5.55" in xml_str)
    assert("7.77" in xml_str)

    xml_str = svg_tag(m.tag, svg_test_str, show_tags=True)
    # lazy testing
    assert("[email protected]" in xml_str)
    assert("[email protected]" in xml_str)
    assert("[email protected]" in xml_str)

    tag_data_like = {}
    tag_data_like["[email protected]"] = 1.1212
    tag_data_like["[email protected]"] = 2.1212
    tag_data_like["[email protected]"] = "3.1212 Hello"
    xml_str = svg_tag(tag_data_like, svg_test_str, idx=None)
    assert("1.1212" in xml_str)
    assert("2.1212" in xml_str)
    assert("3.1212 Hello" in xml_str)