def can_read_multiple_attributes_on_element(self): assert_equal( html_paths.path([ html_paths.element(["li"], class_names=[], extra_attributes={'id': 'one', 'type': 'i', 'name': 'test'})]), read_html_path("li{id=one,type=i,name=test}") )
def can_read_all_the_things_on_element(self): assert_equal( html_paths.path([ html_paths.element(["p"], class_names=["tip", "top"], extra_attributes={'id': 'para', 'data': 'ordered', 'name': 'test'}, fresh=True)]), read_html_path("p.tip.top{id=para,data=ordered,name=test}:fresh") )
def can_read_single_element(self): assert_equal( html_paths.path([html_paths.element(["p"])]), read_html_path("p") )
def can_read_when_element_must_be_fresh(self): assert_equal( html_paths.path([html_paths.element(["p"], fresh=True)]), read_html_path("p:fresh") )
def can_read_multiple_classes_on_element(self): assert_equal( html_paths.path([html_paths.element(["p"], class_names=["tip", "help"])]), read_html_path("p.tip.help") )
def can_read_nested_elements(self): assert_equal( html_paths.path([html_paths.element(["ul"]), html_paths.element(["li"])]), read_html_path("ul > li") )
def can_read_choice_of_three_elements(self): assert_equal( html_paths.path([html_paths.element(["ul", "ol", "p"])]), read_html_path("ul|ol|p") )
def can_read_empty_path(self): assert_equal(html_paths.empty, read_html_path(""))
def can_read_empty_path(self): assert_equal( html_paths.empty, read_html_path("") )
def can_read_ignore_element(self): assert_equal( html_paths.ignore, read_html_path("!") )
def can_read_attribute_on_element(self): assert_equal( html_paths.path([html_paths.element(["li"], class_names=[], extra_attributes={'type': '1'})]), read_html_path("li{type=1}") )