diff --git a/lms/djangoapps/courseware/features/homepage.feature b/lms/djangoapps/courseware/features/homepage.feature index 2c354acd49..140f1f8b5f 100644 --- a/lms/djangoapps/courseware/features/homepage.feature +++ b/lms/djangoapps/courseware/features/homepage.feature @@ -13,9 +13,7 @@ Feature: Homepage for web users Scenario Outline: User can see main parts of the page Given I visit the homepage - Then I should see a link with the id "" called "" - - Examples: + Then I should see the following links and ids | id | Link | | about | About | | jobs | Jobs | @@ -27,9 +25,7 @@ Feature: Homepage for web users # TODO: test according to domain or policy Scenario: User can see the partner institutions Given I visit the homepage - Then I should see "" in the Partners section - - Examples: + Then I should see the following Partners in the Partners section | Partner | | MITx | | HarvardX | diff --git a/lms/djangoapps/courseware/features/homepage.py b/lms/djangoapps/courseware/features/homepage.py index 62e9096e70..585d1582d7 100644 --- a/lms/djangoapps/courseware/features/homepage.py +++ b/lms/djangoapps/courseware/features/homepage.py @@ -2,11 +2,22 @@ #pylint: disable=W0621 from lettuce import world, step -from nose.tools import assert_in +from nose.tools import assert_in, assert_equals -@step('I should see "([^"]*)" in the Partners section$') -def i_should_see_partner(step, partner): +@step(u'I should see the following Partners in the Partners section') +def i_should_see_partner(step): partners = world.browser.find_by_css(".partner .name span") names = set(span.text for span in partners) - assert_in(partner, names) + for partner in step.hashes: + assert_in(partner['Partner'], names) + + +@step(u'I should see the following links and ids') +def should_see_a_link_called(step): + for link_id_pair in step.hashes: + link_id = link_id_pair['id'] + text = link_id_pair['Link'] + link = world.browser.find_by_id(link_id) + assert len(link) > 0 + assert_equals(link.text, text)