Selaa lähdekoodia

FT refactored, made a function to test table easily.

david 5 vuotta sitten
vanhempi
commit
951fd68d0f
1 muutettua tiedostoa jossa 10 lisäystä ja 8 poistoa
  1. 10 8
      functional_tests.py

+ 10 - 8
functional_tests.py

@@ -12,6 +12,11 @@ class NewVisitorTest(unittest.TestCase):
     def tearDown(self):
         self.browser.quit()
 
+    def check_for_row_in_list_table(self, row_text):
+        table = self.browser.find_element_by_id('id_list_table')
+        rows = table.find_elements_by_tag_name('tr')
+        self.assertIn(row_text, [row.text for row in rows])
+
     def test_can_start_a_list_and_retrieve_it_later(self):
         self.browser.get('http://localhost:8000')
         self.assertIn('To-Do', self.browser.title)
@@ -25,18 +30,15 @@ class NewVisitorTest(unittest.TestCase):
         # ITEM 1
         inputbox.send_keys('Buy rubber ducks')
         inputbox.send_keys(Keys.ENTER)
-        time.sleep(3) # When in doubt, increase it / add a wait!
-        table = self.browser.find_element_by_id('id_list_table')
-        rows = table.find_elements_by_tag_name('tr')
-        self.assertIn('1: Buy rubber ducks', [row.text for row in rows])
+        time.sleep(1)
+        self.check_for_row_in_list_table('1: Buy rubber ducks')
         # ITEM 2
         inputbox = self.browser.find_element_by_id('id_new_item')
         inputbox.send_keys('Buy squirrel suits')
         inputbox.send_keys(Keys.ENTER)
-        time.sleep(3) # When in doubt, increase it / add a wait!
-        table = self.browser.find_element_by_id('id_list_table')
-        rows = table.find_elements_by_tag_name('tr')
-        self.assertIn('2: Buy squirrel suits', [row.text for row in rows])
+        time.sleep(1)
+        self.check_for_row_in_list_table('1: Buy rubber ducks')
+        self.check_for_row_in_list_table('2: Buy squirrel suits')
         # Done?
         self.fail('Finish the test!')