//zoneAdmin_spec.js describe('Begin Career Exploration Widget script', function () { //login-journeysmap landing page var UserNameTextBox = element(by.css('#txtU')); var PasswordTextBox = element(by.css('#txtP')); //Open browser browser.get(browser.params.login); it('should have a title', async function () { await expect(browser.getTitle()).toEqual('Login'); }); //Sign In SignIn(UserNameTextBox, PasswordTextBox); it('should have a title', async function () { await expect(browser.getTitle()).toEqual('Zone Management'); }); function SignIn(UserNameTextBox, PasswordTextBox) { it('SignIn, should sign into journeysmap.com', async function () { var PageGreetingText = element(by.css('td > div > div:nth-child(1)')); var NextButton = element(by.css('.btn')); var JourneysGreeting = element(by.css('.navbar-nav:nth-child(2) > .nav-item')); expect(await PageGreetingText.getText()).toEqual('Login and start exploring.'); browser.sleep(1500); await UserNameTextBox.sendKeys(browser.params.username).then(function() { browser.sleep(1500); }); await PasswordTextBox.sendKeys(browser.params.password).then(function() { browser.sleep(1500); }); await NextButton.click().then(function() { browser.sleep(5000); }); browser.waitForAngularEnabled(false); expect(await JourneysGreeting.getText()).toContain('Hi, '); expect(await JourneysGreeting.getText()).toContain('Juanmanager'); }); } AdminDashboard(); ManageSchools(); ManageTeachers(); ManageClasses(); ManageStudents(); AddStudentToClass(); ManageSimulations(); ManageReports(); //Sign Out*/ SignOut(); }); function AdminDashboard() { it(': AdminDashboard, should verify Admin Dashboard landing page.', async function () { var PageTitle = element(by.css('#title')); var ManageSchoolsTile = element(by.css('.col-lg-2:nth-child(2) tr:nth-child(1) > td')); var ManageTeachersTile = element(by.css('.col-lg-2:nth-child(3) tr:nth-child(1) > td')); var ManageClassesTile = element(by.css('.col-lg-2:nth-child(4) tr:nth-child(1) > td')); var ManageStudentsTile = element(by.css('.col-lg-2:nth-child(5) tr:nth-child(1) > td')); var ManageSimulationsTile = element(by.css('.col-lg-2:nth-child(6) tr:nth-child(1) > td')); var ManageReports = element(by.css('.col-lg-2:nth-child(7) tr:nth-child(1) > td')); expect(await PageTitle.getText()).toEqual('Admin Dashboard'); expect(await ManageSchoolsTile.getText()).toContain('MANAGE'); expect(await ManageSchoolsTile.getText()).toContain('SCHOOLS'); expect(await ManageTeachersTile.getText()).toContain('MANAGE'); expect(await ManageTeachersTile.getText()).toContain('TEACHERS'); expect(await ManageClassesTile.getText()).toContain('MANAGE'); expect(await ManageClassesTile.getText()).toContain('CLASSES'); expect(await ManageStudentsTile.getText()).toContain('MANAGE'); expect(await ManageStudentsTile.getText()).toContain('STUDENTS'); expect(await ManageSimulationsTile.getText()).toContain('MANAGE'); expect(await ManageSimulationsTile.getText()).toContain('SIMULATIONS'); expect(await ManageReports.getText()).toContain('MANAGE'); expect(await ManageReports.getText()).toContain('REPORTS'); }); } function ManageSchools() { it(': ManageSchools, should interact with Manage Schools page and add a new school.', async function () { var PageTitle = element(by.css('#title')); var ManageSchoolsTile = element(by.css('.col-lg-2:nth-child(2) tr:nth-child(1) > td')); var PageTitle = element(by.css('#title')); var AddNewSchoolTab = element(by.linkText('ADD NEW SCHOOL')); var SchoolNameLabel = element(by.css('label')); var SchoolNameTextBox = element(by.name('SchoolName')); var CastleParkSeniorHighSelection = element(by.xpath("//button[contains(.,'Castle Park Senior High (Chula Vista)')]")); var StreetAddressLabel = element(by.css('.col-sm-6:nth-child(2)')); var StreetAddressTextBox = element(by.name('Address')); var CityLabel = element(by.css('.col-12:nth-child(3)')); var CityTextBox = element(by.name('City')); var StateLabel = element(by.css('.col-12:nth-child(4)')); var StateTextBox = element(by.name('State')); var ZipCodeLabel = element(by.css('.col-12:nth-child(5)')); var ZipCodeTextBox = element(by.name('ZipCode')); var IndicatesRequiredFieldsLabel = element(by.css('.ng-dirty > div:nth-child(2) > div:nth-child(1)')); var EditExistingSchoolTab = element(by.linkText('EDIT EXISTING SCHOOL')); var ExistingSearchTextBox = element(by.css('.form-control')); var CastleParkSeniorHighSelectionTwo = element(by.xpath("//button[contains(.,'Castle Park Senior High School (Chula Vista)')]")); var SchoolId = element(by.css('.col-12:nth-child(1)')); var SchoolNameLabelTwo = element(by.css('.row:nth-child(2) > .col-12:nth-child(2)')); var StreetAddressLabelTwo = element(by.css('.col-12:nth-child(3)')); var CityLabelTwo = element(by.css('.col-12:nth-child(4)')); var StateLabelTwo = element(by.css('.col-12:nth-child(5)')); var ZipCodeLabelTwo = element(by.css('.col-12:nth-child(6)')); var IndicatesRequiredFieldsLabelTwo = element(by.css('.ng-untouched > div:nth-child(3) > div:nth-child(1)')); var AddedSchool = element(by.id('ngb-typeahead-4-0')); var CancelButton = element(by.css('.btn-outline-primary')); var SaveButton = element(by.css('.btn:nth-child(2)')); var BackToAdminDashboardLinkText = element(by.linkText('BACK TO ADMIN DASHBOARD')); await ManageSchoolsTile.click().then(function() { browser.sleep(2500); }); expect(await PageTitle.getText()).toEqual('Manage Schools'); expect(AddNewSchoolTab.getCssValue('background-color')).toBe('rgba(255, 255, 255, 1)'); //white: active expect(await AddNewSchoolTab.getText()).toEqual('ADD NEW SCHOOL'); expect(EditExistingSchoolTab.getCssValue('background-color')).toBe('rgba(138, 105, 131, 1)'); //purple: clickable expect(await EditExistingSchoolTab.getText()).toEqual('EDIT EXISTING SCHOOL'); expect(await SchoolNameLabel.getText()).toEqual('School Name*'); await SchoolNameTextBox.sendKeys('Castle Park').then(function() { browser.sleep(1500); }); browser.actions().mouseMove(CastleParkSeniorHighSelection).perform().then(function() { browser.sleep(1000); }); await CastleParkSeniorHighSelection.click().then(function() { browser.sleep(2500); }); expect(await SchoolNameTextBox.getAttribute('value')).toEqual('Castle Park Senior High'); expect(await StreetAddressLabel.getText()).toEqual('Street Address'); expect(await StreetAddressTextBox.getAttribute('value')).toEqual('1395 Hilltop Dr.'); expect(await CityLabel.getText()).toEqual('City*'); expect(await CityTextBox.getAttribute('value')).toEqual('Chula Vista'); expect(await StateLabel.getText()).toEqual('State*'); expect(await StateTextBox.getAttribute('value')).toEqual('CA'); expect(await ZipCodeLabel.getText()).toEqual('Zip Code*'); expect(await ZipCodeTextBox.getAttribute('value')).toEqual('91911'); expect(await IndicatesRequiredFieldsLabel.getText()).toEqual('* indicates require fields.'); expect(await CancelButton.getText()).toEqual('CANCEL'); expect(await SaveButton.getText()).toEqual('SAVE'); await SaveButton.click().then(function() { browser.sleep(2500); var alertDialog = browser.switchTo().alert(); expect(alertDialog.getText()).toContain('Failed to add school.'); expect(alertDialog.getText()).toContain('A school with the same name and zip code combination already exists. Please ensure school is unique.'); browser.switchTo().alert().accept(); browser.sleep(2500); }); await EditExistingSchoolTab.click().then(function() { browser.sleep(2500); }); expect(AddNewSchoolTab.getCssValue('background-color')).toBe('rgba(138, 105, 131, 1)'); //purple: clickable expect(await AddNewSchoolTab.getText()).toEqual('ADD NEW SCHOOL'); expect(EditExistingSchoolTab.getCssValue('background-color')).toBe('rgba(255, 255, 255, 1)'); //white: active expect(await EditExistingSchoolTab.getText()).toEqual('EDIT EXISTING SCHOOL'); expect(await ExistingSearchTextBox.getAttribute('placeholder')).toEqual('Search for and select a school to edit'); await ExistingSearchTextBox.sendKeys('Castle').then(function() { browser.sleep(1500); }); browser.actions().mouseMove(CastleParkSeniorHighSelectionTwo).perform().then(function() { browser.sleep(1000); }); await CastleParkSeniorHighSelectionTwo.click().then(function() { browser.sleep(2500); }); expect(await SchoolId.getText()).toEqual('School Id: 1155'); expect(await SchoolNameLabelTwo.getText()).toEqual('School Name*'); expect(await SchoolNameTextBox.getAttribute('value')).toEqual('Castle Park Senior High School'); expect(await StreetAddressLabelTwo.getText()).toEqual('Street Address'); expect(await StreetAddressTextBox.getAttribute('value')).toEqual('1395 Hilltop Dr.'); expect(await CityLabelTwo.getText()).toEqual('City*'); expect(await CityTextBox.getAttribute('value')).toEqual('Chula Vista'); expect(await StateLabelTwo.getText()).toEqual('State*'); expect(await StateTextBox.getAttribute('value')).toEqual('CA'); expect(await ZipCodeLabelTwo.getText()).toEqual('Zip Code*'); expect(await ZipCodeTextBox.getAttribute('value')).toEqual('91911'); expect(await IndicatesRequiredFieldsLabelTwo.getText()).toEqual('* indicates require fields.'); expect(await CancelButton.getText()).toEqual('CANCEL'); expect(await SaveButton.getText()).toEqual('SAVE'); await CancelButton.click().then(function() { browser.sleep(2500); }); expect(await ExistingSearchTextBox.getAttribute('placeholder')).toEqual('Search for and select a school to edit'); await AddNewSchoolTab.click().then(function() { browser.sleep(2500); }); expect(await SchoolNameTextBox.getAttribute('value')).toEqual('Castle Park Senior High'); await SchoolNameTextBox.clear().then(function() { browser.sleep(1500); }); await SchoolNameTextBox.sendKeys(browser.params.school).then(function() { browser.sleep(1500); }); expect(await StreetAddressLabel.getText()).toEqual('Street Address'); expect(await StreetAddressTextBox.getAttribute('value')).toEqual('1395 Hilltop Dr.'); await StreetAddressTextBox.clear().then(function() { browser.sleep(1500); }); await StreetAddressTextBox.sendKeys('247 Automated Street').then(function() { browser.sleep(1500); }); expect(await CityLabel.getText()).toEqual('City*'); expect(await CityTextBox.getAttribute('value')).toEqual('Chula Vista'); await CityTextBox.clear().then(function() { browser.sleep(1500); }); await CityTextBox.sendKeys('The Matrix').then(function() { browser.sleep(1500); }); expect(await StateLabel.getText()).toEqual('State*'); expect(await StateTextBox.getAttribute('value')).toEqual('CA'); await StateTextBox.clear().then(function() { browser.sleep(1500); }); await StateTextBox.sendKeys('California').then(function() { browser.sleep(1500); }); expect(await ZipCodeLabel.getText()).toEqual('Zip Code*'); expect(await ZipCodeTextBox.getAttribute('value')).toEqual('91911'); await ZipCodeTextBox.clear().then(function() { browser.sleep(1500); }); await ZipCodeTextBox.sendKeys('404').then(function() { browser.sleep(1500); }); expect(await IndicatesRequiredFieldsLabel.getText()).toEqual('* indicates require fields.'); expect(await CancelButton.getText()).toEqual('CANCEL'); expect(await SaveButton.getText()).toEqual('SAVE'); await SaveButton.click().then(function() { browser.sleep(2500); var alertDialog = browser.switchTo().alert(); expect(alertDialog.getText()).toEqual('New school has been added successfully.'); browser.switchTo().alert().accept(); browser.sleep(2500); }); expect(await SchoolNameTextBox.getAttribute('value')).toEqual(''); expect(await StreetAddressLabel.getText()).toEqual('Street Address'); expect(await StreetAddressTextBox.getAttribute('value')).toEqual(''); expect(await CityLabel.getText()).toEqual('City*'); expect(await CityTextBox.getAttribute('value')).toEqual(''); expect(await StateLabel.getText()).toEqual('State*'); expect(await StateTextBox.getAttribute('value')).toEqual(''); expect(await ZipCodeLabel.getText()).toEqual('Zip Code*'); expect(await ZipCodeTextBox.getAttribute('value')).toEqual(''); expect(await IndicatesRequiredFieldsLabel.getText()).toEqual('* indicates require fields.'); await EditExistingSchoolTab.click().then(function() { browser.sleep(2500); }); expect(AddNewSchoolTab.getCssValue('background-color')).toBe('rgba(138, 105, 131, 1)'); //purple: clickable expect(await AddNewSchoolTab.getText()).toEqual('ADD NEW SCHOOL'); expect(EditExistingSchoolTab.getCssValue('background-color')).toBe('rgba(255, 255, 255, 1)'); //white: active expect(await EditExistingSchoolTab.getText()).toEqual('EDIT EXISTING SCHOOL'); expect(await ExistingSearchTextBox.getAttribute('placeholder')).toEqual('Search for and select a school to edit'); await ExistingSearchTextBox.click().then(function() { browser.sleep(2500); }); await AddedSchool.click().then(function() { browser.sleep(2500); }); expect(await SchoolId.getText()).toContain('School Id: '); expect(await SchoolNameLabelTwo.getText()).toEqual('School Name*'); expect(await SchoolNameTextBox.getAttribute('value')).toEqual(browser.params.school); expect(await StreetAddressLabelTwo.getText()).toEqual('Street Address'); expect(await StreetAddressTextBox.getAttribute('value')).toEqual('247 Automated Street'); expect(await CityLabelTwo.getText()).toEqual('City*'); expect(await CityTextBox.getAttribute('value')).toEqual('The Matrix'); expect(await StateLabelTwo.getText()).toEqual('State*'); expect(await StateTextBox.getAttribute('value')).toEqual('California'); expect(await ZipCodeLabelTwo.getText()).toEqual('Zip Code*'); expect(await ZipCodeTextBox.getAttribute('value')).toEqual('404'); expect(await IndicatesRequiredFieldsLabelTwo.getText()).toEqual('* indicates require fields.'); await BackToAdminDashboardLinkText.click().then(function() { browser.sleep(2500); }); expect(await PageTitle.getText()).toEqual('Admin Dashboard'); }); } function ManageTeachers() { it(': ManageTeachers, should interact with Manage Teachers page and add a new teacher.', async function () { var ManageTeachersTile = element(by.css('.col-lg-2:nth-child(3) tr:nth-child(1) > td')); var PageTitle = element(by.css('#title')); var AddNewTeacherTab = element(by.linkText('ADD NEW TEACHER')); var TeacherFirstNameLabel = element(by.css('.col-12:nth-child(1) > .col-12:nth-child(1)')); var TeacherFirstNameTextBox = element(by.name('FirstName')); var TeacherLastNameLabel = element(by.css('.col-12 > .col-12:nth-child(2)')); var TeacherLastNameTextBox = element(by.name('LastName')); var TeacherEmailLabel = element(by.css('.col-12:nth-child(3)')); var TeacherEmailTextBox = element(by.name('Email')); var IndicatesRequiredFieldsLabel = element(by.css('.ng-pristine > div:nth-child(3) > div:nth-child(1)')); var IndicatesRequiredFieldsLabelTwo = element(by.css('div:nth-child(4) > div:nth-child(1)')); var SchoolAssociationsLabel = element(by.css('.col-12:nth-child(2) > .col-12')); var SchoolAssociationsTextBox = element(by.name('SelectedSchool')); var AssociatedSchoolListOne = element(by.css('.list-group-item')); var EditExistingTeacherTab = element(by.linkText('EDIT EXISTING TEACHER')); var ExistingSearchTextBox = element(by.css('.form-control')); var SelectedTeacher = element(by.xpath("//button[contains(.,'Ron Casper (rcasper@edmin.com)')]")); var TeacherFirstNameLabelTwo = element(by.css('.col-12 > .col-12:nth-child(2)')); var TeacherLastNameLabelTwo = element(by.css('.col-12:nth-child(3)')); var TeacherEmailLabelTwo = element(by.css('.col-12:nth-child(4)')); var TeacherId = element(by.css('.col-12:nth-child(1) > .col-12:nth-child(1)')); var IndicatesRequiredFieldsLabelThree = element(by.css('.ng-invalid > div:nth-child(3) > div:nth-child(1)')); var SelectNewSchoolAssociation = element(by.id('ngb-typeahead-7-0')); var AssociatedSchoolListTwo = element(by.css('.list-group-item:nth-child(2)')); var RemoveAssociatedSchoolOne = element(by.css('.list-group-item:nth-child(1) > .fa')); var SelectNewSchoolAssociationTwo = element(by.id('ngb-typeahead-9-0')); var CancelButton = element(by.css('.btn-outline-primary')); var SaveButton = element(by.css('.btn:nth-child(2)')); var BackToAdminDashboardLinkText = element(by.linkText('BACK TO ADMIN DASHBOARD')); await ManageTeachersTile.click().then(function() { browser.sleep(2500); }); expect(await PageTitle.getText()).toEqual('Manage Teachers'); expect(AddNewTeacherTab.getCssValue('background-color')).toBe('rgba(255, 255, 255, 1)'); //white: active expect(await AddNewTeacherTab.getText()).toEqual('ADD NEW TEACHER'); expect(EditExistingTeacherTab.getCssValue('background-color')).toBe('rgba(138, 105, 131, 1)'); //purple: clickable expect(await EditExistingTeacherTab.getText()).toEqual('EDIT EXISTING TEACHER'); expect(await TeacherFirstNameLabel.getText()).toEqual('Teacher First Name*'); expect(await TeacherFirstNameTextBox.getAttribute('placeholder')).toEqual('First Name (min. 2 characters)'); expect(await TeacherLastNameLabel.getText()).toEqual('Teacher Last Name*'); expect(await TeacherLastNameTextBox.getAttribute('placeholder')).toEqual('Last Name (min. 2 characters)'); expect(await TeacherEmailLabel.getText()).toEqual('Email*'); expect(await IndicatesRequiredFieldsLabel.getText()).toEqual('* indicates require fields.'); expect(await SchoolAssociationsLabel.getText()).toEqual('School Associations*'); expect(await SchoolAssociationsTextBox.getAttribute('placeholder')).toEqual('Search and Add a School'); expect(await CancelButton.getText()).toEqual('CANCEL'); expect(await SaveButton.getText()).toEqual('SAVE'); await EditExistingTeacherTab.click().then(function() { browser.sleep(2500); }); expect(AddNewTeacherTab.getCssValue('background-color')).toBe('rgba(138, 105, 131, 1)'); //purple: clickable expect(await AddNewTeacherTab.getText()).toEqual('ADD NEW TEACHER'); expect(EditExistingTeacherTab.getCssValue('background-color')).toBe('rgba(255, 255, 255, 1)'); //white: active expect(await EditExistingTeacherTab.getText()).toEqual('EDIT EXISTING TEACHER'); expect(await ExistingSearchTextBox.getAttribute('placeholder')).toEqual('Search for a teacher by school, name, or email'); await ExistingSearchTextBox.sendKeys('Casper').then(function() { browser.sleep(1500); }); await SelectedTeacher.click().then(function() { browser.sleep(2500); }); expect(await TeacherId.getText()).toEqual('Teacher Id: 50307'); expect(await TeacherFirstNameLabelTwo.getText()).toEqual('Teacher First Name*'); expect(await TeacherFirstNameTextBox.getAttribute('value')).toEqual('Ron'); expect(await TeacherLastNameLabelTwo.getText()).toEqual('Teacher Last Name*'); expect(await TeacherLastNameTextBox.getAttribute('value')).toEqual('Casper'); expect(await TeacherEmailLabelTwo.getText()).toEqual('Email*'); expect(await TeacherEmailTextBox.getAttribute('value')).toEqual('rcasper@edmin.com'); expect(await IndicatesRequiredFieldsLabelTwo.getText()).toEqual('* indicates require fields.'); expect(await SchoolAssociationsLabel.getText()).toContain('School Associations*'); expect(await SchoolAssociationsTextBox.getAttribute('placeholder')).toEqual('Search and Add a School'); expect(await AssociatedSchoolListOne.getText()).toEqual(' School Of Hard Knocks (Pheonix)'); expect(await CancelButton.getText()).toEqual('CANCEL'); expect(await SaveButton.getText()).toEqual('SAVE'); await SchoolAssociationsTextBox.sendKeys(browser.params.school).then(function() { browser.sleep(1500); }); await SelectNewSchoolAssociation.click().then(function() { browser.sleep(2500); }); expect(await SchoolAssociationsTextBox.getAttribute('placeholder')).toEqual('Search and Add a School'); expect(await AssociatedSchoolListOne.getText()).toEqual(' School Of Hard Knocks (Pheonix)'); expect(await AssociatedSchoolListTwo.getText()).toEqual(' ' + browser.params.school + ' (The Matrix)'); await RemoveAssociatedSchoolOne.click().then(function() { browser.sleep(2500); }); expect(await SchoolAssociationsTextBox.getAttribute('placeholder')).toEqual('Search and Add a School'); expect(await AssociatedSchoolListOne.getText()).toEqual(' ' + browser.params.school + ' (The Matrix)'); await CancelButton.click().then(function() { browser.sleep(2500); }); expect(await ExistingSearchTextBox.getAttribute('placeholder')).toEqual('Search for a teacher by school, name, or email'); await AddNewTeacherTab.click().then(function() { browser.sleep(2500); }); expect(AddNewTeacherTab.getCssValue('background-color')).toBe('rgba(255, 255, 255, 1)'); //white: active expect(await AddNewTeacherTab.getText()).toEqual('ADD NEW TEACHER'); expect(EditExistingTeacherTab.getCssValue('background-color')).toBe('rgba(138, 105, 131, 1)'); //purple: clickable expect(await EditExistingTeacherTab.getText()).toEqual('EDIT EXISTING TEACHER'); expect(await TeacherFirstNameLabel.getText()).toEqual('Teacher First Name*'); expect(await TeacherFirstNameTextBox.getAttribute('placeholder')).toEqual('First Name (min. 2 characters)'); await TeacherFirstNameTextBox.sendKeys('T-800').then(function() { browser.sleep(1500); }); expect(await TeacherLastNameLabel.getText()).toEqual('Teacher Last Name*'); expect(await TeacherLastNameTextBox.getAttribute('placeholder')).toEqual('Last Name (min. 2 characters)'); await TeacherLastNameTextBox.sendKeys(browser.params.teacher).then(function() { browser.sleep(1500); }); expect(await TeacherEmailLabel.getText()).toEqual('Email*'); await TeacherEmailTextBox.sendKeys(browser.params.email + '@automation.com').then(function() { browser.sleep(1500); }); expect(await IndicatesRequiredFieldsLabelThree.getText()).toEqual('* indicates require fields.'); expect(await SchoolAssociationsLabel.getText()).toEqual('School Associations*'); expect(await SchoolAssociationsTextBox.getAttribute('placeholder')).toEqual('Search and Add a School'); await SchoolAssociationsTextBox.sendKeys(browser.params.school).then(function() { browser.sleep(2500); }); await SelectNewSchoolAssociationTwo.click().then(function() { browser.sleep(2500); }); expect(await AssociatedSchoolListOne.getText()).toEqual(' ' + browser.params.school + ' (The Matrix)'); expect(await CancelButton.getText()).toEqual('CANCEL'); expect(await SaveButton.getText()).toEqual('SAVE'); await SaveButton.click().then(function() { browser.sleep(2500); var alertDialog = browser.switchTo().alert(); expect(alertDialog.getText()).toEqual('New teacher has been added successfully.'); browser.switchTo().alert().accept(); browser.sleep(2500); }); expect(await TeacherFirstNameLabel.getText()).toEqual('Teacher First Name*'); expect(await TeacherFirstNameTextBox.getAttribute('placeholder')).toEqual('First Name (min. 2 characters)'); expect(await TeacherLastNameLabel.getText()).toEqual('Teacher Last Name*'); expect(await TeacherLastNameTextBox.getAttribute('placeholder')).toEqual('Last Name (min. 2 characters)'); expect(await TeacherEmailLabel.getText()).toEqual('Email*'); expect(await IndicatesRequiredFieldsLabelThree.getText()).toEqual('* indicates require fields.'); expect(await SchoolAssociationsLabel.getText()).toEqual('School Associations*'); expect(await SchoolAssociationsTextBox.getAttribute('placeholder')).toEqual('Search and Add a School'); await BackToAdminDashboardLinkText.click().then(function() { browser.sleep(2500); }); expect(await PageTitle.getText()).toEqual('Admin Dashboard'); }); } function ManageClasses() { it(': ManageClasses, should interact with Manage Classes page and add a new class.', async function () { var ManageClassesTile = element(by.css('.col-lg-2:nth-child(4) tr:nth-child(1) > td')); var PageTitle = element(by.css('#title')); var AddNewClassesTab = element(by.linkText('ADD NEW CLASS')); var SchoolNameLabel = element(by.css('.col-12:nth-child(1)')); var SchoolNameTextBox = element(by.name('SelectedSchool')); var TeacherNameLabel = element(by.css('.row:nth-child(4) > .col-12:nth-child(2)')); var TeacherNameTextBox = element(by.name('SelectedTeacher')); var ClassNameLabel = element(by.css('.col-12:nth-child(3)')); var ClassNameTextBox = element(by.name('ClassName')); var ClassPeriodLabel = element(by.css('.col-12:nth-child(4)')); var ClassPeriodTextBox = element(by.name('Period')); var AddToExistingSimulationLabel = element(by.css('.col-12:nth-child(5)')); var AddToExistintSimulationTextBox = element(by.name('SelectedSimulation')); var NumberOfStudentsLabel = element(by.css('.col-12:nth-child(6)')); var NumberOfStudentsTextBox = element(by.name('ClassSize')); var RemoveColumnHeader = element(by.css('.table-primary > td:nth-child(1)')); var NameColumnHeader = element(by.css('td:nth-child(2)')); var BirthDateColumnHeader = element(by.css('td:nth-child(3)')); var SearchAndAddStudentTextBox = element(by.css('.input-group > .ng-untouched')); var TotalStudentsLabel = element(by.css('td > span:nth-child(2)')); var IndicatesRequiredFieldsLabel = element(by.css('div:nth-child(5) > div:nth-child(1)')); var EditExistingClassesTab = element(by.linkText('EDIT EXISTING CLASS')); var ExistingSearchTextBox = element(by.css('.form-control')); var SelectExistingSchool = element(by.xpath("//button[contains(.,'Baseball Fundamentals P-6 (5YYJ8BE4, Fernando Tatis, Castle Park Senior High)')]")); var ClassId = element(by.css('.col-12:nth-child(1)')); var ConnectionCode = element(by.css('.col-sm-6:nth-child(2)')); var SchoolNameText = element(by.css('.col-12:nth-child(3)')); var TeacherNameLabelTwo = element(by.css('.col-12:nth-child(4)')); var ClassNameLabelTwo = element(by.css('.col-12:nth-child(5)')); var ClassPeriodLabelTwo = element(by.css('.col-12:nth-child(6)')); var AddToExistingSimulationLabelTwo = element(by.css('.col-12:nth-child(7)')); var NumberOfStudentsLabelTwo = element(by.css('.col-12:nth-child(8)')); var EnrolledStudentNameOne = element(by.css('tbody > tr:nth-child(1) > td:nth-child(2)')); var EnrolledStudentDOBOne = element(by.css('tbody > tr:nth-child(1) > td:nth-child(3)')); var EnrolledStudentRemoveIconTwo = element(by.css('tr:nth-child(2) .fa')); var EnrolledStudentNameTwo = element(by.css('tr:nth-child(2) > td:nth-child(2)')); var EnrolledStudentDOBTwo = element(by.css('tr:nth-child(2) > td:nth-child(3)')); var EnrolledStudentNameThree = element(by.css('tr:nth-child(3) > td:nth-child(2)')); var EnrolledStudentDOBThree = element(by.css('tr:nth-child(3) > td:nth-child(3)')); var EnrolledStudentNameFour = element(by.css('tr:nth-child(4) > td:nth-child(2)')); var EnrolledStudentDOBFour = element(by.css('tr:nth-child(4) > td:nth-child(3)')); var EnrolledStudentRemoveIconFive = element(by.css('tr:nth-child(5) .fa')); var EnrolledStudentNameFive = element(by.css('tr:nth-child(5) > td:nth-child(2)')); var EnrolledStudentDOBFive = element(by.css('tr:nth-child(5) > td:nth-child(3)')); var EnrolledStudentNameSix = element(by.css('tr:nth-child(6) > td:nth-child(2)')); var EnrolledStudentDOBSix = element(by.css('tr:nth-child(6) > td:nth-child(3)')); var EnrolledStudentNameSeven = element(by.css('tr:nth-child(7) > td:nth-child(2)')); var EnrolledStudentDOBSeven = element(by.css('tr:nth-child(7) > td:nth-child(3)')); var SearchAndAddStudentTextBoxTwo = element(by.css('.input-group:nth-child(1) > .form-control')); var SelectStudentToAddToClass = element(by.xpath("//button[contains(.,'Tony Gwynn 2000-10-19')]")); var IndicatesRequiredFieldsLabelTwo = element(by.css('div:nth-child(6) > div:nth-child(1)')); var SelectNewlyCreatedSchool = element(by.id('ngb-typeahead-18-0')); var SelectNewlyCreatedTeacher = element(by.id('ngb-typeahead-19-0')); var CancelButton = element(by.css('.btn-outline-primary')); var SaveButton = element(by.css('.btn:nth-child(2)')); var BackToAdminDashboardLinkText = element(by.linkText('BACK TO ADMIN DASHBOARD')); await ManageClassesTile.click().then(function() { browser.sleep(2500); }); expect(await PageTitle.getText()).toEqual('Manage Classes'); expect(AddNewClassesTab.getCssValue('background-color')).toBe('rgba(255, 255, 255, 1)'); //white: active expect(await AddNewClassesTab.getText()).toEqual('ADD NEW CLASS'); expect(EditExistingClassesTab.getCssValue('background-color')).toBe('rgba(138, 105, 131, 1)'); //purple: clickable expect(await EditExistingClassesTab.getText()).toEqual('EDIT EXISTING CLASS'); expect(await SchoolNameLabel.getText()).toEqual('School Name*'); expect(await SchoolNameTextBox.getAttribute('placeholder')).toEqual('Search and Select a School'); expect(await TeacherNameLabel.getText()).toEqual('Teacher Name*'); expect(await TeacherNameTextBox.getAttribute('placeholder')).toEqual('Search and Select a Teacher by Name or Email'); expect(await ClassNameLabel.getText()).toEqual('Class Name*'); expect(await ClassPeriodLabel.getText()).toEqual('Period*'); expect(await AddToExistingSimulationLabel.getText()).toEqual('Add to Existing Simulation'); expect(await AddToExistintSimulationTextBox.getAttribute('placeholder')).toEqual('Search and Select a Simulation'); expect(await NumberOfStudentsLabel.getText()).toEqual('Number of Students*'); expect(await NumberOfStudentsTextBox.getAttribute('value')).toEqual('0'); expect(await RemoveColumnHeader.getText()).toEqual('Remove'); expect(await NameColumnHeader.getText()).toEqual('Name'); expect(await BirthDateColumnHeader.getText()).toEqual('Birthdate'); expect(await SearchAndAddStudentTextBox.getAttribute('placeholder')).toEqual('Search and Select a School'); expect(await TotalStudentsLabel.getText()).toEqual('0'); expect(await IndicatesRequiredFieldsLabel.getText()).toEqual('* indicates require fields.'); expect(await CancelButton.getText()).toEqual('CANCEL'); expect(await SaveButton.getText()).toEqual('SAVE'); await EditExistingClassesTab.click().then(function() { browser.sleep(2500); }); expect(AddNewClassesTab.getCssValue('background-color')).toBe('rgba(138, 105, 131, 1)'); //purple: clickable expect(await AddNewClassesTab.getText()).toEqual('ADD NEW CLASS'); expect(EditExistingClassesTab.getCssValue('background-color')).toBe('rgba(255, 255, 255, 1)'); //white: active expect(await EditExistingClassesTab.getText()).toEqual('EDIT EXISTING CLASS'); expect(await ExistingSearchTextBox.getAttribute('placeholder')).toEqual('Search and Select a Class by name, school, or teacher'); await ExistingSearchTextBox.click().then(function() { browser.sleep(2500); }); await ExistingSearchTextBox.sendKeys('Castle').then(function() { browser.sleep(1500); }); await SelectExistingSchool.click().then(function() { browser.sleep(2500); }); expect(await ClassId.getText()).toEqual('Class Id: 34789'); expect(await ConnectionCode.getText()).toEqual('Connection Code: 5YYJ8BE4'); expect(await SchoolNameText.getText()).toContain('School Name*'); expect(await SchoolNameText.getText()).toContain('Castle Park Senior High'); expect(await TeacherNameLabelTwo.getText()).toEqual('Teacher Name*'); expect(await TeacherNameTextBox.getAttribute('value')).toEqual('Fernando Tatis (FTatis@edmin.com)'); expect(await ClassNameLabelTwo.getText()).toEqual('Class Name*'); expect(await ClassNameTextBox.getAttribute('value')).toEqual('Baseball Fundamentals'); expect(await ClassPeriodLabelTwo.getText()).toEqual('Period*'); expect(await ClassPeriodTextBox.getAttribute('value')).toEqual('6'); expect(await AddToExistingSimulationLabelTwo.getText()).toEqual('Add to Existing Simulation'); expect(await AddToExistintSimulationTextBox.getAttribute('value')).toEqual('_a'); expect(await NumberOfStudentsLabelTwo.getText()).toEqual('Number of Students*'); expect(await NumberOfStudentsTextBox.getAttribute('value')).toEqual('15'); expect(await RemoveColumnHeader.getText()).toEqual('Remove'); expect(await NameColumnHeader.getText()).toEqual('Name'); expect(await BirthDateColumnHeader.getText()).toEqual('Birthdate'); expect(await SearchAndAddStudentTextBoxTwo.getAttribute('placeholder')).toEqual('Search and Add a student'); expect(await EnrolledStudentNameOne.getText()).toEqual('Daniel Larssonhere'); expect(await EnrolledStudentDOBOne.getText()).toEqual('2020-08-08'); expect(await EnrolledStudentNameTwo.getText()).toEqual('One Lasttime'); expect(await EnrolledStudentDOBTwo.getText()).toEqual('2000-06-06'); expect(await EnrolledStudentNameThree.getText()).toEqual('Manny Machado'); expect(await EnrolledStudentDOBThree.getText()).toEqual('2000-08-08'); expect(await EnrolledStudentNameFour.getText()).toEqual('Wil Myers'); expect(await EnrolledStudentDOBFour.getText()).toEqual('2000-11-11'); expect(await EnrolledStudentNameFive.getText()).toEqual('Play Offs'); expect(await EnrolledStudentDOBFive.getText()).toEqual('2000-09-20'); expect(await EnrolledStudentNameSix.getText()).toEqual('Who This'); expect(await EnrolledStudentDOBSix.getText()).toEqual('2010-09-09'); expect(await EnrolledStudentNameSeven.getText()).toEqual('Penny Wise'); expect(await EnrolledStudentDOBSeven.getText()).toEqual('2000-10-31'); expect(await TotalStudentsLabel.getText()).toEqual('7'); expect(await IndicatesRequiredFieldsLabelTwo.getText()).toEqual('* indicates require fields.'); await EnrolledStudentRemoveIconTwo.click().then(function() { browser.sleep(2500); }); expect(await EnrolledStudentNameOne.getText()).toEqual('Daniel Larssonhere'); expect(await EnrolledStudentDOBOne.getText()).toEqual('2020-08-08'); expect(await EnrolledStudentNameTwo.getText()).toEqual('Manny Machado'); expect(await EnrolledStudentDOBTwo.getText()).toEqual('2000-08-08'); expect(await EnrolledStudentNameThree.getText()).toEqual('Wil Myers'); expect(await EnrolledStudentDOBThree.getText()).toEqual('2000-11-11'); expect(await EnrolledStudentNameFour.getText()).toEqual('Play Offs'); expect(await EnrolledStudentDOBFour.getText()).toEqual('2000-09-20'); expect(await EnrolledStudentNameFive.getText()).toEqual('Who This'); expect(await EnrolledStudentDOBFive.getText()).toEqual('2010-09-09'); expect(await TotalStudentsLabel.getText()).toEqual('6'); await EnrolledStudentRemoveIconFive.click().then(function() { browser.sleep(2500); }); expect(await EnrolledStudentNameOne.getText()).toEqual('Daniel Larssonhere'); expect(await EnrolledStudentDOBOne.getText()).toEqual('2020-08-08'); expect(await EnrolledStudentNameTwo.getText()).toEqual('Manny Machado'); expect(await EnrolledStudentDOBTwo.getText()).toEqual('2000-08-08'); expect(await EnrolledStudentNameThree.getText()).toEqual('Wil Myers'); expect(await EnrolledStudentDOBThree.getText()).toEqual('2000-11-11'); expect(await EnrolledStudentNameFour.getText()).toEqual('Play Offs'); expect(await EnrolledStudentDOBFour.getText()).toEqual('2000-09-20'); expect(await TotalStudentsLabel.getText()).toEqual('5'); await SearchAndAddStudentTextBoxTwo.sendKeys('Gwynn').then(function() { browser.sleep(1500); }); await SelectStudentToAddToClass.click().then(function() { browser.sleep(2500); var alertDialog = browser.switchTo().alert(); expect(alertDialog.getText()).toContain('Warning!'); expect(alertDialog.getText()).toContain('This student currently is in an active simulation. Are you sure you want to transfer to this class?'); browser.switchTo().alert().dismiss(); browser.sleep(2500); }); await AddNewClassesTab.click().then(function() { browser.sleep(2500); }); expect(AddNewClassesTab.getCssValue('background-color')).toBe('rgba(255, 255, 255, 1)'); //white: active expect(await AddNewClassesTab.getText()).toEqual('ADD NEW CLASS'); expect(EditExistingClassesTab.getCssValue('background-color')).toBe('rgba(138, 105, 131, 1)'); //purple: clickable expect(await EditExistingClassesTab.getText()).toEqual('EDIT EXISTING CLASS'); expect(await SchoolNameLabel.getText()).toEqual('School Name*'); expect(await SchoolNameTextBox.getAttribute('placeholder')).toEqual('Search and Select a School'); await SchoolNameTextBox.sendKeys(browser.params.school).then(function() { browser.sleep(1500); }); await SelectNewlyCreatedSchool.click().then(function() { browser.sleep(2500); }); expect(await TeacherNameLabel.getText()).toEqual('Teacher Name*'); expect(await TeacherNameTextBox.getAttribute('placeholder')).toEqual('Search and Select a Teacher by Name or Email'); await TeacherNameTextBox.sendKeys(browser.params.teacher).then(function() { browser.sleep(1500); }); await SelectNewlyCreatedTeacher.click().then(function() { browser.sleep(2500); }); expect(await ClassNameLabel.getText()).toEqual('Class Name*'); await ClassNameTextBox.sendKeys(browser.params.class).then(function() { browser.sleep(1500); }); expect(await ClassPeriodLabel.getText()).toEqual('Period*'); await ClassPeriodTextBox.sendKeys('5').then(function() { browser.sleep(1500); }); expect(await AddToExistingSimulationLabel.getText()).toEqual('Add to Existing Simulation'); expect(await AddToExistintSimulationTextBox.getAttribute('placeholder')).toEqual('Search and Select a Simulation'); expect(await NumberOfStudentsLabel.getText()).toEqual('Number of Students*'); expect(await NumberOfStudentsTextBox.getAttribute('value')).toEqual('0'); expect(await RemoveColumnHeader.getText()).toEqual('Remove'); expect(await NameColumnHeader.getText()).toEqual('Name'); expect(await BirthDateColumnHeader.getText()).toEqual('Birthdate'); expect(await SearchAndAddStudentTextBox.getAttribute('placeholder')).toEqual('Search and Select a Simulation'); expect(await TotalStudentsLabel.getText()).toEqual('0'); expect(await IndicatesRequiredFieldsLabel.getText()).toEqual('* indicates require fields.'); expect(await CancelButton.getText()).toEqual('CANCEL'); expect(await SaveButton.getText()).toEqual('SAVE'); await SaveButton.click().then(function() { browser.sleep(2500); var alertDialog = browser.switchTo().alert(); expect(alertDialog.getText()).toEqual('The Number of Students should be greater than 0.'); browser.switchTo().alert().dismiss(); browser.sleep(2500); }); await NumberOfStudentsTextBox.clear().then(function() { browser.sleep(1500); }); await NumberOfStudentsTextBox.sendKeys('25').then(function() { browser.sleep(1500); }); expect(await TotalStudentsLabel.getText()).toEqual('0'); expect(await SaveButton.getText()).toEqual('SAVE'); await SaveButton.click().then(function() { browser.sleep(2500); var alertDialog = browser.switchTo().alert(); expect(alertDialog.getText()).toContain('The new class has been saved successfully. The Connection Code is '); browser.switchTo().alert().accept(); browser.sleep(2500); }); expect(await SchoolNameLabel.getText()).toEqual('School Name*'); expect(await SchoolNameTextBox.getAttribute('placeholder')).toEqual('Search and Select a School'); expect(await TeacherNameLabel.getText()).toEqual('Teacher Name*'); expect(await TeacherNameTextBox.getAttribute('placeholder')).toEqual('Search and Select a Teacher by Name or Email'); expect(await ClassNameLabel.getText()).toEqual('Class Name*'); expect(await ClassPeriodLabel.getText()).toEqual('Period*'); expect(await AddToExistingSimulationLabel.getText()).toEqual('Add to Existing Simulation'); expect(await AddToExistintSimulationTextBox.getAttribute('placeholder')).toEqual('Search and Select a Simulation'); expect(await NumberOfStudentsLabel.getText()).toEqual('Number of Students*'); expect(await RemoveColumnHeader.getText()).toEqual('Remove'); expect(await NameColumnHeader.getText()).toEqual('Name'); expect(await BirthDateColumnHeader.getText()).toEqual('Birthdate'); expect(await SearchAndAddStudentTextBox.getAttribute('placeholder')).toEqual('Search and Select a Simulation'); expect(await TotalStudentsLabel.getText()).toEqual('0'); expect(await IndicatesRequiredFieldsLabel.getText()).toEqual('* indicates require fields.'); expect(await CancelButton.getText()).toEqual('CANCEL'); expect(await SaveButton.getText()).toEqual('SAVE'); await BackToAdminDashboardLinkText.click().then(function() { browser.sleep(2500); }); expect(await PageTitle.getText()).toEqual('Admin Dashboard'); }); } function ManageStudents() { it(': ManageStudents, should interact with Manage Students page and add a new student.', async function () { var ManageStudentsTile = element(by.css('.col-lg-2:nth-child(5) tr:nth-child(1) > td')); var PageTitle = element(by.css('#title')); var AddNewsStudentsTab = element(by.linkText('ADD NEW STUDENT')); var StudentFirstNameLabel = element(by.css('.col-12:nth-child(1) > .col-12:nth-child(1)')); var StudentFirstNameTextBox = element(by.name('FirstName')); var StudentLastNameLabel = element(by.css('.col-12 > .col-12:nth-child(2)')); var StudentLastNameTextBox = element(by.name('LastName')); var StudentBirthdateLabel = element(by.css('.col-12:nth-child(3)')); var StudentBirthdateTextBox = element(by.name('BirthDate')); var StudentUsernameLabel = element(by.css('.col-12:nth-child(4)')); var StudentUsernameTextBox = element(by.name('UN')); var StudentPasswordLabel = element(by.css('.col-12:nth-child(5)')); var StudentPasswordTextBox = element(by.name('PW')); var IndicatesRequiredFieldsLabel = element(by.css('.ng-pristine > div:nth-child(3) > div > div:nth-child(1)')); var EmailInstructions = element(by.css('.ng-pristine > div:nth-child(3) > div > div:nth-child(2)')); var SchoolAssociationsLabel = element(by.css('.col-12:nth-child(2) > .col-12')); var SchoolAssociationsTextBox = element(by.name('SelectedSchool')); var CancelButton = element(by.css('.btn-outline-primary')); var SaveButton = element(by.css('.btn:nth-child(2)')); var SelectNewSchoolAssociation = element(by.id('ngb-typeahead-22-0')); var AssociatedSchoolListOne = element(by.css('.list-group-item')); var IndicatesRequiredFieldsLabelTwo = element(by.css('.ng-invalid > div:nth-child(3) > div > div:nth-child(1)')); var EmailInstructionsTwo = element(by.css('.ng-invalid > div:nth-child(3) > div > div:nth-child(2)')); var ExistingSearchTextBox = element(by.css('.form-control')); var EditExistingStudentsTab = element(by.linkText('EDIT EXISTING STUDENT')); var SelectNewlyCreatedStudent = element(by.id('ngb-typeahead-23-0')); var StudentId = element(by.css('.col-12:nth-child(1) > .col-12:nth-child(1)')); var StudentFirstNameLabelTwo = element(by.css('.col-12 > .col-12:nth-child(2)')); var StudentLastNameLabelTwo = element(by.css('.col-12:nth-child(3)')); var StudentBirthdateLabelTwo = element(by.css('.col-12:nth-child(4)')); var StudentUsernameLabelTwo = element(by.css('.col-12:nth-child(5)')); var StudentPasswordLabelTwo = element(by.css('.col-12:nth-child(6)')); var IndicatesRequiredFieldsLabelThree = element(by.css('div:nth-child(4) > div > div:nth-child(1)')); var EmailInstructionsThree = element(by.css('div:nth-child(4) > div > div:nth-child(2)')); var BackToAdminDashboardLinkText = element(by.linkText('BACK TO ADMIN DASHBOARD')); await ManageStudentsTile.click().then(function() { browser.sleep(2500); }); expect(await PageTitle.getText()).toEqual('Manage Students'); expect(AddNewsStudentsTab.getCssValue('background-color')).toBe('rgba(255, 255, 255, 1)'); //white: active expect(await AddNewsStudentsTab.getText()).toEqual('ADD NEW STUDENT'); expect(EditExistingStudentsTab.getCssValue('background-color')).toBe('rgba(138, 105, 131, 1)'); //purple: clickable expect(await EditExistingStudentsTab.getText()).toEqual('EDIT EXISTING STUDENT'); expect(await StudentFirstNameLabel.getText()).toEqual('Student First Name*'); expect(await StudentFirstNameTextBox.getAttribute('placeholder')).toEqual('First Name (min. 2 characters)'); expect(await StudentLastNameLabel.getText()).toEqual('Student Last Name*'); expect(await StudentLastNameTextBox.getAttribute('placeholder')).toEqual('Last Name (min. 2 characters)'); expect(await StudentBirthdateLabel.getText()).toEqual('Birthdate*'); expect(await StudentUsernameLabel.getText()).toEqual('User Name*'); expect(await StudentUsernameTextBox.getAttribute('placeholder')).toEqual('User Name (min. 4 characters)'); expect(await StudentPasswordLabel.getText()).toEqual('Password*'); expect(await StudentPasswordTextBox.getAttribute('placeholder')).toEqual('Password (min. 6 characters)'); expect(await IndicatesRequiredFieldsLabel.getText()).toEqual('* indicates require fields.'); expect(await EmailInstructions.getText()).toEqual("Using an email address as a username is preferred. If you do, we will update the student's profile and save the email address for future notifications."); expect(await SchoolAssociationsLabel.getText()).toEqual('School Associations*'); expect(await SchoolAssociationsTextBox.getAttribute('placeholder')).toEqual('Search and Add a School'); expect(await CancelButton.getText()).toEqual('CANCEL'); expect(await SaveButton.getText()).toEqual('SAVE'); await StudentFirstNameTextBox.sendKeys('HAL 9000').then(function() { browser.sleep(1500); }); await StudentLastNameTextBox.sendKeys(browser.params.student).then(function() { browser.sleep(1500); }); await StudentBirthdateTextBox.sendKeys('11112011').then(function() { browser.sleep(1500); }); await StudentUsernameTextBox.sendKeys('HAL9000@' + browser.params.email).then(function() { browser.sleep(1500); }); await StudentPasswordTextBox.sendKeys('J@!234').then(function() { browser.sleep(1500); }); expect(await IndicatesRequiredFieldsLabelTwo.getText()).toEqual('* indicates require fields.'); expect(await EmailInstructionsTwo.getText()).toEqual("Using an email address as a username is preferred. If you do, we will update the student's profile and save the email address for future notifications."); await SchoolAssociationsTextBox.sendKeys(browser.params.school).then(function() { browser.sleep(2500); }); await SelectNewSchoolAssociation.click().then(function() { browser.sleep(2500); }); expect(await AssociatedSchoolListOne.getText()).toEqual(' ' + browser.params.school + ' (The Matrix)'); expect(await SaveButton.getText()).toEqual('SAVE'); await SaveButton.click().then(function() { browser.sleep(2500); var alertDialog = browser.switchTo().alert(); expect(alertDialog.getText()).toEqual('New student has been saved successfully.'); browser.switchTo().alert().accept(); browser.sleep(2500); }); await EditExistingStudentsTab.click().then(function() { browser.sleep(2500); }); expect(AddNewsStudentsTab.getCssValue('background-color')).toBe('rgba(138, 105, 131, 1)'); //purple: clickable expect(await AddNewsStudentsTab.getText()).toEqual('ADD NEW STUDENT'); expect(EditExistingStudentsTab.getCssValue('background-color')).toBe('rgba(255, 255, 255, 1)'); //white: active expect(await EditExistingStudentsTab.getText()).toEqual('EDIT EXISTING STUDENT'); expect(await ExistingSearchTextBox.getAttribute('placeholder')).toEqual('Search for a Student by school or name'); await ExistingSearchTextBox.click().then(function() { browser.sleep(2500); }); await SelectNewlyCreatedStudent.click().then(function() { browser.sleep(2500); }); expect(await StudentId.getText()).toContain('Student Id: '); expect(await StudentFirstNameLabelTwo.getText()).toEqual('Student First Name*'); expect(await StudentFirstNameTextBox.getAttribute('value')).toEqual('Hal 9000'); expect(await StudentLastNameLabelTwo.getText()).toEqual('Student Last Name*'); expect(await StudentLastNameTextBox.getAttribute('value')).toEqual(browser.params.student); expect(await StudentBirthdateLabelTwo.getText()).toEqual('Birthdate*'); expect(await StudentBirthdateTextBox.getAttribute('value')).toEqual('2011-11-11'); expect(await StudentUsernameLabelTwo.getText()).toEqual('User Name*'); expect(await StudentUsernameTextBox.getAttribute('value')).toEqual('HAL9000@' + browser.params.email); expect(await StudentPasswordLabelTwo.getText()).toEqual('Password*'); expect(await StudentPasswordTextBox.getAttribute('value')).toEqual('J@!234'); expect(await IndicatesRequiredFieldsLabelThree.getText()).toEqual('* indicates require fields.'); expect(await EmailInstructionsThree.getText()).toEqual("Using an email address as a username is preferred. If you do, we will update the student's profile and save the email address for future notifications."); expect(await AssociatedSchoolListOne.getText()).toEqual(' ' + browser.params.school + ' (The Matrix)'); await BackToAdminDashboardLinkText.click().then(function() { browser.sleep(2500); }); expect(await PageTitle.getText()).toEqual('Admin Dashboard'); }); } function AddStudentToClass() { it(': AddStudentToClass, should add newly created student to newly created class', async function () { var ManageClassesTile = element(by.css('.col-lg-2:nth-child(4) tr:nth-child(1) > td')); var PageTitle = element(by.css('#title')); var AddNewClassesTab = element(by.linkText('ADD NEW CLASS')); var SchoolNameLabel = element(by.css('.col-12:nth-child(1)')); var SchoolNameTextBox = element(by.name('SelectedSchool')); var TeacherNameLabel = element(by.css('.row:nth-child(4) > .col-12:nth-child(2)')); var TeacherNameTextBox = element(by.name('SelectedTeacher')); var ClassNameLabel = element(by.css('.col-12:nth-child(3)')); var ClassNameTextBox = element(by.name('ClassName')); var ClassPeriodLabel = element(by.css('.col-12:nth-child(4)')); var ClassPeriodTextBox = element(by.name('Period')); var AddToExistingSimulationLabel = element(by.css('.col-12:nth-child(5)')); var AddToExistintSimulationTextBox = element(by.name('SelectedSimulation')); var NumberOfStudentsLabel = element(by.css('.col-12:nth-child(6)')); var NumberOfStudentsTextBox = element(by.name('ClassSize')); var RemoveColumnHeader = element(by.css('.table-primary > td:nth-child(1)')); var NameColumnHeader = element(by.css('td:nth-child(2)')); var BirthDateColumnHeader = element(by.css('td:nth-child(3)')); var SearchAndAddStudentTextBox = element(by.css('.input-group > .ng-untouched')); var TotalStudentsLabel = element(by.css('td > span:nth-child(2)')); var IndicatesRequiredFieldsLabel = element(by.css('div:nth-child(5) > div:nth-child(1)')); var EditExistingClassesTab = element(by.linkText('EDIT EXISTING CLASS')); var ExistingSearchTextBox = element(by.css('.form-control')); var SelectNewlyCreatedSchool = element(by.id('ngb-typeahead-29-0')); var ClassId = element(by.css('.col-12:nth-child(1)')); var ConnectionCode = element(by.css('.col-sm-6:nth-child(2)')); var SchoolNameText = element(by.css('.col-12:nth-child(3)')); var TeacherNameLabelTwo = element(by.css('.col-12:nth-child(4)')); var ClassNameLabelTwo = element(by.css('.col-12:nth-child(5)')); var ClassPeriodLabelTwo = element(by.css('.col-12:nth-child(6)')); var AddToExistingSimulationLabelTwo = element(by.css('.col-12:nth-child(7)')); var NumberOfStudentsLabelTwo = element(by.css('.col-12:nth-child(8)')); var EnrolledStudentNameOne = element(by.css('tbody > tr:nth-child(1) > td:nth-child(2)')); var EnrolledStudentDOBOne = element(by.css('tbody > tr:nth-child(1) > td:nth-child(3)')); var SearchAndAddStudentTextBoxTwo = element(by.css('.input-group:nth-child(1) > .form-control')); var IndicatesRequiredFieldsLabelTwo = element(by.css('div:nth-child(6) > div:nth-child(1)')); var SelectNewlyCreatedStudent = element(by.id('ngb-typeahead-32-0')); var CancelButton = element(by.css('.btn-outline-primary')); var SaveButton = element(by.css('.btn:nth-child(2)')); var BackToAdminDashboardLinkText = element(by.linkText('BACK TO ADMIN DASHBOARD')); await ManageClassesTile.click().then(function() { browser.sleep(2500); }); expect(await PageTitle.getText()).toEqual('Manage Classes'); expect(AddNewClassesTab.getCssValue('background-color')).toBe('rgba(255, 255, 255, 1)'); //white: active expect(await AddNewClassesTab.getText()).toEqual('ADD NEW CLASS'); expect(EditExistingClassesTab.getCssValue('background-color')).toBe('rgba(138, 105, 131, 1)'); //purple: clickable expect(await EditExistingClassesTab.getText()).toEqual('EDIT EXISTING CLASS'); expect(await SchoolNameLabel.getText()).toEqual('School Name*'); expect(await SchoolNameTextBox.getAttribute('placeholder')).toEqual('Search and Select a School'); expect(await TeacherNameLabel.getText()).toEqual('Teacher Name*'); expect(await TeacherNameTextBox.getAttribute('placeholder')).toEqual('Search and Select a Teacher by Name or Email'); expect(await ClassNameLabel.getText()).toEqual('Class Name*'); expect(await ClassPeriodLabel.getText()).toEqual('Period*'); expect(await AddToExistingSimulationLabel.getText()).toEqual('Add to Existing Simulation'); expect(await AddToExistintSimulationTextBox.getAttribute('placeholder')).toEqual('Search and Select a Simulation'); expect(await NumberOfStudentsLabel.getText()).toEqual('Number of Students*'); expect(await NumberOfStudentsTextBox.getAttribute('value')).toEqual('0'); expect(await RemoveColumnHeader.getText()).toEqual('Remove'); expect(await NameColumnHeader.getText()).toEqual('Name'); expect(await BirthDateColumnHeader.getText()).toEqual('Birthdate'); expect(await SearchAndAddStudentTextBox.getAttribute('placeholder')).toEqual('Search and Select a School'); expect(await TotalStudentsLabel.getText()).toEqual('0'); expect(await IndicatesRequiredFieldsLabel.getText()).toEqual('* indicates require fields.'); expect(await CancelButton.getText()).toEqual('CANCEL'); expect(await SaveButton.getText()).toEqual('SAVE'); await EditExistingClassesTab.click().then(function() { browser.sleep(2500); }); expect(AddNewClassesTab.getCssValue('background-color')).toBe('rgba(138, 105, 131, 1)'); //purple: clickable expect(await AddNewClassesTab.getText()).toEqual('ADD NEW CLASS'); expect(EditExistingClassesTab.getCssValue('background-color')).toBe('rgba(255, 255, 255, 1)'); //white: active expect(await EditExistingClassesTab.getText()).toEqual('EDIT EXISTING CLASS'); expect(await ExistingSearchTextBox.getAttribute('placeholder')).toEqual('Search and Select a Class by name, school, or teacher'); await ExistingSearchTextBox.click().then(function() { browser.sleep(2500); }); await ExistingSearchTextBox.sendKeys(browser.params.school).then(function() { browser.sleep(1500); }); await SelectNewlyCreatedSchool.click().then(function() { browser.sleep(2500); }); //expect(await ClassId.getText()).toEqual('Class Id: 34835'); //expect(await ConnectionCode.getText()).toEqual('Connection Code: IOOL2PR1'); expect(await SchoolNameText.getText()).toContain('School Name*'); expect(await SchoolNameText.getText()).toContain(browser.params.school); expect(await TeacherNameLabelTwo.getText()).toEqual('Teacher Name*'); expect(await TeacherNameTextBox.getAttribute('value')).toEqual('T-800 ' + browser.params.teacher + ' (' + browser.params.email + '@automation.com)'); expect(await ClassNameLabelTwo.getText()).toEqual('Class Name*'); expect(await ClassNameTextBox.getAttribute('value')).toEqual(browser.params.class); expect(await ClassPeriodLabelTwo.getText()).toEqual('Period*'); expect(await ClassPeriodTextBox.getAttribute('value')).toEqual('5'); expect(await AddToExistingSimulationLabelTwo.getText()).toEqual('Add to Existing Simulation'); expect(await AddToExistintSimulationTextBox.getAttribute('placeholder')).toEqual('Search and Select a Simulation'); expect(await NumberOfStudentsLabelTwo.getText()).toEqual('Number of Students*'); expect(await NumberOfStudentsTextBox.getAttribute('value')).toEqual('25'); expect(await RemoveColumnHeader.getText()).toEqual('Remove'); expect(await NameColumnHeader.getText()).toEqual('Name'); expect(await BirthDateColumnHeader.getText()).toEqual('Birthdate'); expect(await SearchAndAddStudentTextBoxTwo.getAttribute('placeholder')).toEqual('Search and Add a student'); await SearchAndAddStudentTextBoxTwo.sendKeys(browser.params.student).then(function() { browser.sleep(1500); }); await SelectNewlyCreatedStudent.click().then(function() { browser.sleep(2500); }); expect(await EnrolledStudentNameOne.getText()).toEqual('HAL 9000 ' + browser.params.student); expect(await EnrolledStudentDOBOne.getText()).toEqual('2011-11-11'); expect(await TotalStudentsLabel.getText()).toEqual('1'); expect(await IndicatesRequiredFieldsLabelTwo.getText()).toEqual('* indicates require fields.'); expect(await CancelButton.getText()).toEqual('CANCEL'); expect(await SaveButton.getText()).toEqual('SAVE'); await SaveButton.click().then(function() { browser.sleep(2500); var alertDialog = browser.switchTo().alert(); expect(alertDialog.getText()).toEqual('Change to existing class has been saved successfully'); browser.switchTo().alert().accept(); browser.sleep(2500); }); expect(AddNewClassesTab.getCssValue('background-color')).toBe('rgba(138, 105, 131, 1)'); //purple: clickable expect(await AddNewClassesTab.getText()).toEqual('ADD NEW CLASS'); expect(EditExistingClassesTab.getCssValue('background-color')).toBe('rgba(255, 255, 255, 1)'); //white: active expect(await EditExistingClassesTab.getText()).toEqual('EDIT EXISTING CLASS'); expect(await ExistingSearchTextBox.getAttribute('placeholder')).toEqual('Search and Select a Class by name, school, or teacher'); await BackToAdminDashboardLinkText.click().then(function() { browser.sleep(2500); }); expect(await PageTitle.getText()).toEqual('Admin Dashboard'); }); } function ManageSimulations() { it(': ManageSimulations, should interact with Manage Simulations page and add a new simulation.', async function () { var ManageSimulationsTile = element(by.css('.col-lg-2:nth-child(6) tr:nth-child(1) > td')); var PageTitle = element(by.css('#title')); var AddNewSimulationsTab = element(by.linkText('ADD NEW SIMULATION')); var SimulationNameLabel = element(by.css('.col-12:nth-child(1)')); var SimulationNameTextBox = element(by.name('SimulationName')); var SimulationStartDateLabel = element(by.css('.col-sm-6:nth-child(2)')); var SimulationStartDateTextBox = element(by.css('.col-12:nth-child(2) > .input-group > .form-control:nth-child(1)')); var SimulationStartDateTextBoxTwo = element(by.css('.input-group:nth-child(2) > .ng-untouched:nth-child(1)')); var SimulationStartTimeTextBox = element(by.css('.col-12:nth-child(2) > .input-group > .ng-untouched')); var SimulationEndDateLabel = element(by.css('.col-12:nth-child(3)')); var SimulationEndDateTextBox = element(by.css('.input-group:nth-child(2) > .ng-untouched:nth-child(1)')); var SimulationEndTimeTextBox = element(by.css('.input-group:nth-child(2) > .ng-untouched')); var SimulationEndTimeTextBoxTwo = element(by.css('.col-12:nth-child(3) .ng-untouched')); var MaximumStudentsLabel = element(by.css('.col-12:nth-child(4)')); var MaximumStudentsTextBox = element(by.name('MaxStudents')); var MaximumOccupationsLabel = element(by.css('.col-12:nth-child(5)')); var MaximumOccupationsTextBox = element(by.name('MaxOccupations')); var RemoveColumnHeader = element(by.css('.table-primary > td:nth-child(1)')); var ClassColumnHeader = element(by.css('.table-primary > td:nth-child(2)')); var SchoolColumnHeader = element(by.css('.table-primary > td:nth-child(3)')); var ConnectionCodeColumnHeader = element(by.css('td:nth-child(4)')); var ClassSizeColumnHeader = element(by.css('td:nth-child(5)')); var EnrolledStudentsColumnHeader = element(by.css('td:nth-child(6)')); var SearchAddClassByNameSchoolOrTeacherTextBox = element(by.css('.input-group:nth-child(1) > .form-control')); var SelectNewlyCreatedClass = element(by.id('ngb-typeahead-34-0')); var TotalLabel = element(by.css('tfoot td:nth-child(1)')); var ClassSizeCount = element(by.css('tfoot td:nth-child(2)')); var EnrolledStudentsCount = element(by.css('tfoot td:nth-child(3)')); var ClassNameAdded = element(by.css('tbody td:nth-child(2)')); var SchoolNameAdded = element(by.css('tbody td:nth-child(3)')); var ConnectionCodeAdded = element(by.css('tbody td:nth-child(4)')); var ClassSizeAdded = element(by.css('tbody td:nth-child(5)')); var EnrolledStudentAdded = element(by.css('tbody td:nth-child(6)')); var IndicatesRequiredFieldsLabel = element(by.css('.ng-dirty > div:nth-child(2) > div:nth-child(1)')); var SimulationEndDateTextBoxTwo = element(by.css('.col-12:nth-child(3) .form-control:nth-child(1)')); var SearchAddClassByNameSchoolOrTeacherTextBoxTwo = element(by.css('.ng-valid:nth-child(1)')); var EditExistingSimulationsTab = element(by.linkText('EDIT EXISTING SIMULATION')); var ExistingSearchTextBox = element(by.css('.form-control')); var SelectNewlyCreatedSimulation = element(by.id('ngb-typeahead-35-0')); var IndicatesRequiredFieldsLabelTwo = element(by.css('.ng-pristine > div:nth-child(3) > div:nth-child(1)')); var CancelButton = element(by.css('.btn-outline-primary')); var SaveButton = element(by.css('.btn:nth-child(2)')); var BackToAdminDashboardLinkText = element(by.linkText('BACK TO ADMIN DASHBOARD')); await ManageSimulationsTile.click().then(function() { browser.sleep(2500); }); expect(await PageTitle.getText()).toEqual('Manage Simulations'); expect(AddNewSimulationsTab.getCssValue('background-color')).toBe('rgba(255, 255, 255, 1)'); //white: active expect(await AddNewSimulationsTab.getText()).toEqual('ADD NEW SIMULATION'); expect(EditExistingSimulationsTab.getCssValue('background-color')).toBe('rgba(138, 105, 131, 1)'); //purple: clickable expect(await EditExistingSimulationsTab.getText()).toEqual('EDIT EXISTING SIMULATION'); expect(await SimulationNameLabel.getText()).toEqual('Simulation Name*'); await SimulationNameTextBox.sendKeys(browser.params.simulation).then(function() { browser.sleep(1500); }); expect(await SimulationStartDateLabel.getText()).toEqual('Start Date/Time*'); expect(await SimulationStartDateTextBox.getAttribute('placeholder')).toEqual('mm/dd/yyyy --:-- --'); await SimulationStartDateTextBox.sendKeys(browser.params.simulationStartEndDate).then(function() { browser.sleep(1500); }); await SimulationStartDateTextBox.sendKeys(protractor.Key.TAB).then(function() { browser.sleep(1500); }); await SimulationStartTimeTextBox.sendKeys('0800AM').then(function() { browser.sleep(1000); }); expect(await SimulationEndDateLabel.getText()).toEqual('End Date/Time*'); expect(await SimulationEndDateTextBox.getAttribute('placeholder')).toEqual('mm/dd/yyyy --:-- --'); await SimulationStartDateTextBox.sendKeys(protractor.Key.TAB).then(function() { browser.sleep(1500); }); await SimulationEndDateTextBox.sendKeys(browser.params.simulationStartEndDate).then(function() { browser.sleep(1500); }); await SimulationEndDateTextBox.sendKeys(protractor.Key.TAB).then(function() { browser.sleep(1500); }); await SimulationEndTimeTextBox.sendKeys('1000PM').then(function() { browser.sleep(1500); }); expect(await MaximumStudentsLabel.getText()).toEqual('Maximum Students*'); expect(await MaximumStudentsTextBox.getAttribute('value')).toEqual('0'); await MaximumStudentsTextBox.clear().then(function() { browser.sleep(1500); }); await MaximumStudentsTextBox.sendKeys('25').then(function() { browser.sleep(1500); }); expect(await MaximumOccupationsLabel.getText()).toEqual('Maximum Occupations'); expect(await MaximumOccupationsTextBox.getAttribute('value')).toEqual('179'); expect(await RemoveColumnHeader.getText()).toEqual('Remove'); expect(await ClassColumnHeader.getText()).toEqual('Class'); expect(await SchoolColumnHeader.getText()).toEqual('School'); expect(await ConnectionCodeColumnHeader.getText()).toEqual('Connection Code'); expect(await ClassSizeColumnHeader.getText()).toEqual('Class Size'); expect(await EnrolledStudentsColumnHeader.getText()).toEqual('Enrolled Students'); expect(await SearchAddClassByNameSchoolOrTeacherTextBox.getAttribute('placeholder')).toEqual('Search and Add a Class by name, school, or teacher'); expect(await TotalLabel.getText()).toEqual('Total:'); expect(await ClassSizeCount.getText()).toEqual('0'); expect(await EnrolledStudentsCount.getText()).toEqual('0'); await SearchAddClassByNameSchoolOrTeacherTextBox.sendKeys('Automated Class142021').then(function() { browser.sleep(1500); }); await SelectNewlyCreatedClass.click().then(function() { browser.sleep(2500); var alertDialog = browser.switchTo().alert(); expect(alertDialog.getText()).toEqual('This class is already in New Year Simulation. Are you sure you want to move it to this simulation?'); browser.switchTo().alert().dismiss(); browser.sleep(2500); }); await SearchAddClassByNameSchoolOrTeacherTextBox.sendKeys(browser.params.class).then(function() { browser.sleep(1500); }); await SelectNewlyCreatedClass.click().then(function() { browser.sleep(2500); }); expect(await TotalLabel.getText()).toEqual('Total:'); expect(await ClassSizeCount.getText()).toEqual('25'); expect(await EnrolledStudentsCount.getText()).toEqual('1'); expect(await ClassNameAdded.getText()).toEqual(browser.params.class + ' 5'); expect(await SchoolNameAdded.getText()).toEqual(browser.params.school); expect(await ClassSizeAdded.getText()).toEqual('25'); expect(await EnrolledStudentAdded.getText()).toEqual('1'); expect(await TotalLabel.getText()).toEqual('Total:'); expect(await ClassSizeCount.getText()).toEqual('25'); expect(await EnrolledStudentsCount.getText()).toEqual('1'); expect(await IndicatesRequiredFieldsLabel.getText()).toEqual('* indicates require fields.'); expect(await CancelButton.getText()).toEqual('CANCEL'); expect(await SaveButton.getText()).toEqual('SAVE'); await SaveButton.click().then(function() { browser.sleep(2500); var alertDialog = browser.switchTo().alert(); expect(alertDialog.getText()).toEqual('New simulation has been saved successfully.'); browser.switchTo().alert().accept(); browser.sleep(2500); }); expect(await PageTitle.getText()).toEqual('Manage Simulations'); expect(AddNewSimulationsTab.getCssValue('background-color')).toBe('rgba(255, 255, 255, 1)'); //white: active expect(await AddNewSimulationsTab.getText()).toEqual('ADD NEW SIMULATION'); expect(EditExistingSimulationsTab.getCssValue('background-color')).toBe('rgba(138, 105, 131, 1)'); //purple: clickable expect(await EditExistingSimulationsTab.getText()).toEqual('EDIT EXISTING SIMULATION'); expect(await SimulationNameLabel.getText()).toEqual('Simulation Name*'); expect(await SimulationStartDateLabel.getText()).toEqual('Start Date/Time*'); expect(await SimulationStartDateTextBox.getAttribute('placeholder')).toEqual('mm/dd/yyyy --:-- --'); expect(await SimulationEndDateLabel.getText()).toEqual('End Date/Time*'); expect(await SimulationEndDateTextBoxTwo.getAttribute('placeholder')).toEqual('mm/dd/yyyy --:-- --'); expect(await MaximumStudentsLabel.getText()).toEqual('Maximum Students*'); expect(await MaximumStudentsTextBox.getAttribute('value')).toEqual('0'); expect(await MaximumOccupationsLabel.getText()).toEqual('Maximum Occupations'); expect(await MaximumOccupationsTextBox.getAttribute('value')).toEqual('179'); expect(await RemoveColumnHeader.getText()).toEqual('Remove'); expect(await ClassColumnHeader.getText()).toEqual('Class'); expect(await SchoolColumnHeader.getText()).toEqual('School'); expect(await ConnectionCodeColumnHeader.getText()).toEqual('Connection Code'); expect(await ClassSizeColumnHeader.getText()).toEqual('Class Size'); expect(await EnrolledStudentsColumnHeader.getText()).toEqual('Enrolled Students'); expect(await SearchAddClassByNameSchoolOrTeacherTextBoxTwo.getAttribute('placeholder')).toEqual('Search and Add a Class by name, school, or teacher'); expect(await TotalLabel.getText()).toEqual('Total:'); expect(await ClassSizeCount.getText()).toEqual('0'); expect(await EnrolledStudentsCount.getText()).toEqual('0'); expect(await CancelButton.getText()).toEqual('CANCEL'); expect(await SaveButton.getText()).toEqual('SAVE'); await EditExistingSimulationsTab.click().then(function() { browser.sleep(2500); }); expect(await ExistingSearchTextBox.getAttribute('placeholder')).toEqual('Search for and select a simulation to edit'); await ExistingSearchTextBox.sendKeys(browser.params.simulation).then(function() { browser.sleep(1500); }); await SelectNewlyCreatedSimulation.click().then(function() { browser.sleep(2500); }); expect(await PageTitle.getText()).toEqual('Manage Simulations'); expect(AddNewSimulationsTab.getCssValue('background-color')).toBe('rgba(138, 105, 131, 1)'); //purple: clickable expect(await AddNewSimulationsTab.getText()).toEqual('ADD NEW SIMULATION'); expect(EditExistingSimulationsTab.getCssValue('background-color')).toBe('rgba(255, 255, 255, 1)'); //white: active expect(await EditExistingSimulationsTab.getText()).toEqual('EDIT EXISTING SIMULATION'); expect(await SimulationNameLabel.getText()).toEqual('Simulation Name*'); expect(await SimulationNameTextBox.getAttribute('value')).toEqual(browser.params.simulation); expect(await SimulationStartDateLabel.getText()).toEqual('Start Date/Time*'); expect(await SimulationStartDateTextBoxTwo.getAttribute('value')).toEqual(browser.params.simulationStartDateTime); expect(await SimulationEndDateLabel.getText()).toEqual('End Date/Time*'); expect(await SimulationEndTimeTextBoxTwo.getAttribute('value')).toEqual(browser.params.simulationEndDateTime); expect(await MaximumStudentsLabel.getText()).toEqual('Maximum Students*'); expect(await MaximumStudentsTextBox.getAttribute('value')).toEqual('25'); expect(await MaximumOccupationsLabel.getText()).toEqual('Maximum Occupations'); expect(await MaximumOccupationsTextBox.getAttribute('value')).toEqual('179'); expect(await RemoveColumnHeader.getText()).toEqual('Remove'); expect(await ClassColumnHeader.getText()).toEqual('Class'); expect(await SchoolColumnHeader.getText()).toEqual('School'); expect(await ConnectionCodeColumnHeader.getText()).toEqual('Connection Code'); expect(await ClassSizeColumnHeader.getText()).toEqual('Class Size'); expect(await EnrolledStudentsColumnHeader.getText()).toEqual('Enrolled Students'); expect(await SearchAddClassByNameSchoolOrTeacherTextBox.getAttribute('placeholder')).toEqual('Search and Add a Class by name, school, or teacher'); expect(await ClassNameAdded.getText()).toEqual(browser.params.class + ' P-5'); expect(await SchoolNameAdded.getText()).toEqual(browser.params.school); //expect(await ConnectionCodeAdded.getText()).toEqual('Q6XI4H7D'); expect(await ClassSizeAdded.getText()).toEqual('25'); expect(await EnrolledStudentsCount.getText()).toEqual('1'); expect(await TotalLabel.getText()).toEqual('Total:'); expect(await ClassSizeCount.getText()).toEqual('25'); expect(await EnrolledStudentsCount.getText()).toEqual('1'); expect(await IndicatesRequiredFieldsLabelTwo.getText()).toEqual('* indicates require fields.'); expect(await CancelButton.getText()).toEqual('CANCEL'); expect(await SaveButton.getText()).toEqual('SAVE'); await BackToAdminDashboardLinkText.click().then(function() { browser.sleep(2500); }); expect(await PageTitle.getText()).toEqual('Admin Dashboard'); }); } function ManageReports() { it(': ManageReports, should interact with Manage Reports page, select validate report.', async function () { var ManageReportsTile = element(by.css('.col-lg-2:nth-child(7) tr:nth-child(1) > td')); var PageTitle = element(by.css('#title')); var PageSubTitle = element(by.css('.bg-secondary')); var SelectASimulationLabel = element(by.css('.row > .col-12:nth-child(1)')); var SelectASimulationTextBox = element(by.name('SelectedSimulation')); var SelectSimulation = element(by.id('ngb-typeahead-37-0')); var SelectASchoolLabel = element(by.css('.row:nth-child(2) > .col-12:nth-child(2)')); var SelectASchoolTextBox = element(by.name('SelectedSchool')); var SelectATeacherLabel = element(by.css('.col-12:nth-child(3)')); var SelectATeacherTextBox = element(by.name('SelectedTeacher')); var SelectAClassLabel = element(by.css('.col-12:nth-child(4)')); var SelectAClassTextBox = element(by.name('SelectedClass')); var StudentNameHeaderColumn = element(by.css('th:nth-child(1)')); var StudentNameOne = element(by.css('td:nth-child(1)')); var StudentNameTwo = element(by.css('tr:nth-child(2) > td:nth-child(1)')); var StudentNameThree = element(by.css('tr:nth-child(3) > td:nth-child(1)')); var StudentNameFour = element(by.css('tr:nth-child(4) > td:nth-child(1)')); var StudentNameFive = element(by.css('tr:nth-child(5) > td:nth-child(1)')); var StudentNameSix = element(by.css('tr:nth-child(6) > td:nth-child(1)')); var StudentNameSeven = element(by.css('tr:nth-child(7) > td:nth-child(1)')); var StudentNameEight = element(by.css('tr:nth-child(8) > td:nth-child(1)')); var PreTestHeaderColumn = element(by.css('th:nth-child(2)')); var PreTestOne = element(by.css('td:nth-child(2) > span')); var PreTestCompleteLinkOne = element(by.css('tr:nth-child(1) a')); var PrePostTestDIVTotalPointsLabel = element(by.css('td:nth-child(1) > div > div > div:nth-child(1)')); var PrePostTestDIVTotalPointsData = element(by.css('td:nth-child(1) div:nth-child(2)')); var PrePostTestDIVTitle = element(by.css('table > tr > td:nth-child(2)')); var PrePostTestDIVTotalScoreLabel = element(by.css('td:nth-child(3) > div > div > div:nth-child(1)')); var PrePostTestDIVTotalScoreData = element(by.css('td:nth-child(3) div:nth-child(2)')); var PrePostTestDIVQuestionColumnHeader = element(by.css('.sticky-top:nth-child(2)')); var PrePostTestDIVAnswerColumnHeader = element(by.css('.sticky-top:nth-child(3)')); var PrePostTestDIVPointsColumnHeader = element(by.css('.sticky-top:nth-child(4)')); var PrePostTestDIVQuestionNumberOne = element(by.css('.ng-star-inserted:nth-child(1) > td:nth-child(1)')); var PrePostTestDIVQuestionOne = element(by.css('.ng-star-inserted:nth-child(1) > td:nth-child(2)')); var PrePostTestDIVSelectedAnswerOne = element(by.css('.ng-star-inserted:nth-child(1) > td:nth-child(3)')); var PrePostTestDIVPointsScoredOne = element(by.css('.ng-star-inserted:nth-child(1) > td:nth-child(4)')); var PrePostTestDIVQuestionNumberTwo = element(by.css('.ng-star-inserted:nth-child(2) > td:nth-child(1)')); var PrePostTestDIVQuestionTwo = element(by.css('.ng-star-inserted:nth-child(2) > td:nth-child(2)')); var PrePostTestDIVSelectedAnswerTwo = element(by.css('.ng-star-inserted:nth-child(2) > td:nth-child(3)')); var PrePostTestDIVPointsScoredTwo = element(by.css('.ng-star-inserted:nth-child(2) > td:nth-child(4)')); var PrePostTestDIVQuestionNumberThree = element(by.css('.ng-star-inserted:nth-child(3) > td:nth-child(1)')); var PrePostTestDIVQuestionThree = element(by.css('.ng-star-inserted:nth-child(3) > td:nth-child(2)')); var PrePostTestDIVSelectedAnswerThree = element(by.css('.ng-star-inserted:nth-child(3) > td:nth-child(3)')); var PrePostTestDIVPointsScoredThree = element(by.css('.ng-star-inserted:nth-child(3) > td:nth-child(4)')); var PrePostTestDIVQuestionNumberFour = element(by.css('.ng-star-inserted:nth-child(4) > td:nth-child(1)')); var PrePostTestDIVQuestionFour = element(by.css('.ng-star-inserted:nth-child(4) > td:nth-child(2)')); var PrePostTestDIVSelectedAnswerFour = element(by.css('.ng-star-inserted:nth-child(4) > td:nth-child(3)')); var PrePostTestDIVPointsScoredFour = element(by.css('.ng-star-inserted:nth-child(4) > td:nth-child(4)')); var PrePostTestDIVQuestionNumberFive = element(by.css('.ng-star-inserted:nth-child(5) > td:nth-child(1)')); var PrePostTestDIVQuestionFive = element(by.css('.ng-star-inserted:nth-child(5) > td:nth-child(2)')); var PrePostTestDIVSelectedAnswerFive = element(by.css('.ng-star-inserted:nth-child(5) > td:nth-child(3)')); var PrePostTestDIVPointsScoredFive = element(by.css('.ng-star-inserted:nth-child(5) > td:nth-child(4)')); var PrePostTestDIVQuestionNumberSix = element(by.css('.ng-star-inserted:nth-child(6) > td:nth-child(1)')); var PrePostTestDIVQuestionSix = element(by.css('.ng-star-inserted:nth-child(6) > td:nth-child(2)')); var PrePostTestDIVSelectedAnswerSix = element(by.css('.ng-star-inserted:nth-child(6) > td:nth-child(3)')); var PrePostTestDIVPointsScoredSix = element(by.css('.ng-star-inserted:nth-child(6) > td:nth-child(4)')); var PrePostTestDIVQuestionNumberSeven = element(by.css('.ng-star-inserted:nth-child(7) > td:nth-child(1)')); var PrePostTestDIVQuestionSeven = element(by.css('.ng-star-inserted:nth-child(7) > td:nth-child(2)')); var PrePostTestDIVSelectedAnswerSeven = element(by.css('.ng-star-inserted:nth-child(7) > td:nth-child(3)')); var PrePostTestDIVPointsScoredSeven = element(by.css('.ng-star-inserted:nth-child(7) > td:nth-child(4)')); var PrePostTestDIVQuestionNumberEight = element(by.css('.ng-star-inserted:nth-child(8) > td:nth-child(1)')); var PrePostTestDIVQuestionEight = element(by.css('.ng-star-inserted:nth-child(8) > td:nth-child(2)')); var PrePostTestDIVSelectedAnswerEight = element(by.css('.ng-star-inserted:nth-child(8) > td:nth-child(3)')); var PrePostTestDIVPointsScoredEight = element(by.css('.ng-star-inserted:nth-child(8) > td:nth-child(4)')); var PrePostTestDIVQuestionNumberNine = element(by.css('.ng-star-inserted:nth-child(9) > td:nth-child(1)')); var PrePostTestDIVQuestionNine = element(by.css('.ng-star-inserted:nth-child(9) > td:nth-child(2)')); var PrePostTestDIVSelectedAnswerNine = element(by.css('.ng-star-inserted:nth-child(9) > td:nth-child(3)')); var PrePostTestDIVPointsScoredNine = element(by.css('.ng-star-inserted:nth-child(9) > td:nth-child(4)')); var PrePostTestDIVQuestionNumberTen = element(by.css('.ng-star-inserted:nth-child(10) > td:nth-child(1)')); var PrePostTestDIVQuestionTen = element(by.css('.ng-star-inserted:nth-child(10) > td:nth-child(2)')); var PrePostTestDIVSelectedAnswerTen = element(by.css('.ng-star-inserted:nth-child(10) > td:nth-child(3)')); var PrePostTestDIVPointsScoredTen = element(by.css('.ng-star-inserted:nth-child(10) > td:nth-child(4)')); var PrePostTestDIVQuestionNumberEleven = element(by.css('.ng-star-inserted:nth-child(11) > td:nth-child(1)')); var PrePostTestDIVQuestionEleven = element(by.css('.ng-star-inserted:nth-child(11) > td:nth-child(2)')); var PrePostTestDIVSelectedAnswerEleven = element(by.css('.ng-star-inserted:nth-child(11) > td:nth-child(3)')); var PrePostTestDIVPointsScoredEleven = element(by.css('.ng-star-inserted:nth-child(11) > td:nth-child(4)')); var PrePostTestDIVQuestionNumberTwelve = element(by.css('.ng-star-inserted:nth-child(12) > td:nth-child(1)')); var PrePostTestDIVQuestionTwelve = element(by.css('.ng-star-inserted:nth-child(12) > td:nth-child(2)')); var PrePostTestDIVSelectedAnswerTwelve = element(by.css('.ng-star-inserted:nth-child(12) > td:nth-child(3)')); var PrePostTestDIVPointsScoredTwelve = element(by.css('.ng-star-inserted:nth-child(12) > td:nth-child(4)')); var PrePostTestDIVQuestionNumberThirteen = element(by.css('.ng-star-inserted:nth-child(13) > td:nth-child(1)')); var PrePostTestDIVQuestionThirteen = element(by.css('.ng-star-inserted:nth-child(13) > td:nth-child(2)')); var PrePostTestDIVSelectedAnswerThirteen = element(by.css('.ng-star-inserted:nth-child(13) > td:nth-child(3)')); var PrePostTestDIVPointsScoredThirteen = element(by.css('.ng-star-inserted:nth-child(13) > td:nth-child(4)')); var PrePostTestDIVQuestionNumberFourteen = element(by.css('.ng-star-inserted:nth-child(14) > td:nth-child(1)')); var PrePostTestDIVQuestionFourteen = element(by.css('.ng-star-inserted:nth-child(14) > td:nth-child(2)')); var PrePostTestDIVSelectedAnswerFourteen = element(by.css('.ng-star-inserted:nth-child(14) > td:nth-child(3)')); var PrePostTestDIVPointsScoredFourteen = element(by.css('.ng-star-inserted:nth-child(14) > td:nth-child(4)')); var PrePostTestDIVQuestionNumberFifteen = element(by.css('.ng-star-inserted:nth-child(15) > td:nth-child(1)')); var PrePostTestDIVQuestionFifteen = element(by.css('.ng-star-inserted:nth-child(15) > td:nth-child(2)')); var PrePostTestDIVSelectedAnswerFifteen = element(by.css('.ng-star-inserted:nth-child(15) > td:nth-child(3)')); var PrePostTestDIVPointsScoredFifteen = element(by.css('.ng-star-inserted:nth-child(15) > td:nth-child(4)')); var PrePostTestDIVQuestionNumberSixteen = element(by.css('.ng-star-inserted:nth-child(16) > td:nth-child(1)')); var PrePostTestDIVQuestionSixteen = element(by.css('.ng-star-inserted:nth-child(16) > td:nth-child(2)')); var PrePostTestDIVSelectedAnswerSixteen = element(by.css('.ng-star-inserted:nth-child(16) > td:nth-child(3)')); var PrePostTestDIVPointsScoredSixteen = element(by.css('.ng-star-inserted:nth-child(16) > td:nth-child(4)')); var PrePostTestDIVQuestionNumberSeventeen = element(by.css('.ng-star-inserted:nth-child(17) > td:nth-child(1)')); var PrePostTestDIVQuestionSeventeen = element(by.css('.ng-star-inserted:nth-child(17) > td:nth-child(2)')); var PrePostTestDIVSelectedAnswerSeventeen = element(by.css('.ng-star-inserted:nth-child(17) > td:nth-child(3)')); var PrePostTestDIVPointsScoredSeventeen = element(by.css('.ng-star-inserted:nth-child(17) > td:nth-child(4)')); var PrePostTestDIVQuestionNumberEighteen = element(by.css('.ng-star-inserted:nth-child(18) > td:nth-child(1)')); var PrePostTestDIVQuestionEighteen = element(by.css('.ng-star-inserted:nth-child(18) > td:nth-child(2)')); var PrePostTestDIVSelectedAnswerEighteen = element(by.css('.ng-star-inserted:nth-child(18) > td:nth-child(3)')); var PrePostTestDIVPointsScoredEighteen = element(by.css('.ng-star-inserted:nth-child(18) > td:nth-child(4)')); var DIVOKButton = element(by.css('div > .btn-primary')); var PreTestTwo = element(by.css('tr:nth-child(2) > td:nth-child(2) > span')); var PreTestThree = element(by.css('tr:nth-child(3) > td:nth-child(2) > span')); var PreTestCompleteLinkThree = element(by.css('tr:nth-child(3) > td:nth-child(2) a')); var PreTestFour = element(by.css('tr:nth-child(4) > td:nth-child(2) > span')); var PreTestFive = element(by.css('tr:nth-child(5) > td:nth-child(2) > span')); var PreTestCompleteLinkFive = element(by.css('tr:nth-child(5) > td:nth-child(2) a')); var PreTestSix = element(by.css('tr:nth-child(6) > td:nth-child(2) > span')); var PreTestCompleteLinkSix = element(by.css('tr:nth-child(6) a')); var PreTestSeven = element(by.css('tr:nth-child(7) > td:nth-child(2) > span')); var PreTestEight = element(by.css('tr:nth-child(8) > td:nth-child(2) > span')); var InterestSurveyHeaderColumn = element(by.css('th:nth-child(3)')); var InterstSurveyOne = element(by.css('td:nth-child(3)')); var InterstSurveyTwo = element(by.css('tr:nth-child(2) > td:nth-child(3)')); var InterstSurveyFour = element(by.css('tr:nth-child(4) > td:nth-child(3)')); var InterstSurveyFive = element(by.css('tr:nth-child(5) > td:nth-child(3)')); var InterstSurveySix = element(by.css('tr:nth-child(6) > td:nth-child(3)')); var InterstSurveySeven = element(by.css('tr:nth-child(7) > td:nth-child(3)')); var InterstSurveyEight = element(by.css('tr:nth-child(8) > td:nth-child(3)')); var SkillsQuizHeaderColumn = element(by.css('th:nth-child(4)')); var SkillsQuizOne = element(by.css('td:nth-child(4)')); var SkillsQuizTwo = element(by.css('tr:nth-child(2) > td:nth-child(4)')); var SkillsQuizThree = element(by.css('tr:nth-child(3) > td:nth-child(4)')); var SkillsQuizFour = element(by.css('tr:nth-child(4) > td:nth-child(4)')); var SkillsQuizFive = element(by.css('tr:nth-child(5) > td:nth-child(4)')); var SkillsQuizSix = element(by.css('tr:nth-child(6) > td:nth-child(4)')); var SkillsQuizSeven = element(by.css('tr:nth-child(7) > td:nth-child(4)')); var SkillsQuizEight = element(by.css('tr:nth-child(8) > td:nth-child(4)')); var CareerSelectionHeaderColumn = element(by.css('th:nth-child(5)')); var CareerSelectionOne = element(by.css('td:nth-child(5) > span')); var CareerSelectionTwo = element(by.css('tr:nth-child(2) > td:nth-child(5) > span')); var CareerSelectionThree = element(by.css('tr:nth-child(3) > td:nth-child(5) > span')); var CareerSelectedLinkThree = element(by.css('tr:nth-child(3) > td:nth-child(5) a')); var CareerSelectedDIVCareerSelectedTitle = element(by.css('.ng-star-inserted > div > div:nth-child(1)')); var CareerSelectedDIVCareerSelectedLabel = element(by.css('.ng-star-inserted > div > div > div > div:nth-child(1)')); var CareerSelectedDIVCareerSelectedData = element(by.css('.ng-star-inserted > div > div div:nth-child(2)')); var CareerSelectedDIVCareerSelectedAccountNumberLabel = element(by.css('div:nth-child(1) > div > div > div:nth-child(3)')); var CareerSelectedDIVCareerSelectedAccountNumberData = element(by.css('div:nth-child(1) > div:nth-child(4)')); var CareerSelectionFour = element(by.css('tr:nth-child(4) > td:nth-child(5) > span')); var CareerSelectionFive = element(by.css('tr:nth-child(5) > td:nth-child(5) > span')); var CareerSelectedLinkFive = element(by.css('tr:nth-child(5) > td:nth-child(5) a')); var CareerSelectionSix = element(by.css('tr:nth-child(6) > td:nth-child(5) > span')); var CareerSelectionSeven = element(by.css('tr:nth-child(7) > td:nth-child(5) > span')); var CareerSelectionEight = element(by.css('tr:nth-child(8) > td:nth-child(5) > span')); var PostTestHeaderColumn = element(by.css('th:nth-child(6)')); var PostTestOne = element(by.css('td:nth-child(6) > span')); var PostTestTwo = element(by.css('tr:nth-child(2) > td:nth-child(6) > span')); var PostTestThree = element(by.css('tr:nth-child(3) > td:nth-child(6) > span')); var PostTestCompleteLinkThree = element(by.css('td:nth-child(6) a')); var PostTestFour = element(by.css('tr:nth-child(4) > td:nth-child(6) > span')); var PostTestFive = element(by.css('tr:nth-child(5) > td:nth-child(6) > span')); var PostTestSix = element(by.css('tr:nth-child(6) > td:nth-child(6) > span')); var PostTestSeven = element(by.css('tr:nth-child(7) > td:nth-child(6) > span')); var PostTestEight = element(by.css('tr:nth-child(8) > td:nth-child(6) > span')); var BackToAdminDashboardLinkText = element(by.linkText('BACK TO ADMIN DASHBOARD')); await ManageReportsTile.click().then(function() { browser.sleep(2500); }); expect(await PageTitle.getText()).toEqual('Manage Reports'); expect(await PageSubTitle.getText()).toEqual('Most Recent Simulation'); expect(await SelectASimulationLabel.getText()).toEqual('Select a Simulation'); expect(await SelectASimulationTextBox.getAttribute('value')).toEqual('Xerox Simulation'); expect(await SelectASchoolLabel.getText()).toContain('Select a School'); expect(await SelectASchoolTextBox.getAttribute('value')).toEqual('0: '); expect(await SelectATeacherLabel.getText()).toContain('Select a Teacher'); expect(await SelectATeacherTextBox.getAttribute('value')).toEqual('0: '); expect(await SelectAClassLabel.getText()).toContain('Select a Class'); expect(await SelectAClassTextBox.getAttribute('value')).toEqual('0: '); expect(await StudentNameHeaderColumn.getText()).toEqual('STUDENT NAME'); expect(await PreTestHeaderColumn.getText()).toEqual('PRE TEST'); expect(await InterestSurveyHeaderColumn.getText()).toEqual('INTEREST SURVEY'); expect(await SkillsQuizHeaderColumn.getText()).toEqual('SKILLS QUIZ'); expect(await CareerSelectionHeaderColumn.getText()).toEqual('CAREER SELECTION'); expect(await PostTestHeaderColumn.getText()).toEqual('POST TEST'); //Retrieve Existing Simulation Report - Automated Simulation 1520211510 await SelectASimulationTextBox.click().then(function() { browser.sleep(2500); }); await SelectASimulationTextBox.sendKeys(protractor.Key.CONTROL, "a").then(function() { browser.sleep(1000); }); await SelectASimulationTextBox.sendKeys(protractor.Key.DELETE).then(function() { browser.sleep(1000); }); await SelectASimulationTextBox.sendKeys('Automated Simulation 1520211510').then(function() { browser.sleep(1500); }); await SelectSimulation.click().then(function() { browser.sleep(2500); }); await SelectASchoolTextBox.click().then(function() { browser.sleep(2500); }); element(by.cssContainingText('option', 'Automated School 1520211510 (The Matrix)')).click(); await SelectATeacherTextBox.click().then(function() { browser.sleep(2500); }); element(by.cssContainingText('option', 'T-800 Automated1520211510')).click(); await SelectAClassTextBox.click().then(function() { browser.sleep(2500); }); element(by.cssContainingText('option', 'Automated Class 1520211510 5')).click(); await SelectAClassLabel.click().then(function() { browser.sleep(2500); }); expect(await StudentNameOne.getText()).toEqual('Ash Alien'); expect(await PreTestOne.getText()).toEqual('Complete'); await PreTestCompleteLinkOne.click().then(function() { browser.sleep(2500); }); expect(await PrePostTestDIVTotalPointsLabel.getText()).toEqual('Total Points'); expect(await PrePostTestDIVTotalPointsData.getText()).toEqual('49'); expect(await PrePostTestDIVTitle.getText()).toEqual('Pre Test'); expect(await PrePostTestDIVTotalScoreLabel.getText()).toEqual('Score'); expect(await PrePostTestDIVTotalScoreData.getText()).toEqual('98%'); expect(await PrePostTestDIVQuestionColumnHeader.getText()).toEqual('Question'); expect(await PrePostTestDIVAnswerColumnHeader.getText()).toEqual('Answer'); expect(await PrePostTestDIVPointsColumnHeader.getText()).toEqual('Points'); expect(await PrePostTestDIVQuestionNumberOne.getText()).toEqual('1'); expect(await PrePostTestDIVQuestionOne.getText()).toEqual('Career planning is done'); expect(await PrePostTestDIVSelectedAnswerOne.getText()).toEqual('Throughout a lifetime'); expect(await PrePostTestDIVPointsScoredOne.getText()).toEqual('1'); expect(await PrePostTestDIVQuestionNumberTwo.getText()).toEqual('2'); expect(await PrePostTestDIVQuestionTwo.getText()).toEqual('What are the three main types of taxes?'); expect(await PrePostTestDIVSelectedAnswerTwo.getText()).toEqual('Income, sales, and property'); expect(await PrePostTestDIVPointsScoredTwo.getText()).toEqual('1'); expect(await PrePostTestDIVQuestionNumberThree.getText()).toEqual('3'); expect(await PrePostTestDIVQuestionThree.getText()).toEqual('The total amount of income made over one year after all taxes and deductions have been subtracted is:'); expect(await PrePostTestDIVSelectedAnswerThree.getText()).toEqual('Net annual income'); expect(await PrePostTestDIVPointsScoredThree.getText()).toEqual('1'); expect(await PrePostTestDIVQuestionNumberFour.getText()).toEqual('4'); expect(await PrePostTestDIVQuestionFour.getText()).toEqual('When it comes to personal savings, what does PYF stand for?'); expect(await PrePostTestDIVSelectedAnswerFour.getText()).toEqual('Pay Yourself First'); expect(await PrePostTestDIVPointsScoredFour.getText()).toEqual('1'); expect(await PrePostTestDIVQuestionNumberFive.getText()).toEqual('5'); expect(await PrePostTestDIVQuestionFive.getText()).toEqual('Which of the following might be a bad credit score'); expect(await PrePostTestDIVSelectedAnswerFive.getText()).toEqual('550'); expect(await PrePostTestDIVPointsScoredFive.getText()).toEqual('1'); expect(await PrePostTestDIVQuestionNumberSix.getText()).toEqual('6'); expect(await PrePostTestDIVQuestionSix.getText()).toEqual('To protect yourself against risk which of the following are the best choices:'); expect(await PrePostTestDIVSelectedAnswerSix.getText()).toEqual('Both A and B'); expect(await PrePostTestDIVPointsScoredSix.getText()).toEqual('1'); expect(await PrePostTestDIVQuestionNumberSeven.getText()).toEqual('7'); expect(await PrePostTestDIVQuestionSeven.getText()).toEqual('A record of income and expenditures for a given periord of time is:'); expect(await PrePostTestDIVSelectedAnswerSeven.getText()).toEqual('Budget'); expect(await PrePostTestDIVPointsScoredSeven.getText()).toEqual('1'); browser.actions().mouseMove(PrePostTestDIVQuestionNumberEighteen).perform().then(function() { browser.sleep(1000); }); expect(await PrePostTestDIVQuestionNumberEight.getText()).toEqual('8'); expect(await PrePostTestDIVQuestionEight.getText()).toEqual('When budgeting, the first categories to consider are those that meet your:'); expect(await PrePostTestDIVSelectedAnswerEight.getText()).toEqual('Needs'); expect(await PrePostTestDIVPointsScoredEight.getText()).toEqual('1'); expect(await PrePostTestDIVQuestionNumberNine.getText()).toEqual('9'); expect(await PrePostTestDIVQuestionNine.getText()).toEqual('Which factor is one way you should base decisions on where to invest your money:'); expect(await PrePostTestDIVSelectedAnswerNine.getText()).toEqual('Interest earned vs. risk'); expect(await PrePostTestDIVPointsScoredNine.getText()).toEqual('1'); expect(await PrePostTestDIVQuestionNumberTen.getText()).toEqual('10'); expect(await PrePostTestDIVQuestionTen.getText()).toEqual('I use a budget'); expect(await PrePostTestDIVSelectedAnswerTen.getText()).toEqual('Often'); expect(await PrePostTestDIVPointsScoredTen.getText()).toEqual('3'); expect(await PrePostTestDIVQuestionNumberEleven.getText()).toEqual('11'); expect(await PrePostTestDIVQuestionEleven.getText()).toEqual('I save money for the future'); expect(await PrePostTestDIVSelectedAnswerEleven.getText()).toEqual('Often'); expect(await PrePostTestDIVPointsScoredEleven.getText()).toEqual('3'); expect(await PrePostTestDIVQuestionNumberTwelve.getText()).toEqual('12'); expect(await PrePostTestDIVQuestionTwelve.getText()).toEqual('Starting to set my career goals now is important to me'); expect(await PrePostTestDIVSelectedAnswerTwelve.getText()).toEqual('Highly agree'); expect(await PrePostTestDIVPointsScoredTwelve.getText()).toEqual('5'); expect(await PrePostTestDIVQuestionNumberThirteen.getText()).toEqual('13'); expect(await PrePostTestDIVQuestionThirteen.getText()).toEqual('I understand why I should start saving for retirement as soon as possible'); expect(await PrePostTestDIVSelectedAnswerThirteen.getText()).toEqual('Highly agree'); expect(await PrePostTestDIVPointsScoredThirteen.getText()).toEqual('5'); expect(await PrePostTestDIVQuestionNumberFourteen.getText()).toEqual('14'); expect(await PrePostTestDIVQuestionFourteen.getText()).toEqual('I understand the choices I have to make to benefit from having good credit'); expect(await PrePostTestDIVSelectedAnswerFourteen.getText()).toEqual('Highly agree'); expect(await PrePostTestDIVPointsScoredFourteen.getText()).toEqual('5'); expect(await PrePostTestDIVQuestionNumberFifteen.getText()).toEqual('15'); expect(await PrePostTestDIVQuestionFifteen.getText()).toEqual('I expect to further my education after high school'); expect(await PrePostTestDIVSelectedAnswerFifteen.getText()).toEqual('Highly agree'); expect(await PrePostTestDIVPointsScoredFifteen.getText()).toEqual('5'); expect(await PrePostTestDIVQuestionNumberSixteen.getText()).toEqual('16'); expect(await PrePostTestDIVQuestionSixteen.getText()).toEqual('I understand how to reach my financial and career goals'); expect(await PrePostTestDIVSelectedAnswerSixteen.getText()).toEqual('Highly agree'); expect(await PrePostTestDIVPointsScoredSixteen.getText()).toEqual('5'); expect(await PrePostTestDIVQuestionNumberSeventeen.getText()).toEqual('17'); expect(await PrePostTestDIVQuestionSeventeen.getText()).toEqual('I feel confident in my ability to manage my money'); expect(await PrePostTestDIVSelectedAnswerSeventeen.getText()).toEqual('Agree'); expect(await PrePostTestDIVPointsScoredSeventeen.getText()).toEqual('4'); expect(await PrePostTestDIVQuestionNumberEighteen.getText()).toEqual('18'); expect(await PrePostTestDIVQuestionEighteen.getText()).toEqual('I currently have or plan to open a savings account as soon as possible to support my financial goals'); expect(await PrePostTestDIVSelectedAnswerEighteen.getText()).toEqual('Highly agree'); expect(await PrePostTestDIVPointsScoredEighteen.getText()).toEqual('5'); expect(await DIVOKButton.getText()).toEqual('OKAY'); await DIVOKButton.click().then(function() { browser.sleep(2500); }); expect(await InterstSurveyOne.getText()).toEqual('Incomplete'); expect(await SkillsQuizOne.getText()).toEqual('Incomplete'); expect(await CareerSelectionOne.getText()).toEqual('Not Selected'); expect(await PostTestOne.getText()).toEqual('Incomplete'); expect(await StudentNameTwo.getText()).toEqual('ED209 RoboCop'); expect(await PreTestTwo.getText()).toEqual('Incomplete'); expect(await InterstSurveyTwo.getText()).toEqual('Incomplete'); expect(await SkillsQuizTwo.getText()).toEqual('Incomplete'); expect(await CareerSelectionTwo.getText()).toEqual('Not Selected'); expect(await PostTestTwo.getText()).toEqual('Incomplete'); expect(await StudentNameThree.getText()).toEqual('HAL 9000 Automated1520211510'); expect(await PreTestThree.getText()).toEqual('Complete'); await PreTestCompleteLinkThree.click().then(function() { browser.sleep(2500); }); expect(await PrePostTestDIVTotalPointsLabel.getText()).toEqual('Total Points'); expect(await PrePostTestDIVTotalPointsData.getText()).toEqual('43'); expect(await PrePostTestDIVTitle.getText()).toEqual('Pre Test'); expect(await PrePostTestDIVTotalScoreLabel.getText()).toEqual('Score'); expect(await PrePostTestDIVTotalScoreData.getText()).toEqual('86%'); expect(await PrePostTestDIVQuestionColumnHeader.getText()).toEqual('Question'); expect(await PrePostTestDIVAnswerColumnHeader.getText()).toEqual('Answer'); expect(await PrePostTestDIVPointsColumnHeader.getText()).toEqual('Points'); expect(await PrePostTestDIVQuestionNumberOne.getText()).toEqual('1'); expect(await PrePostTestDIVQuestionOne.getText()).toEqual('Career planning is done'); expect(await PrePostTestDIVSelectedAnswerOne.getText()).toEqual('Throughout a lifetime'); expect(await PrePostTestDIVPointsScoredOne.getText()).toEqual('1'); expect(await PrePostTestDIVQuestionNumberTwo.getText()).toEqual('2'); expect(await PrePostTestDIVQuestionTwo.getText()).toEqual('What are the three main types of taxes?'); expect(await PrePostTestDIVSelectedAnswerTwo.getText()).toEqual('Unemployment, sales, and property'); expect(await PrePostTestDIVPointsScoredTwo.getText()).toEqual('0'); expect(await PrePostTestDIVQuestionNumberThree.getText()).toEqual('3'); expect(await PrePostTestDIVQuestionThree.getText()).toEqual('The total amount of income made over one year after all taxes and deductions have been subtracted is:'); expect(await PrePostTestDIVSelectedAnswerThree.getText()).toEqual('Net annual income'); expect(await PrePostTestDIVPointsScoredThree.getText()).toEqual('1'); expect(await PrePostTestDIVQuestionNumberFour.getText()).toEqual('4'); expect(await PrePostTestDIVQuestionFour.getText()).toEqual('When it comes to personal savings, what does PYF stand for?'); expect(await PrePostTestDIVSelectedAnswerFour.getText()).toEqual('Prepare Your Finances'); expect(await PrePostTestDIVPointsScoredFour.getText()).toEqual('0'); expect(await PrePostTestDIVQuestionNumberFive.getText()).toEqual('5'); expect(await PrePostTestDIVQuestionFive.getText()).toEqual('Which of the following might be a bad credit score'); expect(await PrePostTestDIVSelectedAnswerFive.getText()).toEqual('550'); expect(await PrePostTestDIVPointsScoredFive.getText()).toEqual('1'); expect(await PrePostTestDIVQuestionNumberSix.getText()).toEqual('6'); expect(await PrePostTestDIVQuestionSix.getText()).toEqual('To protect yourself against risk which of the following are the best choices:'); expect(await PrePostTestDIVSelectedAnswerSix.getText()).toEqual('Invest all of your money in a single stock'); expect(await PrePostTestDIVPointsScoredSix.getText()).toEqual('0'); expect(await PrePostTestDIVQuestionNumberSeven.getText()).toEqual('7'); expect(await PrePostTestDIVQuestionSeven.getText()).toEqual('A record of income and expenditures for a given periord of time is:'); expect(await PrePostTestDIVSelectedAnswerSeven.getText()).toEqual('Interest'); expect(await PrePostTestDIVPointsScoredSeven.getText()).toEqual('0'); browser.actions().mouseMove(PrePostTestDIVQuestionNumberEighteen).perform().then(function() { browser.sleep(1000); }); expect(await PrePostTestDIVQuestionNumberEight.getText()).toEqual('8'); expect(await PrePostTestDIVQuestionEight.getText()).toEqual('When budgeting, the first categories to consider are those that meet your:'); expect(await PrePostTestDIVSelectedAnswerEight.getText()).toEqual('Needs'); expect(await PrePostTestDIVPointsScoredEight.getText()).toEqual('1'); expect(await PrePostTestDIVQuestionNumberNine.getText()).toEqual('9'); expect(await PrePostTestDIVQuestionNine.getText()).toEqual('Which factor is one way you should base decisions on where to invest your money:'); expect(await PrePostTestDIVSelectedAnswerNine.getText()).toEqual('Interest earned vs. risk'); expect(await PrePostTestDIVPointsScoredNine.getText()).toEqual('1'); expect(await PrePostTestDIVQuestionNumberTen.getText()).toEqual('10'); expect(await PrePostTestDIVQuestionTen.getText()).toEqual('I use a budget'); expect(await PrePostTestDIVSelectedAnswerTen.getText()).toEqual('Often'); expect(await PrePostTestDIVPointsScoredTen.getText()).toEqual('3'); expect(await PrePostTestDIVQuestionNumberEleven.getText()).toEqual('11'); expect(await PrePostTestDIVQuestionEleven.getText()).toEqual('I save money for the future'); expect(await PrePostTestDIVSelectedAnswerEleven.getText()).toEqual('Often'); expect(await PrePostTestDIVPointsScoredEleven.getText()).toEqual('3'); expect(await PrePostTestDIVQuestionNumberTwelve.getText()).toEqual('12'); expect(await PrePostTestDIVQuestionTwelve.getText()).toEqual('Starting to set my career goals now is important to me'); expect(await PrePostTestDIVSelectedAnswerTwelve.getText()).toEqual('Highly agree'); expect(await PrePostTestDIVPointsScoredTwelve.getText()).toEqual('5'); expect(await PrePostTestDIVQuestionNumberThirteen.getText()).toEqual('13'); expect(await PrePostTestDIVQuestionThirteen.getText()).toEqual('I understand why I should start saving for retirement as soon as possible'); expect(await PrePostTestDIVSelectedAnswerThirteen.getText()).toEqual('Agree'); expect(await PrePostTestDIVPointsScoredThirteen.getText()).toEqual('4'); expect(await PrePostTestDIVQuestionNumberFourteen.getText()).toEqual('14'); expect(await PrePostTestDIVQuestionFourteen.getText()).toEqual('I understand the choices I have to make to benefit from having good credit'); expect(await PrePostTestDIVSelectedAnswerFourteen.getText()).toEqual('Slightly agree'); expect(await PrePostTestDIVPointsScoredFourteen.getText()).toEqual('3'); expect(await PrePostTestDIVQuestionNumberFifteen.getText()).toEqual('15'); expect(await PrePostTestDIVQuestionFifteen.getText()).toEqual('I expect to further my education after high school'); expect(await PrePostTestDIVSelectedAnswerFifteen.getText()).toEqual('Highly agree'); expect(await PrePostTestDIVPointsScoredFifteen.getText()).toEqual('5'); expect(await PrePostTestDIVQuestionNumberSixteen.getText()).toEqual('16'); expect(await PrePostTestDIVQuestionSixteen.getText()).toEqual('I understand how to reach my financial and career goals'); expect(await PrePostTestDIVSelectedAnswerSixteen.getText()).toEqual('Highly agree'); expect(await PrePostTestDIVPointsScoredSixteen.getText()).toEqual('5'); expect(await PrePostTestDIVQuestionNumberSeventeen.getText()).toEqual('17'); expect(await PrePostTestDIVQuestionSeventeen.getText()).toEqual('I feel confident in my ability to manage my money'); expect(await PrePostTestDIVSelectedAnswerSeventeen.getText()).toEqual('Highly agree'); expect(await PrePostTestDIVPointsScoredSeventeen.getText()).toEqual('5'); expect(await PrePostTestDIVQuestionNumberEighteen.getText()).toEqual('18'); expect(await PrePostTestDIVQuestionEighteen.getText()).toEqual('I currently have or plan to open a savings account as soon as possible to support my financial goals'); expect(await PrePostTestDIVSelectedAnswerEighteen.getText()).toEqual('Highly agree'); expect(await PrePostTestDIVPointsScoredEighteen.getText()).toEqual('5'); expect(await DIVOKButton.getText()).toEqual('OKAY'); await DIVOKButton.click().then(function() { browser.sleep(2500); }); await CareerSelectedLinkThree.click().then(function() { browser.sleep(2500); }); expect(await CareerSelectedDIVCareerSelectedTitle.getText()).toEqual('Career Selection'); expect(await CareerSelectedDIVCareerSelectedLabel.getText()).toEqual('Career'); expect(await CareerSelectedDIVCareerSelectedData.getText()).toEqual('Information Security Analyst'); expect(await CareerSelectedDIVCareerSelectedAccountNumberLabel.getText()).toEqual('Account Number'); expect(await CareerSelectedDIVCareerSelectedAccountNumberData.getText()).toEqual('10115'); expect(await DIVOKButton.getText()).toEqual('OKAY'); await DIVOKButton.click().then(function() { browser.sleep(2500); }); expect(await SkillsQuizThree.getText()).toEqual('Complete'); expect(await CareerSelectionThree.getText()).toEqual('Selected'); expect(await PostTestThree.getText()).toEqual('Complete'); await PostTestCompleteLinkThree.click().then(function() { browser.sleep(2500); }); expect(await PrePostTestDIVTotalPointsLabel.getText()).toEqual('Total Points'); expect(await PrePostTestDIVTotalPointsData.getText()).toEqual('49'); expect(await PrePostTestDIVTitle.getText()).toEqual('Post Test'); expect(await PrePostTestDIVTotalScoreLabel.getText()).toEqual('Score'); expect(await PrePostTestDIVTotalScoreData.getText()).toEqual('98%'); expect(await PrePostTestDIVQuestionColumnHeader.getText()).toEqual('Question'); expect(await PrePostTestDIVAnswerColumnHeader.getText()).toEqual('Answer'); expect(await PrePostTestDIVPointsColumnHeader.getText()).toEqual('Points'); expect(await PrePostTestDIVQuestionNumberOne.getText()).toEqual('1'); expect(await PrePostTestDIVQuestionOne.getText()).toEqual('Career planning is done'); expect(await PrePostTestDIVSelectedAnswerOne.getText()).toEqual('Throughout a lifetime'); expect(await PrePostTestDIVPointsScoredOne.getText()).toEqual('1'); expect(await PrePostTestDIVQuestionNumberTwo.getText()).toEqual('2'); expect(await PrePostTestDIVQuestionTwo.getText()).toEqual('What are the three main types of taxes?'); expect(await PrePostTestDIVSelectedAnswerTwo.getText()).toEqual('Federal income, unemployment, and state'); expect(await PrePostTestDIVPointsScoredTwo.getText()).toEqual('0'); expect(await PrePostTestDIVQuestionNumberThree.getText()).toEqual('3'); expect(await PrePostTestDIVQuestionThree.getText()).toEqual('The total amount of income made over one year after all taxes and deductions have been subtracted is:'); expect(await PrePostTestDIVSelectedAnswerThree.getText()).toEqual('Net annual income'); expect(await PrePostTestDIVPointsScoredThree.getText()).toEqual('1'); expect(await PrePostTestDIVQuestionNumberFour.getText()).toEqual('4'); expect(await PrePostTestDIVQuestionFour.getText()).toEqual('When it comes to personal savings, what does PYF stand for?'); expect(await PrePostTestDIVSelectedAnswerFour.getText()).toEqual('Pay Yourself First'); expect(await PrePostTestDIVPointsScoredFour.getText()).toEqual('1'); expect(await PrePostTestDIVQuestionNumberFive.getText()).toEqual('5'); expect(await PrePostTestDIVQuestionFive.getText()).toEqual('Which of the following might be a bad credit score'); expect(await PrePostTestDIVSelectedAnswerFive.getText()).toEqual('550'); expect(await PrePostTestDIVPointsScoredFive.getText()).toEqual('1'); expect(await PrePostTestDIVQuestionNumberSix.getText()).toEqual('6'); expect(await PrePostTestDIVQuestionSix.getText()).toEqual('To protect yourself against risk which of the following are the best choices:'); expect(await PrePostTestDIVSelectedAnswerSix.getText()).toEqual('Both A and B'); expect(await PrePostTestDIVPointsScoredSix.getText()).toEqual('1'); expect(await PrePostTestDIVQuestionNumberSeven.getText()).toEqual('7'); expect(await PrePostTestDIVQuestionSeven.getText()).toEqual('A record of income and expenditures for a given periord of time is:'); expect(await PrePostTestDIVSelectedAnswerSeven.getText()).toEqual('Budget'); expect(await PrePostTestDIVPointsScoredSeven.getText()).toEqual('1'); browser.actions().mouseMove(PrePostTestDIVQuestionNumberEighteen).perform().then(function() { browser.sleep(1000); }); expect(await PrePostTestDIVQuestionNumberEight.getText()).toEqual('8'); expect(await PrePostTestDIVQuestionEight.getText()).toEqual('When budgeting, the first categories to consider are those that meet your:'); expect(await PrePostTestDIVSelectedAnswerEight.getText()).toEqual('Needs'); expect(await PrePostTestDIVPointsScoredEight.getText()).toEqual('1'); expect(await PrePostTestDIVQuestionNumberNine.getText()).toEqual('9'); expect(await PrePostTestDIVQuestionNine.getText()).toEqual('Which factor is one way you should base decisions on where to invest your money:'); expect(await PrePostTestDIVSelectedAnswerNine.getText()).toEqual('Interest earned vs. risk'); expect(await PrePostTestDIVPointsScoredNine.getText()).toEqual('1'); expect(await PrePostTestDIVQuestionNumberTen.getText()).toEqual('10'); expect(await PrePostTestDIVQuestionTen.getText()).toEqual('I plan to start using a personal budget'); expect(await PrePostTestDIVSelectedAnswerTen.getText()).toEqual('Often'); expect(await PrePostTestDIVPointsScoredTen.getText()).toEqual('3'); expect(await PrePostTestDIVQuestionNumberEleven.getText()).toEqual('11'); expect(await PrePostTestDIVQuestionEleven.getText()).toEqual('I save money for the future'); expect(await PrePostTestDIVSelectedAnswerEleven.getText()).toEqual('Often'); expect(await PrePostTestDIVPointsScoredEleven.getText()).toEqual('3'); expect(await PrePostTestDIVQuestionNumberTwelve.getText()).toEqual('12'); expect(await PrePostTestDIVQuestionTwelve.getText()).toEqual('Starting to set my career goals now is important to me'); expect(await PrePostTestDIVSelectedAnswerTwelve.getText()).toEqual('Highly agree'); expect(await PrePostTestDIVPointsScoredTwelve.getText()).toEqual('5'); expect(await PrePostTestDIVQuestionNumberThirteen.getText()).toEqual('13'); expect(await PrePostTestDIVQuestionThirteen.getText()).toEqual('I understand why I should start saving for retirement as soon as possible'); expect(await PrePostTestDIVSelectedAnswerThirteen.getText()).toEqual('Highly agree'); expect(await PrePostTestDIVPointsScoredThirteen.getText()).toEqual('5'); expect(await PrePostTestDIVQuestionNumberFourteen.getText()).toEqual('14'); expect(await PrePostTestDIVQuestionFourteen.getText()).toEqual('I understand the choices I have to make to benefit from having good credit'); expect(await PrePostTestDIVSelectedAnswerFourteen.getText()).toEqual('Highly agree'); expect(await PrePostTestDIVPointsScoredFourteen.getText()).toEqual('5'); expect(await PrePostTestDIVQuestionNumberFifteen.getText()).toEqual('15'); expect(await PrePostTestDIVQuestionFifteen.getText()).toEqual('I expect to further my education after high school'); expect(await PrePostTestDIVSelectedAnswerFifteen.getText()).toEqual('Highly agree'); expect(await PrePostTestDIVPointsScoredFifteen.getText()).toEqual('5'); expect(await PrePostTestDIVQuestionNumberSixteen.getText()).toEqual('16'); expect(await PrePostTestDIVQuestionSixteen.getText()).toEqual('I understand how to reach my financial and career goals'); expect(await PrePostTestDIVSelectedAnswerSixteen.getText()).toEqual('Highly agree'); expect(await PrePostTestDIVPointsScoredSixteen.getText()).toEqual('5'); expect(await PrePostTestDIVQuestionNumberSeventeen.getText()).toEqual('17'); expect(await PrePostTestDIVQuestionSeventeen.getText()).toEqual('I feel confident in my ability to manage my money'); expect(await PrePostTestDIVSelectedAnswerSeventeen.getText()).toEqual('Highly agree'); expect(await PrePostTestDIVPointsScoredSeventeen.getText()).toEqual('5'); expect(await PrePostTestDIVQuestionNumberEighteen.getText()).toEqual('18'); expect(await PrePostTestDIVQuestionEighteen.getText()).toEqual('I plan to open a savings account as soon as possible to support my financial goals'); expect(await PrePostTestDIVSelectedAnswerEighteen.getText()).toEqual('Highly agree'); expect(await PrePostTestDIVPointsScoredEighteen.getText()).toEqual('5'); expect(await DIVOKButton.getText()).toEqual('OKAY'); await DIVOKButton.click().then(function() { browser.sleep(2500); }); expect(await StudentNameFour.getText()).toEqual('Roy Batty'); expect(await PreTestFour.getText()).toEqual('Incomplete'); expect(await InterstSurveyFour.getText()).toEqual('Incomplete'); expect(await SkillsQuizFour.getText()).toEqual('Incomplete'); expect(await CareerSelectionFour.getText()).toEqual('Not Selected'); expect(await PostTestFour.getText()).toEqual('Incomplete'); expect(await StudentNameFive.getText()).toEqual('Sentinels-Machines TheMatrix'); expect(await PreTestFive.getText()).toEqual('Complete'); await PreTestCompleteLinkFive.click().then(function() { browser.sleep(2500); }); expect(await PrePostTestDIVTotalPointsLabel.getText()).toEqual('Total Points'); expect(await PrePostTestDIVTotalPointsData.getText()).toEqual('49'); expect(await PrePostTestDIVTitle.getText()).toEqual('Pre Test'); expect(await PrePostTestDIVTotalScoreLabel.getText()).toEqual('Score'); expect(await PrePostTestDIVTotalScoreData.getText()).toEqual('98%'); expect(await PrePostTestDIVQuestionColumnHeader.getText()).toEqual('Question'); expect(await PrePostTestDIVAnswerColumnHeader.getText()).toEqual('Answer'); expect(await PrePostTestDIVPointsColumnHeader.getText()).toEqual('Points'); expect(await PrePostTestDIVQuestionNumberOne.getText()).toEqual('1'); expect(await PrePostTestDIVQuestionOne.getText()).toEqual('Career planning is done'); expect(await PrePostTestDIVSelectedAnswerOne.getText()).toEqual('Throughout a lifetime'); expect(await PrePostTestDIVPointsScoredOne.getText()).toEqual('1'); expect(await PrePostTestDIVQuestionNumberTwo.getText()).toEqual('2'); expect(await PrePostTestDIVQuestionTwo.getText()).toEqual('What are the three main types of taxes?'); expect(await PrePostTestDIVSelectedAnswerTwo.getText()).toEqual('Income, sales, and property'); expect(await PrePostTestDIVPointsScoredTwo.getText()).toEqual('1'); expect(await PrePostTestDIVQuestionNumberThree.getText()).toEqual('3'); expect(await PrePostTestDIVQuestionThree.getText()).toEqual('The total amount of income made over one year after all taxes and deductions have been subtracted is:'); expect(await PrePostTestDIVSelectedAnswerThree.getText()).toEqual('Gross annual income'); expect(await PrePostTestDIVPointsScoredThree.getText()).toEqual('0'); expect(await PrePostTestDIVQuestionNumberFour.getText()).toEqual('4'); expect(await PrePostTestDIVQuestionFour.getText()).toEqual('When it comes to personal savings, what does PYF stand for?'); expect(await PrePostTestDIVSelectedAnswerFour.getText()).toEqual('Pay Yourself First'); expect(await PrePostTestDIVPointsScoredFour.getText()).toEqual('1'); expect(await PrePostTestDIVQuestionNumberFive.getText()).toEqual('5'); expect(await PrePostTestDIVQuestionFive.getText()).toEqual('Which of the following might be a bad credit score'); expect(await PrePostTestDIVSelectedAnswerFive.getText()).toEqual('550'); expect(await PrePostTestDIVPointsScoredFive.getText()).toEqual('1'); expect(await PrePostTestDIVQuestionNumberSix.getText()).toEqual('6'); expect(await PrePostTestDIVQuestionSix.getText()).toEqual('To protect yourself against risk which of the following are the best choices:'); expect(await PrePostTestDIVSelectedAnswerSix.getText()).toEqual('Both A and B'); expect(await PrePostTestDIVPointsScoredSix.getText()).toEqual('1'); expect(await PrePostTestDIVQuestionNumberSeven.getText()).toEqual('7'); expect(await PrePostTestDIVQuestionSeven.getText()).toEqual('A record of income and expenditures for a given periord of time is:'); expect(await PrePostTestDIVSelectedAnswerSeven.getText()).toEqual('Budget'); expect(await PrePostTestDIVPointsScoredSeven.getText()).toEqual('1'); browser.actions().mouseMove(PrePostTestDIVQuestionNumberEighteen).perform().then(function() { browser.sleep(1000); }); expect(await PrePostTestDIVQuestionNumberEight.getText()).toEqual('8'); expect(await PrePostTestDIVQuestionEight.getText()).toEqual('When budgeting, the first categories to consider are those that meet your:'); expect(await PrePostTestDIVSelectedAnswerEight.getText()).toEqual('Needs'); expect(await PrePostTestDIVPointsScoredEight.getText()).toEqual('1'); expect(await PrePostTestDIVQuestionNumberNine.getText()).toEqual('9'); expect(await PrePostTestDIVQuestionNine.getText()).toEqual('Which factor is one way you should base decisions on where to invest your money:'); expect(await PrePostTestDIVSelectedAnswerNine.getText()).toEqual('Interest earned vs. risk'); expect(await PrePostTestDIVPointsScoredNine.getText()).toEqual('1'); expect(await PrePostTestDIVQuestionNumberTen.getText()).toEqual('10'); expect(await PrePostTestDIVQuestionTen.getText()).toEqual('I use a budget'); expect(await PrePostTestDIVSelectedAnswerTen.getText()).toEqual('Often'); expect(await PrePostTestDIVPointsScoredTen.getText()).toEqual('3'); expect(await PrePostTestDIVQuestionNumberEleven.getText()).toEqual('11'); expect(await PrePostTestDIVQuestionEleven.getText()).toEqual('I save money for the future'); expect(await PrePostTestDIVSelectedAnswerEleven.getText()).toEqual('Often'); expect(await PrePostTestDIVPointsScoredEleven.getText()).toEqual('3'); expect(await PrePostTestDIVQuestionNumberTwelve.getText()).toEqual('12'); expect(await PrePostTestDIVQuestionTwelve.getText()).toEqual('Starting to set my career goals now is important to me'); expect(await PrePostTestDIVSelectedAnswerTwelve.getText()).toEqual('Highly agree'); expect(await PrePostTestDIVPointsScoredTwelve.getText()).toEqual('5'); expect(await PrePostTestDIVQuestionNumberThirteen.getText()).toEqual('13'); expect(await PrePostTestDIVQuestionThirteen.getText()).toEqual('I understand why I should start saving for retirement as soon as possible'); expect(await PrePostTestDIVSelectedAnswerThirteen.getText()).toEqual('Highly agree'); expect(await PrePostTestDIVPointsScoredThirteen.getText()).toEqual('5'); expect(await PrePostTestDIVQuestionNumberFourteen.getText()).toEqual('14'); expect(await PrePostTestDIVQuestionFourteen.getText()).toEqual('I understand the choices I have to make to benefit from having good credit'); expect(await PrePostTestDIVSelectedAnswerFourteen.getText()).toEqual('Highly agree'); expect(await PrePostTestDIVPointsScoredFourteen.getText()).toEqual('5'); expect(await PrePostTestDIVQuestionNumberFifteen.getText()).toEqual('15'); expect(await PrePostTestDIVQuestionFifteen.getText()).toEqual('I expect to further my education after high school'); expect(await PrePostTestDIVSelectedAnswerFifteen.getText()).toEqual('Highly agree'); expect(await PrePostTestDIVPointsScoredFifteen.getText()).toEqual('5'); expect(await PrePostTestDIVQuestionNumberSixteen.getText()).toEqual('16'); expect(await PrePostTestDIVQuestionSixteen.getText()).toEqual('I understand how to reach my financial and career goals'); expect(await PrePostTestDIVSelectedAnswerSixteen.getText()).toEqual('Highly agree'); expect(await PrePostTestDIVPointsScoredSixteen.getText()).toEqual('5'); expect(await PrePostTestDIVQuestionNumberSeventeen.getText()).toEqual('17'); expect(await PrePostTestDIVQuestionSeventeen.getText()).toEqual('I feel confident in my ability to manage my money'); expect(await PrePostTestDIVSelectedAnswerSeventeen.getText()).toEqual('Highly agree'); expect(await PrePostTestDIVPointsScoredSeventeen.getText()).toEqual('5'); expect(await PrePostTestDIVQuestionNumberEighteen.getText()).toEqual('18'); expect(await PrePostTestDIVQuestionEighteen.getText()).toEqual('I currently have or plan to open a savings account as soon as possible to support my financial goals'); expect(await PrePostTestDIVSelectedAnswerEighteen.getText()).toEqual('Highly agree'); expect(await PrePostTestDIVPointsScoredEighteen.getText()).toEqual('5'); expect(await DIVOKButton.getText()).toEqual('OKAY'); await DIVOKButton.click().then(function() { browser.sleep(2500); }); expect(await InterstSurveyFive.getText()).toEqual('Complete'); expect(await SkillsQuizFive.getText()).toEqual('Complete'); expect(await CareerSelectionFive.getText()).toEqual('Selected'); await CareerSelectedLinkFive.click().then(function() { browser.sleep(2500); }); expect(await CareerSelectedDIVCareerSelectedTitle.getText()).toEqual('Career Selection'); expect(await CareerSelectedDIVCareerSelectedLabel.getText()).toEqual('Career'); expect(await CareerSelectedDIVCareerSelectedData.getText()).toEqual('Food Scientist & Technologist'); expect(await CareerSelectedDIVCareerSelectedAccountNumberLabel.getText()).toEqual('Account Number'); expect(await CareerSelectedDIVCareerSelectedAccountNumberData.getText()).toEqual('10094'); expect(await DIVOKButton.getText()).toEqual('OKAY'); await DIVOKButton.click().then(function() { browser.sleep(2500); }); expect(await PostTestFive.getText()).toEqual('Incomplete'); expect(await StudentNameSix.getText()).toEqual('Skynet Terminator'); expect(await PreTestSix.getText()).toEqual('Complete'); await PreTestCompleteLinkSix.click().then(function() { browser.sleep(2500); }); expect(await PrePostTestDIVTotalPointsLabel.getText()).toEqual('Total Points'); expect(await PrePostTestDIVTotalPointsData.getText()).toEqual('44'); expect(await PrePostTestDIVTitle.getText()).toEqual('Pre Test'); expect(await PrePostTestDIVTotalScoreLabel.getText()).toEqual('Score'); expect(await PrePostTestDIVTotalScoreData.getText()).toEqual('88%'); expect(await PrePostTestDIVQuestionColumnHeader.getText()).toEqual('Question'); expect(await PrePostTestDIVAnswerColumnHeader.getText()).toEqual('Answer'); expect(await PrePostTestDIVPointsColumnHeader.getText()).toEqual('Points'); expect(await PrePostTestDIVQuestionNumberOne.getText()).toEqual('1'); expect(await PrePostTestDIVQuestionOne.getText()).toEqual('Career planning is done'); expect(await PrePostTestDIVSelectedAnswerOne.getText()).toEqual('Throughout a lifetime'); expect(await PrePostTestDIVPointsScoredOne.getText()).toEqual('1'); expect(await PrePostTestDIVQuestionNumberTwo.getText()).toEqual('2'); expect(await PrePostTestDIVQuestionTwo.getText()).toEqual('What are the three main types of taxes?'); expect(await PrePostTestDIVSelectedAnswerTwo.getText()).toEqual('Income, sales, and property'); expect(await PrePostTestDIVPointsScoredTwo.getText()).toEqual('1'); expect(await PrePostTestDIVQuestionNumberThree.getText()).toEqual('3'); expect(await PrePostTestDIVQuestionThree.getText()).toEqual('The total amount of income made over one year after all taxes and deductions have been subtracted is:'); expect(await PrePostTestDIVSelectedAnswerThree.getText()).toEqual('Net annual income'); expect(await PrePostTestDIVPointsScoredThree.getText()).toEqual('1'); expect(await PrePostTestDIVQuestionNumberFour.getText()).toEqual('4'); expect(await PrePostTestDIVQuestionFour.getText()).toEqual('When it comes to personal savings, what does PYF stand for?'); expect(await PrePostTestDIVSelectedAnswerFour.getText()).toEqual('Pay Yourself First'); expect(await PrePostTestDIVPointsScoredFour.getText()).toEqual('1'); expect(await PrePostTestDIVQuestionNumberFive.getText()).toEqual('5'); expect(await PrePostTestDIVQuestionFive.getText()).toEqual('Which of the following might be a bad credit score'); expect(await PrePostTestDIVSelectedAnswerFive.getText()).toEqual('550'); expect(await PrePostTestDIVPointsScoredFive.getText()).toEqual('1'); expect(await PrePostTestDIVQuestionNumberSix.getText()).toEqual('6'); expect(await PrePostTestDIVQuestionSix.getText()).toEqual('To protect yourself against risk which of the following are the best choices:'); expect(await PrePostTestDIVSelectedAnswerSix.getText()).toEqual('Both A and B'); expect(await PrePostTestDIVPointsScoredSix.getText()).toEqual('1'); expect(await PrePostTestDIVQuestionNumberSeven.getText()).toEqual('7'); expect(await PrePostTestDIVQuestionSeven.getText()).toEqual('A record of income and expenditures for a given periord of time is:'); expect(await PrePostTestDIVSelectedAnswerSeven.getText()).toEqual('Budget'); expect(await PrePostTestDIVPointsScoredSeven.getText()).toEqual('1'); browser.actions().mouseMove(PrePostTestDIVQuestionNumberEighteen).perform().then(function() { browser.sleep(1000); }); expect(await PrePostTestDIVQuestionNumberEight.getText()).toEqual('8'); expect(await PrePostTestDIVQuestionEight.getText()).toEqual('When budgeting, the first categories to consider are those that meet your:'); expect(await PrePostTestDIVSelectedAnswerEight.getText()).toEqual('Important expenses'); expect(await PrePostTestDIVPointsScoredEight.getText()).toEqual('0'); expect(await PrePostTestDIVQuestionNumberNine.getText()).toEqual('9'); expect(await PrePostTestDIVQuestionNine.getText()).toEqual('Which factor is one way you should base decisions on where to invest your money:'); expect(await PrePostTestDIVSelectedAnswerNine.getText()).toEqual('Interest earned vs. risk'); expect(await PrePostTestDIVPointsScoredNine.getText()).toEqual('1'); expect(await PrePostTestDIVQuestionNumberTen.getText()).toEqual('10'); expect(await PrePostTestDIVQuestionTen.getText()).toEqual('I use a budget'); expect(await PrePostTestDIVSelectedAnswerTen.getText()).toEqual('Often'); expect(await PrePostTestDIVPointsScoredTen.getText()).toEqual('3'); expect(await PrePostTestDIVQuestionNumberEleven.getText()).toEqual('11'); expect(await PrePostTestDIVQuestionEleven.getText()).toEqual('I save money for the future'); expect(await PrePostTestDIVSelectedAnswerEleven.getText()).toEqual('Often'); expect(await PrePostTestDIVPointsScoredEleven.getText()).toEqual('3'); expect(await PrePostTestDIVQuestionNumberTwelve.getText()).toEqual('12'); expect(await PrePostTestDIVQuestionTwelve.getText()).toEqual('Starting to set my career goals now is important to me'); expect(await PrePostTestDIVSelectedAnswerTwelve.getText()).toEqual('Slightly disagree'); expect(await PrePostTestDIVPointsScoredTwelve.getText()).toEqual('2'); expect(await PrePostTestDIVQuestionNumberThirteen.getText()).toEqual('13'); expect(await PrePostTestDIVQuestionThirteen.getText()).toEqual('I understand why I should start saving for retirement as soon as possible'); expect(await PrePostTestDIVSelectedAnswerThirteen.getText()).toEqual('Agree'); expect(await PrePostTestDIVPointsScoredThirteen.getText()).toEqual('4'); expect(await PrePostTestDIVQuestionNumberFourteen.getText()).toEqual('14'); expect(await PrePostTestDIVQuestionFourteen.getText()).toEqual('I understand the choices I have to make to benefit from having good credit'); expect(await PrePostTestDIVSelectedAnswerFourteen.getText()).toEqual('Agree'); expect(await PrePostTestDIVPointsScoredFourteen.getText()).toEqual('4'); expect(await PrePostTestDIVQuestionNumberFifteen.getText()).toEqual('15'); expect(await PrePostTestDIVQuestionFifteen.getText()).toEqual('I expect to further my education after high school'); expect(await PrePostTestDIVSelectedAnswerFifteen.getText()).toEqual('Highly agree'); expect(await PrePostTestDIVPointsScoredFifteen.getText()).toEqual('5'); expect(await PrePostTestDIVQuestionNumberSixteen.getText()).toEqual('16'); expect(await PrePostTestDIVQuestionSixteen.getText()).toEqual('I understand how to reach my financial and career goals'); expect(await PrePostTestDIVSelectedAnswerSixteen.getText()).toEqual('Highly agree'); expect(await PrePostTestDIVPointsScoredSixteen.getText()).toEqual('5'); expect(await PrePostTestDIVQuestionNumberSeventeen.getText()).toEqual('17'); expect(await PrePostTestDIVQuestionSeventeen.getText()).toEqual('I feel confident in my ability to manage my money'); expect(await PrePostTestDIVSelectedAnswerSeventeen.getText()).toEqual('Highly agree'); expect(await PrePostTestDIVPointsScoredSeventeen.getText()).toEqual('5'); expect(await PrePostTestDIVQuestionNumberEighteen.getText()).toEqual('18'); expect(await PrePostTestDIVQuestionEighteen.getText()).toEqual('I currently have or plan to open a savings account as soon as possible to support my financial goals'); expect(await PrePostTestDIVSelectedAnswerEighteen.getText()).toEqual('Highly agree'); expect(await PrePostTestDIVPointsScoredEighteen.getText()).toEqual('5'); expect(await DIVOKButton.getText()).toEqual('OKAY'); await DIVOKButton.click().then(function() { browser.sleep(2500); }); expect(await InterstSurveySix.getText()).toEqual('Incomplete'); expect(await SkillsQuizSix.getText()).toEqual('Incomplete'); expect(await CareerSelectionSix.getText()).toEqual('Not Selected'); expect(await PostTestSix.getText()).toEqual('Incomplete'); expect(await StudentNameSeven.getText()).toEqual('TheBorg StarTrek'); expect(await PreTestSeven.getText()).toEqual('Incomplete'); expect(await InterstSurveySeven.getText()).toEqual('Incomplete'); expect(await SkillsQuizSeven.getText()).toEqual('Incomplete'); expect(await CareerSelectionSeven.getText()).toEqual('Not Selected'); expect(await PostTestSeven.getText()).toEqual('Incomplete'); expect(await StudentNameEight.getText()).toEqual('Thegunslinger Westworld'); expect(await PreTestEight.getText()).toEqual('Incomplete'); expect(await InterstSurveyEight.getText()).toEqual('Incomplete'); expect(await SkillsQuizEight.getText()).toEqual('Incomplete'); expect(await CareerSelectionEight.getText()).toEqual('Not Selected'); expect(await PostTestEight.getText()).toEqual('Incomplete'); //Run Newly Created Simulation await SelectASimulationTextBox.click().then(function() { browser.sleep(2500); }); await SelectASimulationTextBox.sendKeys(protractor.Key.CONTROL, "a").then(function() { browser.sleep(1000); }); await SelectASimulationTextBox.sendKeys(protractor.Key.DELETE).then(function() { browser.sleep(1000); }); await SelectASimulationTextBox.sendKeys(browser.params.simulation).then(function() { browser.sleep(1500); }); await SelectSimulation.click().then(function() { browser.sleep(2500); }); await SelectASchoolTextBox.click().then(function() { browser.sleep(2500); }); element(by.cssContainingText('option', browser.params.school + ' (The Matrix)')).click(); await SelectATeacherTextBox.click().then(function() { browser.sleep(2500); }); element(by.cssContainingText('option', 'T-800 ' + browser.params.teacher)).click(); await SelectAClassTextBox.click().then(function() { browser.sleep(2500); }); element(by.cssContainingText('option', browser.params.class + ' 5')).click(); await SelectAClassLabel.click().then(function() { browser.sleep(2500); }); expect(await StudentNameOne.getText()).toEqual('HAL 9000 ' + browser.params.student); expect(await PreTestOne.getText()).toEqual('Incomplete'); expect(await InterstSurveyOne.getText()).toEqual('Incomplete'); expect(await SkillsQuizOne.getText()).toEqual('Incomplete'); expect(await CareerSelectionOne.getText()).toEqual('Not Selected'); expect(await PostTestOne.getText()).toEqual('Incomplete'); await BackToAdminDashboardLinkText.click().then(function() { browser.sleep(2500); }); expect(await PageTitle.getText()).toEqual('Admin Dashboard'); }); } function SignOut() { it(': SignOut; should log out of journeys page.', async function () { var ProfileImage = element(by.css('.jmRoundCenterImage')); var SignOutButton = element(by.css('.btn')); await ProfileImage.click().then(function() { browser.sleep(1000); }); expect(await SignOutButton.getText()).toEqual('Logout'); await SignOutButton.click().then(function() { browser.sleep(2500); }); browser.get(browser.params.login); browser.sleep(2500); }); }