def test_between_rule_both_closed_0_lte_x_lte_5(widget, get_renderer): widget.add_rule( rules.BetweenRule('vis', 'dummy_pv', '0', '5', name="betweenRule", min_equals=True, max_equals=True)) renderer = get_renderer(widget) renderer.assemble() rule_element = renderer.get_node().find('./rules/rule') assert rule_element.find('./pv').text == 'dummy_pv' assert rule_element.attrib['name'] == 'betweenRule' assert rule_element.find('./pv').attrib['trig'] == 'true' exp_elements = rule_element.findall('./exp') assert len(exp_elements) == 2 assert exp_elements[0].attrib['bool_exp'] == 'pv0 >= 0 && pv0 <= 5' value_element = exp_elements[0].find('./value') assert value_element.text == 'true' assert exp_elements[1].attrib['bool_exp'] == 'true' value_element = exp_elements[1].find('./value') assert value_element.text == 'false'
def test_between_rule_default_name(widget, get_renderer): widget.add_rule(rules.BetweenRule('vis', 'dummy_pv', '0', '5')) renderer = get_renderer(widget) renderer.assemble() rule_element = renderer.get_node().find('./rules/rule') assert rule_element.attrib['name'] == 'BetweenRule'
def test_between_rule(widget, get_renderer): widget.rules = [] widget.rules.append(rules.BetweenRule('vis', 'dummy_pv', '0', '5')) renderer = get_renderer(widget) renderer.assemble() rule_element = renderer.get_node().find('./rules/rule') assert rule_element.find('./pv').text == 'dummy_pv' assert rule_element.find('./pv').attrib['trig'] == 'true' exp_elements = rule_element.findall('./exp') assert len(exp_elements) == 3 assert exp_elements[0].attrib['bool_exp'] == 'pv0 < 0' value_element = exp_elements[0].find('./value') assert value_element.text == 'false' assert exp_elements[1].attrib['bool_exp'] == 'pv0 > 5' value_element = exp_elements[1].find('./value') assert value_element.text == 'false' assert exp_elements[2].attrib['bool_exp'] == 'true'