Commit d16a6f50 authored by Ryan Carlo Bautista's avatar Ryan Carlo Bautista

finished functional test setup for main, sunflowey, cloud, and jester pages.

parent df4bf1ea
......@@ -19,14 +19,132 @@ class NewVisitorTest(unittest.TestCase):
# She sees a list containing three heroes with their corresponding
# names, health points, and damage
heroes_list_text = ' '
list_elements = self.browser.find_elements_by_tag_name('li')
for i in list_elements:
heroes_list_text = heroes_list_text + ' ' + i.text
self.assertIn('Jester', heroes_list_text)
self.assertIn('Cloud', heroes_list_text)
self.assertIn('Sunflowey', heroes_list_text)
self.assertIn('Health Points: 660', heroes_list_text)
self.assertIn('Attack Damage: 64', heroes_list_text)
self.assertIn('Health Points: 600', heroes_list_text)
self.assertIn('Attack Damage: 57', heroes_list_text)
self.assertIn('Health Points: 650', heroes_list_text)
self.assertIn('Attack Damage: 43', heroes_list_text)
# When she selects one of the heroes, she is sent to another page
# containing more information about the hero (additional stats, lore, image).
self.browser.get_element_by_link_text('Jester').click()
self.assertIn('/hero/jester', self.browser.current_url)
header_text = self.browser.get_element_by_id('h1').text
dt_text = ''
dt_elements = self.browser.find_elements_by_tag_name('dt')
for j in dt_elements:
dt_text = dt_text + j.text
dd_text = ''
dd_elements = self.browser.find_elements_by_tag_name('dd')
for k in dd_elements:
dd_text = dd_text + k.text
self.assertIn('Detail - Jester', header_text)
self.assertIn('Health Points', dt_text)
self.assertIn('660', dd_text)
self.assertIn('Base Attack Damage', dt_text)
self.assertIn('64', body_text)
self.assertIn('Skills', dt_text)
self.assertIn('Laugh, Dance, Smile', dd_text)
self.assertIn('Lore', dt_text)
self.assertIn('I do it for the LOLs', dd_text)
self.assertIn('/jester.png', browser.find_element_by_tag_name('img').get_attribute('src'))
# She spots the page title and header mentions the name of the hero she selected.
self.assertIn('Detail - Jester', self.browser.title)
# While she is in a specific hero's page, she sees a button labeled "Back to Heroes List".
# She clicks this and she is redirected back to the wiki's homepage.
self.browser.get_element_by_tag_name('button').click()
self.assertIn('/heroes', self.browser.current_url)
#testing cloud page
self.browser.get_element_by_link_text('Cloud').click()
self.assertIn('/hero/cloud', self.browser.current_url)
header_text = self.browser.get_element_by_id('h1').text
dt_text = ''
dt_elements = self.browser.find_elements_by_tag_name('dt')
for j in dt_elements:
dt_text = dt_text + j.text
dd_text = ''
dd_elements = self.browser.find_elements_by_tag_name('dd')
for k in dd_elements:
dd_text = dd_text + k.text
self.assertIn('Detail - Cloud', header_text)
self.assertIn('Health Points', dt_text)
self.assertIn('600', dd_text)
self.assertIn('Base Attack Damage', dt_text)
self.assertIn('57', body_text)
self.assertIn('Skills', dt_text)
self.assertIn('Nimbus, Rain Cloud, Thunderbolt', dd_text)
self.assertIn('Lore', dt_text)
self.assertIn("I am a cloud. When I pee you call it 'rain'", dd_text)
self.assertIn('/cloud.png', browser.find_element_by_tag_name('img').get_attribute('src'))
self.assertIn('Detail - Cloud', self.browser.title)
self.browser.get_element_by_tag_name('button').click()
self.assertIn('/heroes', self.browser.current_url)
self.fail('Finish the test!')
#testing sunflowey page
self.browser.get_element_by_link_text('Sunflowey').click()
self.assertIn('/hero/sunflowey', self.browser.current_url)
header_text = self.browser.get_element_by_id('h1').text
dt_text = ''
dt_elements = self.browser.find_elements_by_tag_name('dt')
for j in dt_elements:
dt_text = dt_text + j.text
dd_text = ''
dd_elements = self.browser.find_elements_by_tag_name('dd')
for k in dd_elements:
dd_text = dd_text + k.text
self.assertIn('Detail - Sunflowey', header_text)
self.assertIn('Health Points', dt_text)
self.assertIn('650', dd_text)
self.assertIn('Base Attack Damage', dt_text)
self.assertIn('43', body_text)
self.assertIn('Skills', dt_text)
self.assertIn('Power Pellet, Sunshine, Pollen Punch', dd_text)
self.assertIn('Lore', dt_text)
self.assertIn('I am Sunflowey. Sometimes a sun, sometimes a flower', dd_text)
self.assertIn('/sunflowey.png', browser.find_element_by_tag_name('img').get_attribute('src'))
self.assertIn('Detail - Sunflowey', self.browser.title)
self.browser.get_element_by_tag_name('button').click()
self.assertIn('/heroes', self.browser.current_url)
self.fail('Finish the test!')
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment