spec: _adds_ term dropdown spec
Change-Id: I8de35ab3499777cf148e66cc69c1d3daa4493f0c Reviewed-on: https://gerrit.instructure.com/87021 Tested-by: Jenkins Reviewed-by: Gentry Beckmann <gbeckmann@instructure.com> Product-Review: Gentry Beckmann <gbeckmann@instructure.com> QA-Review: Gentry Beckmann <gbeckmann@instructure.com>
This commit is contained in:
parent
cfab9316bc
commit
fb07f513ed
|
@ -12,6 +12,13 @@ module Factories
|
|||
account.grading_period_groups.create!(title: TITLE)
|
||||
end
|
||||
|
||||
def create_for_account_with_term(account, term_name, group_title = TITLE)
|
||||
custom_term = account.enrollment_terms.create!(name: term_name)
|
||||
group = account.grading_period_groups.create!(title: group_title)
|
||||
group.enrollment_terms << custom_term
|
||||
group
|
||||
end
|
||||
|
||||
def legacy_create_for_course(course)
|
||||
# This relationship will eventually go away.
|
||||
# Please use this helper so that old associations can be easily
|
||||
|
|
|
@ -48,6 +48,38 @@ describe "multiple grading periods account page" do
|
|||
edit_first_grading_period("Edited Title")
|
||||
expect(period_present?("Edited Title")).to be true
|
||||
end
|
||||
|
||||
context "page functionality" do
|
||||
group_name_1 = "Group 1"
|
||||
group_name_2 = "Group 2"
|
||||
term_name_1 = "First Term"
|
||||
term_name_2 = "Second Term"
|
||||
period_name_1 = "A Grading Period"
|
||||
period_name_2 = "Another Grading Period"
|
||||
|
||||
before(:each) do
|
||||
group1 = group_helper.create_for_account_with_term(Account.default, term_name_1, group_name_1)
|
||||
group2 = group_helper.create_for_account_with_term(Account.default, term_name_2, group_name_2)
|
||||
period_helper.create_for_group(group1, title: period_name_1)
|
||||
period_helper.create_for_group(group2, title: period_name_2)
|
||||
|
||||
visit_account_grading_standards(Account.default.id)
|
||||
end
|
||||
|
||||
it "term dropdown filters grading period sets", test_id: 2528643, priority: "1" do
|
||||
select_term_filter(term_name_1)
|
||||
expect(find_set(group_name_1)).to be_displayed
|
||||
expect(set_present?(group_name_2)).to be false
|
||||
|
||||
select_term_filter(term_name_2)
|
||||
expect(find_set(group_name_2)).to be_displayed
|
||||
expect(set_present?(group_name_1)).to be false
|
||||
|
||||
select_term_filter("All Terms")
|
||||
expect(find_set(group_name_1)).to be_displayed
|
||||
expect(find_set(group_name_2)).to be_displayed
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
|
|
|
@ -8,6 +8,7 @@ module MultipleGradingPeriods
|
|||
# Main page components
|
||||
let(:grading_periods_tab) { f("#grading-periods-tab") }
|
||||
let(:add_set_of_grading_periods_button) { f('button[aria-label="Add Set of Grading Periods"]') }
|
||||
let(:term_dropdown) { f('select[aria-label="Enrollment Term"]')}
|
||||
|
||||
# Set components
|
||||
let(:set_name_input) { f('#set-name')}
|
||||
|
@ -20,6 +21,8 @@ module MultipleGradingPeriods
|
|||
let(:edit_grading_period_set_button) { f('.edit_grading_period_set_button')}
|
||||
let(:edit_set_save_button) { f('button[aria-label="Save Grading Period Set"]') }
|
||||
let(:first_collapsed_set) { f('.GradingPeriodSet--collapsed') }
|
||||
let(:all_collapsed_set_titles_css) { '.GradingPeriodSet--collapsed .GradingPeriodSet__title' }
|
||||
|
||||
|
||||
# Period components
|
||||
let(:period_title_input) { f('#title') }
|
||||
|
@ -91,5 +94,23 @@ module MultipleGradingPeriods
|
|||
replace_content(period_title_input, title)
|
||||
save_period_button.click
|
||||
end
|
||||
|
||||
def select_term_filter(term)
|
||||
term_dropdown.click
|
||||
options = ff('select[aria-label="Enrollment Term"] option')
|
||||
options.each do |option|
|
||||
if option.text == term then option.click end
|
||||
end
|
||||
end
|
||||
|
||||
def all_collapsed_set_titles
|
||||
ff(all_collapsed_set_titles_css)
|
||||
end
|
||||
|
||||
def find_set(set_name)
|
||||
all_collapsed_set_titles.each do |title|
|
||||
if title.text == set_name then return title end
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
Loading…
Reference in New Issue