fix: add xpath rules to journey spec to make sure it finds a Go button on the welcome page that is NOT disbled

pull/1/head
rebuilt 2 years ago
parent 1d2b01ff58
commit 22d22ab5ee

@ -1,34 +1,34 @@
require 'rails_helper'
require "rails_helper"
include AnalyzeHelper
describe 'District Admin', js: true do
let(:district) { District.find_by_slug 'lee-public-schools' }
let(:different_district) { District.find_by_slug 'maynard-public-schools' }
let(:school) { School.find_by_slug 'lee-elementary-school' }
let(:school_in_same_district) { School.find_by_slug 'lee-middle-high-school' }
let(:first_school_in_wareham) { School.find_by_slug 'fowler-school' }
let(:category) { Category.find_by_name('Teachers & Leadership') }
let(:different_category) { Category.find_by_name('School Culture') }
let(:subcategory) { Subcategory.find_by_name('Teachers & The Teaching Environment') }
let(:different_subcategory) { Subcategory.find_by_name('Relationships') }
describe "District Admin", js: true do
let(:district) { District.find_by_slug "lee-public-schools" }
let(:different_district) { District.find_by_slug "maynard-public-schools" }
let(:school) { School.find_by_slug "lee-elementary-school" }
let(:school_in_same_district) { School.find_by_slug "lee-middle-high-school" }
let(:first_school_in_wareham) { School.find_by_slug "fowler-school" }
let(:category) { Category.find_by_name("Teachers & Leadership") }
let(:different_category) { Category.find_by_name("School Culture") }
let(:subcategory) { Subcategory.find_by_name("Teachers & The Teaching Environment") }
let(:different_subcategory) { Subcategory.find_by_name("Relationships") }
let(:measures_for_subcategory) { Measure.where(subcategory:) }
let(:scales_for_subcategory) { Scale.where(measure: measures_for_subcategory) }
let(:survey_items_for_subcategory) { SurveyItem.where(scale: scales_for_subcategory) }
let(:measure_1A_i) { Measure.find_by_measure_id('1A-i') }
let(:measure_2A_i) { Measure.find_by_measure_id('2A-i') }
let(:measure_2A_ii) { Measure.find_by_measure_id('2A-ii') }
let(:measure_4C_i) { Measure.find_by_measure_id('4C-i') }
let(:measure_with_no_survey_responses) { Measure.find_by_measure_id('3A-i') }
let(:measure_1A_i) { Measure.find_by_measure_id("1A-i") }
let(:measure_2A_i) { Measure.find_by_measure_id("2A-i") }
let(:measure_2A_ii) { Measure.find_by_measure_id("2A-ii") }
let(:measure_4C_i) { Measure.find_by_measure_id("4C-i") }
let(:measure_with_no_survey_responses) { Measure.find_by_measure_id("3A-i") }
let(:survey_items_for_measure_1A_i) { measure_1A_i.survey_items }
let(:survey_items_for_measure_2A_i) { measure_2A_i.survey_items }
let(:survey_items_for_measure_2A_ii) { measure_2A_ii.survey_items }
let(:survey_items_for_measure_4C_i) { measure_4C_i.survey_items }
let(:ay_2021_22) { AcademicYear.find_by_range '2021-22' }
let(:ay_2019_20) { AcademicYear.find_by_range '2019-20' }
let(:ay_2021_22) { AcademicYear.find_by_range "2021-22" }
let(:ay_2019_20) { AcademicYear.find_by_range "2019-20" }
let(:response_rates) do
[ay_2021_22, ay_2019_20].each do |academic_year|
[school, school_in_same_district, first_school_in_wareham].each do |school|
@ -106,22 +106,22 @@ describe 'District Admin', js: true do
DatabaseCleaner.clean
end
it 'navigates through the site' do
it "navigates through the site" do
page.driver.basic_authorize(username, password)
visit '/welcome'
expect(page).to have_text('Teachers & Leadership')
visit "/welcome"
expect(page).to have_text("Teachers & Leadership")
go_to_school_overview_from_welcome_page(district, school)
district_admin_sees_overview_content
click_on 'Teachers & Leadership'
click_on "Teachers & Leadership"
district_admin_sees_browse_content
click_on 'Overview'
click_on "Overview"
district_admin_sees_overview_content
click_on 'Analyze'
click_on "Analyze"
district_admin_sees_analyze_content
go_to_different_category(different_category)
@ -130,11 +130,11 @@ describe 'District Admin', js: true do
go_to_different_subcategory(different_subcategory)
district_admin_sees_subcategory_change
click_on 'Browse'
click_on "Browse"
district_admin_sees_browse_content
click_on 'School Culture'
expect(page).to have_text('Measures the degree to which the school environment is safe, caring, and academically-oriented. It considers factors like bullying, student-teacher relationships, and student valuing of learning.')
click_on "School Culture"
expect(page).to have_text("Measures the degree to which the school environment is safe, caring, and academically-oriented. It considers factors like bullying, student-teacher relationships, and student valuing of learning.")
go_to_different_school_in_same_district(school_in_same_district)
district_admin_sees_schools_change
@ -150,7 +150,7 @@ end
private
def district_admin_sees_professional_qualifications
expect(page).to have_text('Professional Qualifications')
expect(page).to have_text("Professional Qualifications")
expect(page).to have_css("[data-for-measure-id='1A-i']")
# TODO: cutpoints in source of truth have changed so the cutpoints have moved and '2.99%' is no longer a valid value for this cutpoint.
@ -158,38 +158,38 @@ def district_admin_sees_professional_qualifications
end
def district_admin_sees_student_physical_safety
expect(page).to have_text('Student Physical Safety')
expect(page).to have_text("Student Physical Safety")
expect(page).to have_css("[data-for-measure-id='2A-i'][width='40.0%'][x='60%']")
end
def district_admin_sees_problem_solving_emphasis
expect(page).to have_text('Problem Solving')
expect(page).to have_text("Problem Solving")
expect(page).to have_css("[data-for-measure-id='4C-i'][width='60.0%'][x='0.0%']")
end
def go_to_school_overview_from_welcome_page(district, school)
expect(page).to have_select('district', selected: 'Select a District')
select district.name, from: 'district-dropdown'
expect(page).to have_select('school', selected: 'Select a School')
select school.name, from: 'school-dropdown'
expect(page).to have_select('school', selected: 'Lee Elementary School')
expect(page).to have_select("district", selected: "Select a District")
select district.name, from: "district-dropdown"
expect(page).to have_select("school", selected: "Select a School")
select school.name, from: "school-dropdown"
expect(page).to have_select("school", selected: "Lee Elementary School")
expect(page).to have_xpath('//a[@class="mx-4 btn btn-secondary"]')
click_on 'Go'
expect(page).to have_xpath("//a[@class='mx-4 btn btn-secondary'][.='Go' and not(@disabled='disabled')]")
click_on "Go"
end
def go_to_different_school_in_same_district(school)
select school.name, from: 'select-school'
select school.name, from: "select-school"
end
def go_to_different_district(district)
page.driver.basic_authorize(different_district.short_name, "#{different_district.short_name}!")
select district.name, from: 'select-district'
select district.name, from: "select-district"
end
def go_to_different_year(year)
select year.formatted_range, from: 'select-academic-year'
select year.formatted_range, from: "select-academic-year"
end
def got_to_analyze_page; end
@ -210,39 +210,39 @@ def district_admin_sees_year_change
end
def district_admin_sees_overview_content
expect(page).to have_select('academic-year', selected: '2021 2022')
expect(page).to have_select('district', selected: 'Lee Public Schools')
expect(page).to have_select('school', selected: 'Lee Elementary School')
expect(page).to have_select("academic-year", selected: "2021 2022")
expect(page).to have_select("district", selected: "Lee Public Schools")
expect(page).to have_select("school", selected: "Lee Elementary School")
expect(page).to have_text(school.name)
district_admin_sees_professional_qualifications
district_admin_sees_student_physical_safety
district_admin_sees_problem_solving_emphasis
page.assert_selector('.measure-row-bar', count: 6)
page.assert_selector(".measure-row-bar", count: 6)
end
def district_admin_sees_browse_content
expect(page).to have_text('Teachers & Leadership')
expect(page).to have_text('Approval')
expect(page).to have_text("Teachers & Leadership")
expect(page).to have_text("Approval")
end
def district_admin_sees_analyze_content
expect(page).to have_text('1:Teachers & Leadership > 1A:Teachers & The Teaching Environment')
expect(page).to have_text("1:Teachers & Leadership > 1A:Teachers & The Teaching Environment")
end
def go_to_different_category(category)
select category.name, from: 'select-category'
select category.name, from: "select-category"
end
def district_admin_sees_category_change
expect(page).to have_text '2A:Safety'
expect(page).to have_text "2A:Safety"
end
def go_to_different_subcategory(subcategory)
select subcategory.name, from: 'select-subcategory'
select subcategory.name, from: "select-subcategory"
end
def district_admin_sees_subcategory_change
expect(page).to have_text('Relationships')
expect(page).to have_text("Relationships")
end

Loading…
Cancel
Save