expanded NewVisitorTest() model in functional_tests to check if user can input a to-do item, which fails

This commit is contained in:
Disco DeDisco
2025-12-30 17:44:48 -05:00
parent 70392f3103
commit f267dd98ae

View File

@@ -1,5 +1,8 @@
import unittest
from selenium import webdriver from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.common.keys import Keys
import time
import unittest
class NewVisitorTest(unittest.TestCase): class NewVisitorTest(unittest.TestCase):
def setUp(self): def setUp(self):
@@ -11,6 +14,21 @@ class NewVisitorTest(unittest.TestCase):
def test_can_start_a_todo_list(self): def test_can_start_a_todo_list(self):
self.browser.get("http://localhost:8000") self.browser.get("http://localhost:8000")
self.assertIn("To-Do", self.browser.title) self.assertIn("To-Do", self.browser.title)
header_text = self.browser.find_element(By.TAG_NAME, 'h1').text
self.assertIn('To-Do', header_text)
inputbox = self.browser.find_element(By.ID, 'id_new_item')
self.assertEqual(inputbox.get_attribute('placeholder'), 'Enter a to-do item')
inputbox.send_keys('Buy peacock feathers')
inputbox.send_keys(Keys.ENTER)
time.sleep(1)
table = self.browser.find_element(By.ID, 'id_list_table')
rows = table.find_elements(By.TAG_NAME, 'tr')
self.assertTrue(any(row.text == '1: Buy peacock feathers' for row in rows))
self.fail("Finish the test!") self.fail("Finish the test!")
if __name__ == "__main__": if __name__ == "__main__":