Commit 97aaab9c by David Baumgold

Created a new lettuce test to catch bug, updated other lettuce tests

parent 18be93c3
...@@ -24,7 +24,7 @@ Feature: Create Section ...@@ -24,7 +24,7 @@ Feature: Create Section
Given I have opened a new course in Studio Given I have opened a new course in Studio
And I have added a new section And I have added a new section
When I click the Edit link for the release date When I click the Edit link for the release date
And I save a new section release date And I set the section release date to 12/25/2013
Then the section release date is updated Then the section release date is updated
And I see a "saving" notification And I see a "saving" notification
......
...@@ -35,10 +35,15 @@ def i_click_the_edit_link_for_the_release_date(_step): ...@@ -35,10 +35,15 @@ def i_click_the_edit_link_for_the_release_date(_step):
world.css_click(button_css) world.css_click(button_css)
@step('I save a new section release date$') @step('I set the section release date to ([0-9/-]+)( [0-9:]+)?')
def i_save_a_new_section_release_date(_step): def set_section_release_date(_step, datestring, timestring):
set_date_and_time('input.start-date.date.hasDatepicker', '12/25/2013', if hasattr(timestring, "strip"):
'input.start-time.time.ui-timepicker-input', '00:00') timestring = timestring.strip()
if not timestring:
timestring = "00:00"
set_date_and_time(
'input.start-date.date.hasDatepicker', datestring,
'input.start-time.time.ui-timepicker-input', timestring)
world.browser.click_link_by_text('Save') world.browser.click_link_by_text('Save')
......
...@@ -14,7 +14,7 @@ Feature: Create Subsection ...@@ -14,7 +14,7 @@ Feature: Create Subsection
When I click the New Subsection link When I click the New Subsection link
And I enter a subsection name with a quote and click save And I enter a subsection name with a quote and click save
Then I see my subsection name with a quote on the Courseware page Then I see my subsection name with a quote on the Courseware page
And I click to edit the subsection name And I click on the subsection
Then I see the complete subsection name with a quote in the editor Then I see the complete subsection name with a quote in the editor
Scenario: Assign grading type to a subsection and verify it is still shown after refresh (bug #258) Scenario: Assign grading type to a subsection and verify it is still shown after refresh (bug #258)
...@@ -27,10 +27,13 @@ Feature: Create Subsection ...@@ -27,10 +27,13 @@ Feature: Create Subsection
Scenario: Set a due date in a different year (bug #256) Scenario: Set a due date in a different year (bug #256)
Given I have opened a new subsection in Studio Given I have opened a new subsection in Studio
And I have set a release date and due date in different years And I set the subsection release date to 12/25/2011 03:00
Then I see the correct dates And I set the subsection due date to 01/02/2012 04:00
Then I see the subsection release date is 12/25/2011 03:00
And I see the subsection due date is 01/02/2012 04:00
And I reload the page And I reload the page
Then I see the correct dates Then I see the subsection release date is 12/25/2011 03:00
And I see the subsection due date is 01/02/2012 04:00
Scenario: Delete a subsection Scenario: Delete a subsection
Given I have opened a new course section in Studio Given I have opened a new course section in Studio
...@@ -40,3 +43,16 @@ Feature: Create Subsection ...@@ -40,3 +43,16 @@ Feature: Create Subsection
And I press the "subsection" delete icon And I press the "subsection" delete icon
And I confirm the prompt And I confirm the prompt
Then the subsection does not exist Then the subsection does not exist
Scenario: Sync to Section
Given I have opened a new course section in Studio
And I click the Edit link for the release date
And I set the section release date to 01/02/2103
And I have added a new subsection
And I click on the subsection
And I set the subsection release date to 01/20/2103
And I reload the page
And I click the link to sync release date to section
And I wait for "1" second
And I reload the page
Then I see the subsection release date is 01/02/2103
...@@ -41,8 +41,8 @@ def i_save_subsection_name_with_quote(step): ...@@ -41,8 +41,8 @@ def i_save_subsection_name_with_quote(step):
save_subsection_name('Subsection With "Quote"') save_subsection_name('Subsection With "Quote"')
@step('I click to edit the subsection name$') @step('I click on the subsection$')
def i_click_to_edit_subsection_name(step): def click_on_subsection(step):
world.css_click('span.subsection-name-value') world.css_click('span.subsection-name-value')
...@@ -53,12 +53,28 @@ def i_see_complete_subsection_name_with_quote_in_editor(step): ...@@ -53,12 +53,28 @@ def i_see_complete_subsection_name_with_quote_in_editor(step):
assert_equal(world.css_value(css), 'Subsection With "Quote"') assert_equal(world.css_value(css), 'Subsection With "Quote"')
@step('I have set a release date and due date in different years$') @step('I set the subsection release date to ([0-9/-]+)( [0-9:]+)?')
def test_have_set_dates_in_different_years(step): def set_subsection_release_date(_step, datestring, timestring):
set_date_and_time('input#start_date', '12/25/2011', 'input#start_time', '03:00') if hasattr(timestring, "strip"):
world.css_click('.set-date') timestring = timestring.strip()
# Use a year in the past so that current year will always be different. if not timestring:
set_date_and_time('input#due_date', '01/02/2012', 'input#due_time', '04:00') timestring = "00:00"
set_date_and_time(
'input#start_date', datestring,
'input#start_time', timestring)
@step('I set the subsection due date to ([0-9/-]+)( [0-9:]+)?')
def set_subsection_due_date(_step, datestring, timestring):
if hasattr(timestring, "strip"):
timestring = timestring.strip()
if not timestring:
timestring = "00:00"
if not world.css_visible('input#due_date'):
world.css_click('.due-date-input .set-date')
set_date_and_time(
'input#due_date', datestring,
'input#due_time', timestring)
@step('I mark it as Homework$') @step('I mark it as Homework$')
...@@ -72,6 +88,11 @@ def i_see_it_marked__as_homework(step): ...@@ -72,6 +88,11 @@ def i_see_it_marked__as_homework(step):
assert_equal(world.css_value(".status-label"), 'Homework') assert_equal(world.css_value(".status-label"), 'Homework')
@step('I click the link to sync release date to section')
def click_sync_release_date(step):
world.css_click('.sync-date')
############ ASSERTIONS ################### ############ ASSERTIONS ###################
...@@ -91,16 +112,25 @@ def the_subsection_does_not_exist(step): ...@@ -91,16 +112,25 @@ def the_subsection_does_not_exist(step):
assert world.browser.is_element_not_present_by_css(css) assert world.browser.is_element_not_present_by_css(css)
@step('I see the correct dates$') @step('I see the subsection release date is ([0-9/-]+)( [0-9:]+)?')
def i_see_the_correct_dates(step): def i_see_subsection_release(_step, datestring, timestring):
assert_equal('12/25/2011', get_date('input#start_date')) if hasattr(timestring, "strip"):
assert_equal('03:00', get_date('input#start_time')) timestring = timestring.strip()
assert_equal('01/02/2012', get_date('input#due_date')) assert_equal(datestring, get_date('input#start_date'))
assert_equal('04:00', get_date('input#due_time')) if timestring:
assert_equal(timestring, get_date('input#start_time'))
############ HELPER METHODS ################### @step('I see the subsection due date is ([0-9/-]+)( [0-9:]+)?')
def i_see_subsection_due(_step, datestring, timestring):
if hasattr(timestring, "strip"):
timestring = timestring.strip()
assert_equal(datestring, get_date('input#due_date'))
if timestring:
assert_equal(timestring, get_date('input#due_time'))
############ HELPER METHODS ###################
def get_date(css): def get_date(css):
return world.css_find(css).first.value.strip() return world.css_find(css).first.value.strip()
......
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