def test_fills_in_a_field_and_clicks_a_button(self, session): with session.scope("//li[contains(.,'Bar')]"): session.click_button("Go") assert extract_results(session)["form[first_name]"] == "Peter" session.visit("/with_scope") with session.scope("//li[contains(.,'Bar')]"): session.fill_in("First Name", value="Dagobert") session.click_button("Go") assert extract_results(session)["form[first_name]"] == "Dagobert"
def test_reposts(self, session): session.visit("/form") session.select("Sweden", field="form_region") session.click_button("awesome") post_count = extract_results(session)["post_count"] session.refresh() sleep(2) results = extract_results(session) assert results["post_count"] == post_count + 1 assert results["form[region]"] == "Sweden"
def test_unselects_an_option_from_a_select_box_by_label(self, session): session.unselect("Commando", field="Underwear") session.click_button("awesome") underwear = extract_results(session).getlist("form[underwear][]") assert "Briefs" in underwear assert "Boxerbriefs" in underwear assert "Command" not in underwear
def test_unselects_an_option_without_a_select_box(self, session): session.unselect("Commando") session.click_button("awesome") underwear = extract_results(session).getlist("form[underwear][]") assert "Briefs" in underwear assert "Boxerbriefs" in underwear assert "Command" not in underwear
def test_checks_a_checkbox_by_label(self, session): session.check("Cat") session.click_button("awesome") pets = extract_results(session).getlist("form[pets][]") assert "dog" in pets assert "cat" in pets assert "hamster" in pets
def test_selects_multiple_options(self, session): session.select("Ruby", field="Language") session.select("Javascript", field="Language") session.click_button("awesome") languages = extract_results(session).getlist("form[languages][]") assert "Ruby" in languages assert "Javascript" in languages
def test_acts_like_a_session_object(self, session): session.visit("/form") form = session.find("css", "#get-form") assert form.has_field("Middle Name") assert form.has_no_field("Languages") form.fill_in("Middle Name", value="Monkey") form.click_button("med") assert extract_results(session)["form[middle_name]"] == "Monkey"
def test_checks_via_clicking_the_wrapping_label_if_possible(self, session): assert session.find("checkbox", "form_cars_mclaren", unchecked=True, visible="hidden") session.check("form_cars_mclaren") session.click_button("awesome") assert "mclaren" in extract_results(session).getlist("form[cars][]")
def test_checks_via_the_label_if_allow_label_click_is_true(self, session): assert session.find("checkbox", "form_cars_tesla", unchecked=True, visible="hidden") session.check("form_cars_tesla", allow_label_click=True) session.click_button("awesome") assert "tesla" in extract_results(session).getlist("form[cars][]")
def test_remains_selected_if_already_selected(self, session): session.select("Ruby", field="Language") session.select("Javascript", field="Language") session.select("Ruby", field="Language") session.click_button("awesome") languages = extract_results(session).getlist("form[languages][]") assert "Ruby" in languages assert "Javascript" in languages
def test_does_not_click_the_label_if_unneeded(self, session): assert session.find("checkbox", "form_cars_tesla", unchecked=True, visible="hidden") session.uncheck("form_cars_tesla") session.click_button("awesome") assert "tesla" not in extract_results(session).getlist("form[cars][]")
def test_check_via_the_label_if_input_is_moved_off_the_left_edge_of_the_page( self, session): assert session.find("checkbox", "form_cars_pagani", unchecked=True, visible="all") is not None session.check("form_cars_pagani", allow_label_click=True) session.click_button("awesome") assert "pagani" in extract_results(session).getlist("form[cars][]")
def test_check_via_the_label_if_input_is_visible_but_blocked_by_another_element( self, session): assert session.find("checkbox", "form_cars_bugatti", unchecked=True, visible="all") is not None session.check("form_cars_bugatti", allow_label_click=True) session.click_button("awesome") assert "bugatti" in extract_results(session).getlist("form[cars][]")
def test_unchecks_via_clicking_the_label_with_for_attribute_if_possible( self, session): assert session.find("checkbox", "form_cars_jaguar", checked=True, visible="hidden") session.uncheck("form_cars_jaguar") session.click_button("awesome") assert "jaguar" not in extract_results(session).getlist("form[cars][]")
def test_encodes_complex_field_names(self, session): session.fill_in("address1_city", value="Paris") session.fill_in("address1_street", value="CDG") session.fill_in("address2_city", value="Mikolaiv") session.fill_in("address2_street", value="PGS") session.click_button("awesome") results = extract_results(session) assert results.getlist("form[addresses][][street]") == ["CDG", "PGS"] assert results.getlist("form[addresses][][city]") == [ "Paris", "Mikolaiv" ] assert results.getlist("form[addresses][][country]") == [ "France", "Ukraine" ]
def test_unchecks_a_checkbox_by_id(self, session): session.uncheck("form_pets_hamster") session.click_button("awesome") pets = extract_results(session).getlist("form[pets][]") assert "dog" in pets assert "hamster" not in pets
def test_clicks_on_approximately_matching_button(self, session): session.visit("/form") session.click_link_or_button("awe") assert extract_results(session)["form[first_name]"] == "John"
def test_aliased_as_click_on(self, session): session.visit("/form") session.click_on("awe123") assert extract_results(session)["form[first_name]"] == "John"
def test_clicks_on_a_button_with_no_type_attribute(self, session): session.visit("/form") session.click_link_or_button("no_type") assert extract_results(session)["form[first_name]"] == "John"
def test_clicks_on_a_button(self, session): session.visit("/form") session.click_link_or_button("awe123") assert extract_results(session)["form[first_name]"] == "John"
def test_submits_form_for_submit_button_by_partial_title(self, session): session.click_button("What an Awesome") assert extract_results(session)["form[first_name]"] == "John"
def test_submits_form_for_submit_button_by_id(self, session): session.click_button("awe123") assert extract_results(session)["form[first_name]"] == "John"
def test_submits_form_for_button_tag_with_title(self, session): session.click_button("Click Title button") assert extract_results(session)["form[first_name]"] == "John"
def test_submits_form_for_button_tag_with_partial_value(self, session): session.click_button("ck_me") assert extract_results(session)["form[first_name]"] == "John"
def test_submits_form_for_button_tag_with_id(self, session): session.click_button("click_me_123") assert extract_results(session)["form[first_name]"] == "John"
def test_submits_form_for_image_button_with_partial_title(self, session): session.click_button("Okay 556") assert extract_results(session)["form[first_name]"] == "John"
def test_submits_form1_for_associated_button_located_within_form2( self, session): session.click_button("other_form_button") assert extract_results(session)["form[which_form]"] == "form1"
def test_sets_a_file_path_by_label(self, session, file_path): session.attach_file("Image", file_path) session.click_button("awesome") assert extract_results(session)["form[image]"] == os.path.basename( file_path)
def test_submits_form_for_image_button_with_value(self, session): session.click_button("okay") assert extract_results(session)["form[first_name]"] == "John"
def results(self, session): session.click_button("outside_submit") return extract_results(session)