//app-journeysmap_spec.js describe('Journeysmap script', function () { //app-journeysmap landing page var UserNameTextBox = element(by.css('.form-space-medium')); var PasswordTextBox = element(by.css('.form-space-large')); var SignInButton = element(by.css('.btn-block')); //Open browser //browser.driver.manage().window().setSize(1600, 800); browser.get('https://app-qa.journeysmap.com/Journey/index.html#/signin'); it('should have a title', async function () { await expect(browser.getTitle()).toEqual('Journeys'); }); //Sign In SignIn(UserNameTextBox, PasswordTextBox, SignInButton); it('should have a title', async function () { await expect(browser.getTitle()).toEqual('Journeys'); }); function SignIn(UserNameTextBox, PasswordTextBox, SignInButton) { it('should sign into journeysmap.com', async function () { var JourneysGreeting = element(by.css('.dropdown')); //var DashboardHeaderLink = element(by.css('.ng-scope:nth-child(1) > a > .span-navbar-hover')); await UserNameTextBox.sendKeys('QA_AutomatedRegression'); await PasswordTextBox.sendKeys('3Dm1nAuto'); await SignInButton.click().then(function() { browser.sleep(5000); browser.waitForAngular(); browser.getCurrentUrl(); }); /*expect(await JourneysGreeting.getText()).toEqual('Hi, Automated'); await DashboardHeaderLink.click().then(function() { browser.sleep(5000); });*/ //browser.refresh();//Role Model doesn't always load properly EDM-1603 //browser.driver.navigate().refresh(); expect(await JourneysGreeting.getText()).toEqual('Hi, Automated'); browser.waitForAngular(); browser.getCurrentUrl(); }); } //<<<>>> ProfileWidget(); MyProgressWidget(); InterestSurveyResultsWidget(); InterestSurveyResultsClusters(); InterestSurveyResultsCreateJourney(); SkillsAssessmentWidget(); SkillsAssessmentResults(); BeginCareerExploration(); MyCareersCarousel(); EditTopCareer(); TopCareerWidget(); NearbyPlacesOccupationCard(); FollowingPage(); AtAGlance(); Personality(); Wages(); Degrees(); Certificates(); Institutions(); TopResources(); FindOpportunities(); SubmitAResource(); NearbyPlaces(); Tasks(); Technology(); Knowledge(); Skills(); WorkActivities(); Ability(); MyResourcesCarousel(); InstitutionsCarousel(); MyJourneys(); //<<<>>> MyJourneysPage(); //<<<>>> MapInteraction(); //<<<>>> MyActivityJourneys(); SurveyMetrics(); Logins(); InstitutionMetrics(); InstitutionsOfInterest(); OccupationMetrics(); OccupationsOfInterest(); //<<<>>> //Profile AccountProfile(); //Portfolio AccountPortfolio(); //Sign Out*/ SignOut(); }); function ProfileWidget() { it(': ProfileWidget, should expand profile widget, edit About Me widget, then validate Role Model and Education Widgets', async function () { var ProfileWidgetExpandCollapseIcon = element(by.css('span > .fa')); var ConnectionsLink = element(by.css('.col-md-3:nth-child(2) .jrnys_support-text')); var FollowersLink = element(by.css('.col-md-3:nth-child(3) .jrnys_support-text')); var FollowersDivTitle = element(by.css('.default-color2 > h3')); var FollowersDivSubText = element(by.css('.col-md-12:nth-child(1)')); var FollowersDivGotItButton = element(by.css('.btn-lg')); var AboutMeWidgetTitle = element(by.css('#aboutMeFull > .jrnys_lead-body-copy')); var AboutMePencil = element(by.css('#aboutMeFull .fa-pencil')); var ABoutMeInputArea = element(by.id('inputArea')); var RoleModelWidgetTitle = element(by.css('td > .jrnys_lead-body-copy')); var RoleModelNameOne = element(by.css('.inner-content-padding > .textSize:nth-child(1)')); var RoleModelNameTwo = element(by.css('.textSize:nth-child(2)')); var EducationWidgetTitle = element(by.css('#education > .jrnys_lead-body-copy')); var EducationStartEndDate = element(by.css('.col-xs-4 > .ng-binding:nth-child(1)')); var EducationSchoolName = element(by.css('.col-xs-8')); expect(await ConnectionsLink.getText()).toEqual('CONNECTIONS'); await FollowersLink.click().then(function() { browser.sleep(1000); }); expect(await FollowersDivTitle.getText()).toEqual('This feature is on its way!'); expect(await FollowersDivSubText.getText()).toEqual("Love Journeys? Then you'll love what is coming next."); await FollowersDivGotItButton.click().then(function() { browser.sleep(1000); }); await ProfileWidgetExpandCollapseIcon.click().then(function() { browser.sleep(2500); }); expect(await AboutMeWidgetTitle.getText()).toEqual('About Me'); browser.actions().mouseMove(element(by.css('.ng-scope > #aboutMeFull'))).perform().then(function() { browser.sleep(1000); }); await AboutMePencil.click().then(function() { browser.sleep(1000); }); await ABoutMeInputArea.clear().then(function() { browser.sleep(2500); }); await ABoutMeInputArea.sendKeys('This is my automated bio, there are many like it but this one is mine.'); await AboutMePencil.click().then(function() { browser.sleep(1000); }); browser.executeScript('window.scrollTo(0, 780);').then(function() { browser.sleep(2500); }); expect(await RoleModelWidgetTitle.getText()).toEqual('Role Model'); expect(await RoleModelNameOne.getText()).toEqual('Elon Musk'); expect(await RoleModelNameTwo.getText()).toEqual('Emma Watson'); expect(await EducationWidgetTitle.getText()).toEqual('Education'); expect(await EducationStartEndDate.getText()).toEqual('06/2005'); expect(await EducationSchoolName.getText()).toEqual('SUNNYSIDE ELEMENTARY'); browser.executeScript('window.scrollTo(0, 0);').then(function() { browser.sleep(2500); }); await ProfileWidgetExpandCollapseIcon.click().then(function() { browser.sleep(2500); }); browser.waitForAngular(); browser.getCurrentUrl(); }); } function MyProgressWidget() { it(': MyProgressWidget, should interact with My Progress widget, navigate to Interest Survey, toggle language to Spanish then back to English and complete survey', async function () { var MyProgressWidgetTitle = element(by.css('.yourProgressTitle')); var ProgressLevel = element(by.css('.myProgressLevel')); var ProgressWidgetExpandIcon = element(by.css('.full-width .ng-scope')); var ActionOneCompleted = element(by.css('.col-md-3:nth-child(1) > .ng-scope')); var ActionTwo = element(by.css('.col-md-3:nth-child(2) > .ng-scope')); var ActionTwoCompleted = element(by.css('.col-md-3:nth-child(2) > .ng-scope')); var ActionTwoRetake = element(by.linkText('Retake')); var ActionRetakeTitlePage = element(by.css('.jrnys_lead-body-copy')); var CancelButton = element(by.css('.btn-md')); var ActionThree = element(by.css('.col-md-3:nth-child(3) > .ng-scope')); var ActionThreeCompleted = element(by.css('.col-md-3:nth-child(3) > .ng-scope')); var ActionThreeRetake = element(by.css('.col-md-3:nth-child(3) .redo')); var ActionFour = element(by.css('.col-md-3:nth-child(4) > .ng-scope')); var ActionFourCompleted = element(by.css('.col-md-3:nth-child(4) > .ng-scope')); var ActionFourRetake = element(by.linkText('Keep Exploring')); var KeepExploringTitlePage = element(by.css('.col-sm-12')); var KeepExploringBackLink = element(by.css('.btn-primary-back-mod')); var ProgressWidgetCollapseIcon = element(by.css('.full-width > div > .ng-scope')); var InterestSurveyTitle = element(by.css('.jrnys_lead-body-copy')); var TextOne = element(by.css('.col-md-4:nth-child(1) > .ng-binding:nth-child(1)')); var TextTwo = element(by.css('.col-md-4:nth-child(2) > .ng-binding:nth-child(1)')); var TextThree = element(by.css('.col-md-4:nth-child(3) > .ng-binding:nth-child(1)')); var EspanolButton = element(by.linkText('Español')); var EnglishButton = element(by.linkText('English')); var LanguageAlertDiv = element(by.css('p:nth-child(7)')); var LanguageAlterConfirmButton = element(by.css('.confirm')); var DislikeEmoji = element(by.id('emoji_0_0')); var MehEmoji = element(by.id('emoji_0_1')); var UnsureEmoji = element(by.id('emoji_0_2')); var LikeItEmoji = element(by.id('emoji_0_3')); var LoveItEmoji = element(by.id('emoji_0_4')); var PreviousQuestion = element(by.linkText('< Previous Question')); var CancelSurveyButton = element(by.css('.btn-md')); var FirstOccupationCardTitle = element(by.xpath('//div[3]/div/div[2]/span')); var FirstOccupationCardAtAGlanceIcon = element(by.xpath('//territory-card/div/div/div/div/div/div[2]')); var FirstOccupationCardBestFitIcon = element(by.xpath('//territory-card-fit-status/div/div/div[2]')); var SecondOccupationCardTitle = element(by.xpath('//div[2]/div/career-territory-card/territory-card/div/div/div[3]/div/div[2]/span')); var ThirdOccupationCardTitle = element(by.xpath('//div[3]/div/career-territory-card/territory-card/div/div/div[3]/div/div[2]/span')); var PageTitle = element(by.css('.surveyContainer > .col-xs-offset-1')); var DashboardHeaderLink = element(by.css('.ng-scope:nth-child(1) > a > .span-navbar-hover')); expect(await MyProgressWidgetTitle.getText()).toEqual('MY PROGRESS'); expect(await ProgressLevel.getText()).toEqual('Level: Scout'); await ProgressWidgetExpandIcon.click().then(function() { browser.sleep(2500); }); expect(await ActionOneCompleted.getText()).toContain('Account Creation'); expect(await ActionOneCompleted.getText()).toContain('Completed'); expect(await ActionTwo.getText()).toContain('Interest Survey'); expect(await ActionTwoCompleted.getText()).toContain('Completed'); //Interest Survey page - validate English & Spanish text await ActionTwoRetake.click().then(function() { browser.sleep(5000); }); expect(await InterestSurveyTitle.getText()).toEqual('Interest Survey'); expect(await TextOne.getText()).toEqual("In less than 10 minutes you'll be matched to some exciting careers!"); expect(await TextTwo.getText()).toEqual('For each option, select the emotion that matches how you feel about the activity.'); expect(await TextThree.getText()).toEqual('Say how you really feel, there are no wrong answers!'); await LikeItEmoji.click(); await PreviousQuestion.click(); await EspanolButton.click(); browser.sleep(2500); expect(await LanguageAlertDiv.getText()).toEqual('Changing the language setting will result in starting the survey over again. Do you want to change languages and start at question 1?'); await LanguageAlterConfirmButton.click(); expect(await TextOne.getText()).toEqual('¡En menos de 10 minutos te conectamos con las mejores carreras para ti!'); expect(await TextTwo.getText()).toEqual('Por cada opción, selecciona la emocion que indica como te siendes sobre este tema.'); expect(await TextThree.getText()).toEqual('Indica cómo te sientes realmente, se sincero. ¡no hay respuesta incorrecta!'); await LikeItEmoji.click(); await LikeItEmoji.click(); await LikeItEmoji.click(); await CancelSurveyButton.click().then(function() { browser.sleep(5000); browser.waitForAngular(); }); browser.executeScript('window.scrollTo(0, 1405);').then(function() { browser.sleep(5000); }); expect(await FirstOccupationCardTitle.getText()).toEqual('Administrative Law Judges, Adjudicators, and Hearing Officers'); expect(await FirstOccupationCardAtAGlanceIcon.getText()).toContain('At a'); expect(await FirstOccupationCardAtAGlanceIcon.getText()).toContain('Glance'); expect(await FirstOccupationCardBestFitIcon.getText()).toContain('Interest'); expect(await FirstOccupationCardBestFitIcon.getText()).toContain('Best Fit'); expect(await SecondOccupationCardTitle.getText()).toEqual('Administrative Services Managers'); expect(await ThirdOccupationCardTitle.getText()).toEqual('Administrative Services Managers'); browser.executeScript('window.scrollTo(0, 0);').then(function() { browser.sleep(5000); }); //Take Interest Survey await ActionTwoRetake.click().then(function() { browser.sleep(5000); }); browser.waitForAngular(); await EnglishButton.click(); browser.waitForAngular(); await DislikeEmoji.click(); await MehEmoji.click(); await LoveItEmoji.click(); await LoveItEmoji.click(); await LoveItEmoji.click();//5 await LoveItEmoji.click(); await MehEmoji.click(); await UnsureEmoji.click(); await LoveItEmoji.click(); await DislikeEmoji.click();//10 await DislikeEmoji.click(); await LikeItEmoji.click(); await LikeItEmoji.click(); await LoveItEmoji.click(); await MehEmoji.click();//15 await LoveItEmoji.click(); await LoveItEmoji.click(); await LoveItEmoji.click(); await MehEmoji.click(); await DislikeEmoji.click();//20 await DislikeEmoji.click(); await LoveItEmoji.click(); await DislikeEmoji.click(); await LikeItEmoji.click(); await LikeItEmoji.click();//25 await LoveItEmoji.click(); await DislikeEmoji.click(); await LikeItEmoji.click(); await LoveItEmoji.click(); await MehEmoji.click();//30 await DislikeEmoji.click(); await MehEmoji.click(); await LoveItEmoji.click(); await LoveItEmoji.click(); await LoveItEmoji.click();//35 await LoveItEmoji.click(); await MehEmoji.click(); await LikeItEmoji.click(); await LoveItEmoji.click(); await DislikeEmoji.click();//40 await DislikeEmoji.click(); await LikeItEmoji.click(); await LikeItEmoji.click(); await LoveItEmoji.click(); await MehEmoji.click();//45 await DislikeEmoji.click(); await LoveItEmoji.click(); await LoveItEmoji.click(); await MehEmoji.click(); await DislikeEmoji.click();//50 await DislikeEmoji.click(); await MehEmoji.click(); await DislikeEmoji.click(); await LikeItEmoji.click(); await LikeItEmoji.click();//55 await LoveItEmoji.click(); await MehEmoji.click(); await LikeItEmoji.click(); await LoveItEmoji.click(); await MehEmoji.click();//60 browser.sleep(5000); expect(await PageTitle.getText()).toEqual('Interest Survey Result'); browser.sleep(5000); await DashboardHeaderLink.click().then(function() { browser.sleep(5000); }); expect(await ActionThree.getText()).toContain('Skills Assessment'); expect(await ActionThreeCompleted.getText()).toContain('Completed'); await ActionThreeRetake.click().then(function() { browser.sleep(5000); }); expect(await ActionRetakeTitlePage.getText()).toEqual('Skills Assessment'); await CancelButton.click().then(function() { browser.sleep(5000); }); expect(await ActionFour.getText()).toContain('Explore Careers'); expect(await ActionFourCompleted.getText()).toContain('Completed'); await ActionFourRetake.click().then(function() { browser.sleep(5000); }); expect(await KeepExploringTitlePage.getText()).toEqual('Career Exploration'); await KeepExploringBackLink.click().then(function() { browser.sleep(5000); }); await ProgressWidgetCollapseIcon.click().then(function() { browser.sleep(2500); }); browser.executeScript('window.scrollTo(0, 1250);').then(function() { browser.sleep(5000); }); expect(await FirstOccupationCardTitle.getText()).not.toEqual('Administrative Law Judges, Adjudicators, and Hearing Officers'); expect(await SecondOccupationCardTitle.getText()).not.toEqual('Administrative Services Managers'); expect(await ThirdOccupationCardTitle.getText()).not.toEqual('Administrative Services Managers'); browser.waitForAngular(); browser.getCurrentUrl(); }); } function InterestSurveyResultsWidget() { it(': InterestSurveyResultsWidget, should interact with Interest Survey Results widget, validate results', async function () { var InterestSurveyWidgetTitle = element(by.css('.fullHeight:nth-child(2) > div:nth-child(2) > .jrnys_lead-body-copy > div')); var InterestEditLink = element(by.css('.fa-pencil:nth-child(1)')); var EditInterestDivTitle = element(by.css('#interests .jrnys_lead-body-copy')); var EditRealisticTitle = element(by.css('.ng-scope:nth-child(1) > .row-padding-mobile .jrnys_support-tex > .ng-binding')); var EditRealisticTextBox = element(by.id('Realistic')); var EditRealisticDescription = element(by.css('.ng-scope:nth-child(1) > .row-padding-mobile .color3a-color')); var EditInvestigativeTitle = element(by.css('.ng-scope:nth-child(2) > .row-padding-mobile .jrnys_support-tex > .ng-binding')); var EditInvestigaviveTextBox = element(by.id('Investigative')); var EditInvestigativeDescription = element(by.css('.ng-scope:nth-child(2) > .row-padding-mobile .color3a-color')); var EditArtisticTitle = element(by.css('.ng-scope:nth-child(3) .jrnys_support-tex > .ng-binding')); var EditArtisticTextBox = element(by.id('Artistic')); var EditArtisticDescription = element(by.css('.ng-scope:nth-child(3) > .row-padding-mobile .color3a-color')); var EditSocialTitle = element(by.css('.ng-scope:nth-child(4) .jrnys_support-tex > .ng-binding')); var EditSocialTextBox = element(by.id('Social')); var EditSocialDescription = element(by.css('.ng-scope:nth-child(4) > .row-padding-mobile .color3a-color')); var EditEnterprisingTitle = element(by.css('.ng-scope:nth-child(5) .jrnys_support-tex > .ng-binding')); var EditEnterprisingTextBox = element(by.id('Enterprising')); var EditEnterprisingDescription = element(by.css('.ng-scope:nth-child(5) > .row-padding-mobile .color3a-color')); var EditConventionalTitle = element(by.css('.ng-scope:nth-child(6) .jrnys_support-tex > .ng-binding')); var EditConventionalTextBox = element(by.id('Conventional')); var EditConventionalDescription = element(by.css('.ng-scope:nth-child(6) .color3a-color')); var EditInterestSurveyDivSaveButton = element(by.css('.btn-info:nth-child(2)')); var TopResultTitleOne = element(by.css('.surveyResultSpacingTop > div > div > .ng-binding')); var TopResultDescriptionOne = element(by.css('.surveyResultSpacingTop .surveyResultTruncateText')); var TopResultsReadMoreLinkOne = element(by.css('.surveyResultSpacingTop > div > div:nth-child(2)')); var TopResultsReadMoreTitle = element(by.css('div:nth-child(2) > div > .ng-binding:nth-child(2)')); var TopResultsReadMoreDescriptionA = element(by.css('div:nth-child(3) > .ng-binding:nth-child(1)')); var TopResultsReadMoreDescriptionB = element(by.css('div:nth-child(4) > .ng-binding')); var TopResultsReadMoreCloseLink = element(by.css('.close')); var FirstOccupationCardTitle = element(by.xpath('//div[3]/div/div[2]/span')); var FirstOccupationCardAtAGlanceIcon = element(by.xpath('//territory-card/div/div/div/div/div/div[2]')); var FirstOccupationCardBestFitIcon = element(by.xpath('//territory-card-fit-status/div/div/div[2]')); var SecondOccupationCardTitle = element(by.xpath('//div[2]/div/career-territory-card/territory-card/div/div/div[3]/div/div[2]/span')); var ThirdOccupationCardTitle = element(by.xpath('//div[3]/div/career-territory-card/territory-card/div/div/div[3]/div/div[2]/span')); var TopResultTitleTwo = element(by.css('.surveyResultSpacing:nth-child(4) > div > div > .ng-binding')); var TopResultDescriptionTwo = element(by.css('.ng-scope:nth-child(4) .surveyResultTruncateText')); var TopResultsReadMoreLinkTwo = element(by.css('.surveyResultSpacing:nth-child(4) > div > div:nth-child(2)')); var TopResultTitleThree = element(by.css('.surveyResultSpacing:nth-child(5) > div > div > .ng-binding')); var TopResultDescriptionThree = element(by.css('.ng-scope:nth-child(5) .surveyResultTruncateText')); var TopResultsReadMoreLinkThree = element(by.css('.surveyResultSpacing:nth-child(5) > div > div:nth-child(2)')); var InterestResultsLink = element(by.css('div:nth-child(6) .fa-chart-bar')); var PageTitle = element(by.css('.surveyContainer > .col-xs-offset-1')); var TopThreeTraitsHeader = element(by.css('.fullHeight > .jrnys_lead-body-copy')); var TopThreeTraitsOne = element(by.css('.col-md-4:nth-child(1) .jrnys_lead-body-copy')); var TopThreeTraitsDescriptionOne = element(by.css('.col-md-4:nth-child(1) .ng-binding:nth-child(2)')); var TopThreeTraitsTwo = element(by.css('.col-md-4:nth-child(2) .jrnys_lead-body-copy')); var TopThreeTraitsDescriptionTwo = element(by.css('.col-md-4:nth-child(2) .ng-binding:nth-child(2)')); var TopThreeTraitsThree = element(by.css('.col-md-4:nth-child(3) .jrnys_lead-body-copy')); var TopThreeTraitsDescriptionThree = element(by.css('.col-md-4:nth-child(3) .ng-binding:nth-child(2)')); var ViewAllLink = element(by.linkText('View All')); var TopTraitsOne = element(by.css('.row:nth-child(1) > .col-md-6:nth-child(1) > .jrnys_lead-body-copy')); var TopTraitsOneDescription = element(by.css('.row:nth-child(1) > .col-md-6:nth-child(1) > .ng-binding:nth-child(2)')); var TopTraitsTwo = element(by.css('.row:nth-child(1) > .col-md-6:nth-child(2) > .jrnys_lead-body-copy')); var TopTraitsTwoDescription = element(by.css('.row:nth-child(1) > .col-md-6:nth-child(2) > .ng-binding:nth-child(2)')); var TopTraitsThree = element(by.css('.row:nth-child(2) > .col-md-6:nth-child(1) > .jrnys_lead-body-copy')); var TopTraitsThreeDescription = element(by.css('.row:nth-child(2) > .col-md-6:nth-child(1) > .ng-binding:nth-child(2)')); var TopTraitsFour = element(by.css('.row:nth-child(2) > .col-md-6:nth-child(2) > .jrnys_lead-body-copy')); var TopTraitsFourDescription = element(by.css('.row:nth-child(2) > .col-md-6:nth-child(2) > .ng-binding:nth-child(2)')); var TopTraitsFive = element(by.css('.row:nth-child(3) > .col-md-6:nth-child(1) > .jrnys_lead-body-copy')); var TopTraitsFiveDescription = element(by.css('.row:nth-child(3) > .col-md-6:nth-child(1) > .ng-binding:nth-child(2)')); var TopTraitsSix = element(by.css('.row:nth-child(3) > .col-md-6:nth-child(2) > .jrnys_lead-body-copy')); var TopTraitsSixDescription = element(by.css('.row:nth-child(3) > .col-md-6:nth-child(2) > .ng-binding:nth-child(2)')); var XCloseLink = element(by.css('.close')); var ShareResultsIcon = element(by.css('.fa-share-alt')); var ShareResultsDivTitle = element(by.css('#interestSurveyShareResult > .jrnys_lead-body-copy')); var ToTextBox = element(by.css('tr:nth-child(2) .form-control')); var FromTextBox = element(by.css('tr:nth-child(1) .form-control')); var CancelButton = element(by.css('.btn-alt-info')); var SendButton = element(by.css('tr:nth-child(7) .btn-info')); var DivAlertTitle = element(by.css('h2')); var DivAlertMessage = element(by.css('p:nth-child(7)')); var DivOKButton = element(by.css('.confirm')); /*browser.actions().mouseMove(element(by.css('#recommendedCareersCollapsed .fullHeight .jrnys_lead-body-copy'))).perform().then(function() { browser.sleep(1000); });*/ browser.executeScript('window.scrollTo(0, 610);').then(function() { browser.sleep(2500); }); await InterestEditLink.click().then(function() { browser.sleep(2500); }); expect(await EditInterestDivTitle.getText()).toEqual('Interests'); expect(await EditRealisticTitle.getText()).toEqual('Realistic'); await EditRealisticTextBox.clear(); await EditRealisticTextBox.sendKeys('21'); //await EditRealisticTextBox.sendKeys(protractor.Key.CONTROL, "a", protractor.Key.DELETE).sendKeys('21').sendKeys(protractor.Key.TAB); SAMPLE browser.sleep(1000); expect(await EditRealisticDescription.getText()).toEqual('You see things as they are and rely most heavily on your sense of sight and touch.'); expect(await EditInvestigativeTitle.getText()).toEqual('Investigative'); await EditInvestigaviveTextBox.clear(); await EditInvestigaviveTextBox.sendKeys('25'); browser.sleep(1000); expect(await EditInvestigativeDescription.getText()).toEqual('You’re a super sleuth who loves to solve math and science problems.'); expect(await EditArtisticTitle.getText()).toEqual('Artistic'); await EditArtisticTextBox.clear(); await EditArtisticTextBox.sendKeys('17'); browser.sleep(1000); expect(await EditArtisticDescription.getText()).toEqual('Your electives are full of art, drama, creative writing, and music classes.'); expect(await EditSocialTitle.getText()).toEqual('Social'); await EditSocialTextBox.clear(); await EditSocialTextBox.sendKeys('22'); browser.sleep(1000); expect(await EditSocialDescription.getText()).toEqual('You’re a friend to everyone. You like to help, interact and share information.'); expect(await EditEnterprisingTitle.getText()).toEqual('Enterprising'); await EditEnterprisingTextBox.clear(); await EditEnterprisingTextBox.sendKeys('27'); browser.sleep(1000); expect(await EditEnterprisingDescription.getText()).toEqual('You’re persuasive and could sell just about anything to anyone.'); expect(await EditConventionalTitle.getText()).toEqual('Conventional'); await EditConventionalTextBox.clear(); await EditConventionalTextBox.sendKeys('23'); browser.sleep(1000); expect(await EditConventionalDescription.getText()).toEqual('People might call you TYPE A, but they’re just jealous of your ability to get things done.'); browser.sleep(1000); await EditInterestSurveyDivSaveButton.click(); browser.sleep(1000); expect(await InterestSurveyWidgetTitle.getText()).toEqual('Interest Survey Results'); expect(await TopResultTitleOne.getText()).toEqual('Enterprising (27)'); expect(await TopResultDescriptionOne.getText()).toEqual('Enterprising personality types are adventurous, ambitious, assertive, extroverted, energetic, enthusiastic, confident, optimistic, dominant, persuasive, and motivational.'); await TopResultsReadMoreLinkOne.click().then(function() { browser.sleep(1000); }); expect(await TopResultsReadMoreTitle.getText()).toEqual('Enterprising (27)'); expect(await TopResultsReadMoreDescriptionA.getText()).toEqual('Enterprising personality types are adventurous, ambitious, assertive, extroverted, energetic, enthusiastic, confident, optimistic, dominant, persuasive, and motivational.'); expect(await TopResultsReadMoreDescriptionB.getText()).toEqual('People who are adventurous, ambitious, assertive, extroverted, energetic, enthusiastic, confident, optimistic, dominant, persuasive, and motivational. They prefer work that involves leadership, business, politics, and public speaking. They enjoy being in charge, taking risks, debating and competing.'); await TopResultsReadMoreCloseLink.click().then(function() { browser.sleep(1000); }); expect(await TopResultTitleTwo.getText()).toEqual('Investigative (25)'); expect(await TopResultDescriptionTwo.getText()).toEqual('Investigative personality types are intellectual, introspective, inquisitive, curious, methodical, rational, analytical, and logical.'); await TopResultsReadMoreLinkTwo.click().then(function() { browser.sleep(1000); }); expect(await TopResultsReadMoreTitle.getText()).toEqual('Investigative (25)'); expect(await TopResultsReadMoreDescriptionA.getText()).toEqual('Investigative personality types are intellectual, introspective, inquisitive, curious, methodical, rational, analytical, and logical.'); expect(await TopResultsReadMoreDescriptionB.getText()).toEqual('People who are intellectual, introspective, inquisitive, curious, methodical, rational, analytical, and logical. They prefer tasks that are scholarly, scientific, technical, or medical and activities that involve thought, observation, investigation, exploration, and discovery. They like to solve problems, perform experiments, and conduct research.'); await TopResultsReadMoreCloseLink.click().then(function() { browser.sleep(1000); }); expect(await TopResultTitleThree.getText()).toEqual('Conventional (23)'); expect(await TopResultDescriptionThree.getText()).toEqual('Conventional personality types are conscientious and conservative, logical, efficient, orderly, organized, thorough, and detail-oriented.'); await TopResultsReadMoreLinkThree.click().then(function() { browser.sleep(1000); }); expect(await TopResultsReadMoreTitle.getText()).toEqual('Conventional (23)'); expect(await TopResultsReadMoreDescriptionA.getText()).toEqual('Conventional personality types are conscientious and conservative, logical, efficient, orderly, organized, thorough, and detail-oriented.'); expect(await TopResultsReadMoreDescriptionB.getText()).toEqual('People who are conscientious and conservative, logical, efficient, orderly, organized, thorough, and detail-oriented. They are individuals who value precision and accuracy. They excel in practical tasks, quantitative measurements, structured environments and people who follow the rules. They prefer work that involves accounting, statistics, mathematics, numerical activities, and office settings.'); await TopResultsReadMoreCloseLink.click().then(function() { browser.sleep(1000); }); browser.executeScript('window.scrollTo(0, 1250);').then(function() { browser.sleep(5000); }); expect(await FirstOccupationCardTitle.getText()).toEqual('Administrative Law Judges, Adjudicators, and Hearing Officers'); expect(await FirstOccupationCardAtAGlanceIcon.getText()).toContain('At a'); expect(await FirstOccupationCardAtAGlanceIcon.getText()).toContain('Glance'); expect(await FirstOccupationCardBestFitIcon.getText()).toContain('Interest');//loading issue, not consistent expect(await FirstOccupationCardBestFitIcon.getText()).toContain('Best Fit');//loading issue, not consistent expect(await SecondOccupationCardTitle.getText()).toEqual('Administrative Services Managers'); expect(await ThirdOccupationCardTitle.getText()).toEqual('Administrative Services Managers'); browser.executeScript('window.scrollTo(0, 610);').then(function() { browser.sleep(2500); }); await InterestResultsLink.click().then(function() { browser.sleep(10000); }); expect(await PageTitle.getText()).toEqual('Interest Survey Result'); expect(await TopThreeTraitsHeader.getText()).toEqual('Your top 3 traits View All'); expect(await TopThreeTraitsOne.getText()).toEqual('Enterprising (27)'); expect(await TopThreeTraitsDescriptionOne.getText()).toEqual('People who are adventurous, ambitious, assertive, extroverted, energetic, enthusiastic, confident, optimistic, dominant, persuasive, and motivational. They prefer work that involves leadership, business, politics, and public speaking. They enjoy being in charge, taking risks, debating and competing.'); expect(await TopThreeTraitsTwo.getText()).toEqual('Investigative (25)'); expect(await TopThreeTraitsDescriptionTwo.getText()).toEqual('People who are intellectual, introspective, inquisitive, curious, methodical, rational, analytical, and logical. They prefer tasks that are scholarly, scientific, technical, or medical and activities that involve thought, observation, investigation, exploration, and discovery. They like to solve problems, perform experiments, and conduct research.'); expect(await TopThreeTraitsThree.getText()).toEqual('Conventional (23)'); expect(await TopThreeTraitsDescriptionThree.getText()).toEqual('People who are conscientious and conservative, logical, efficient, orderly, organized, thorough, and detail-oriented. They are individuals who value precision and accuracy. They excel in practical tasks, quantitative measurements, structured environments and people who follow the rules. They prefer work that involves accounting, statistics, mathematics, numerical activities, and office settings.'); await ViewAllLink.click().then(function() { browser.sleep(1000); }); expect(await TopTraitsOne.getText()).toEqual('Enterprising (27)'); expect(await TopTraitsOneDescription.getText()).toEqual('People who are adventurous, ambitious, assertive, extroverted, energetic, enthusiastic, confident, optimistic, dominant, persuasive, and motivational. They prefer work that involves leadership, business, politics, and public speaking. They enjoy being in charge, taking risks, debating and competing.'); expect(await TopTraitsTwo.getText()).toEqual('Investigative (25)'); expect(await TopTraitsTwoDescription.getText()).toEqual('People who are intellectual, introspective, inquisitive, curious, methodical, rational, analytical, and logical. They prefer tasks that are scholarly, scientific, technical, or medical and activities that involve thought, observation, investigation, exploration, and discovery. They like to solve problems, perform experiments, and conduct research.'); expect(await TopTraitsThree.getText()).toEqual('Conventional (23)'); expect(await TopTraitsThreeDescription.getText()).toEqual('People who are conscientious and conservative, logical, efficient, orderly, organized, thorough, and detail-oriented. They are individuals who value precision and accuracy. They excel in practical tasks, quantitative measurements, structured environments and people who follow the rules. They prefer work that involves accounting, statistics, mathematics, numerical activities, and office settings.'); expect(await TopTraitsFour.getText()).toEqual('Social (22)'); expect(await TopTraitsFourDescription.getText()).toEqual('People who are kind, generous, cooperative, patient, caring, helpful, empathetic, tactful, and friendly. They prefer tasks that involve socializing, helping others, teaching, teamwork, social interaction, relationship building, humanitarian, educational, philanthropic, interpersonal, and service-oriented work.'); expect(await TopTraitsFive.getText()).toEqual('Realistic (21)'); expect(await TopTraitsFiveDescription.getText()).toEqual('People who are independent, stable, persistent, genuine, practical, and thrifty. They tend to be no-nonsense and down-to-earth while enjoying physical, athletic, or mechanical activity. They prefer things rather than ideas or people such as being outdoors, using tools, operating machines, interacting with animals, and working with their hands. They also value the natural, concrete, and tangible.'); expect(await TopTraitsSix.getText()).toEqual('Artistic (17)'); expect(await TopTraitsSixDescription.getText()).toEqual('People who are creative, intuitive, sensitive, articulate, expressive, unstructured, original, nonconforming, and innovative who rely on feelings, imagination, inspiration and who are spontaneous and open-minded. They prefer to work with ideas, abstractions, and concepts. They also enjoy work that is literary, verbal, visual and aesthetic. They typically excel in art, music, dance, drawing, painting, sculpting, drafting, writing, drama, communicating, design, fashion.'); await XCloseLink.click().then(function() { browser.sleep(1000); }); browser.waitForAngular(); await ShareResultsIcon.click(); expect(await ShareResultsDivTitle.getText()).toEqual('Email Your Results'); await SendButton.click(); browser.sleep(1000); expect(await DivAlertTitle.getText()).toEqual('No Email'); expect(await DivAlertMessage.getText()).toEqual('Please provide at least one email address to send.'); await DivOKButton.click(); browser.waitForAngular(); await ToTextBox.sendKeys('jhuerta@edmin'); await SendButton.click(); browser.sleep(1000); expect(await DivAlertTitle.getText()).toEqual('Invalid Email'); expect(await DivAlertMessage.getText()).toEqual('jhuerta@edmin is not a valid email address.'); await DivOKButton.click(); browser.sleep(1000); await CancelButton.click(); /*browser.waitForAngular(); await ShareResultsIcon.click();//INCONSISTENT await FromTextBox.clear(); await FromTextBox.sendKeys("Juan's Automated Regression"); await ToTextBox.sendKeys('jhuerta@edmin.com'); browser.sleep(1000); await SendButton.click(); browser.sleep(2500); await expect(DivAlertTitle.getText()).toEqual('Your interest survey results are in flight!'); await expect(DivAlertMessage.getText()).toEqual('Trouble receiving the email? Have your recipient check their spam folder for an email from hi@journeysmap.com'); await DivOKButton.click().then(function(EC) { var EC = protractor.ExpectedConditions; browser.waitForAngular(); browser.getCurrentUrl(); browser.sleep(10000); browser.wait(EC.elementToBeClickable(by.css('.fa-share-alt')), 10000); browser.waitForAngular(); browser.getCurrentUrl(); });*/ browser.waitForAngular(); browser.getCurrentUrl(); }); } function InterestSurveyResultsClusters() { it(': InterestSurveyResultsClusters, should verify the Interest Survey Clusters widget and jump to learn more page', async function () { var WidgetTitle = element(by.css('.row > .jrnys_lead-body-copy')); var WidgetDescription = element(by.css('.row > span:nth-child(2)')); var SecondAtAGlanceIcon = element(by.xpath('//div[2]/div/div/career-territory-card/territory-card/div/div/div/div/div/div[2]')); var SelectButton = element(by.xpath('//territory-card-action-bar/div/button')); var PathwaysLink = element(by.linkText('Pathways')); var ClustersLink = element(by.linkText('Clusters')); var BestMatchIcon = element(by.xpath('//territory-card-fit-status/div/div/div[2]')); var AtAGlanceIcon = element(by.xpath('//territory-card/div/div/div/div/div/div[2]')); var AtAGlanceBackOfCardXCloseLink = element(by.xpath('//div[2]/div/div[2]/span')); var OccupationCardEllipsis = element(by.xpath('//div/div/div[2]/div/i')); var JourneymanIcon = element(by.xpath('//div[4]/div[2]')) var LearnMoreButton = element(by.xpath('//div/div/div/div/div[2]/div[2]')); var EC = protractor.ExpectedConditions; var JourneyInfoIcon = element(by.css('.journey-info-circle')); expect(await WidgetTitle.getText()).toEqual('Clusters'); expect(await WidgetDescription.getText()).toEqual('To start your career exploration, select a cluster below.'); browser.actions().mouseMove(SecondAtAGlanceIcon).perform().then(function() { browser.sleep(2500); }); await SelectButton.click().then(function() { browser.sleep(2500); }); expect(await WidgetTitle.getText()).toEqual('Clusters > Pathways'); expect(await WidgetDescription.getText()).toEqual('To start your career exploration, select a pathway below.'); browser.actions().mouseMove(SecondAtAGlanceIcon).perform().then(function() { browser.sleep(2500); }); await SelectButton.click().then(function() { browser.sleep(2500); }); expect(await WidgetTitle.getText()).toEqual('Clusters > Pathways > Occupations'); expect(await WidgetDescription.getText()).toEqual('To start your career exploration, click the Learn More icon of an occupation below.'); await PathwaysLink.click().then(function() { browser.sleep(2500); }); expect(await WidgetTitle.getText()).toEqual('Clusters > Pathways'); expect(await WidgetDescription.getText()).toEqual('To start your career exploration, select a pathway below.'); await ClustersLink.click().then(function() { browser.sleep(2500); }); expect(await WidgetTitle.getText()).toEqual('Clusters'); expect(await WidgetDescription.getText()).toEqual('To start your career exploration, select a cluster below.'); browser.actions().mouseMove(SecondAtAGlanceIcon).perform().then(function() { browser.sleep(2500); }); await SelectButton.click().then(function() { browser.sleep(2500); }); browser.actions().mouseMove(SecondAtAGlanceIcon).perform().then(function() { browser.sleep(2500); }); await SelectButton.click().then(function() { browser.sleep(2500); }); browser.actions().mouseMove(SecondAtAGlanceIcon).perform().then(function() { browser.sleep(2500); }); expect(await BestMatchIcon.getText()).toContain('Best Fit'); await AtAGlanceIcon.click().then(function() { browser.sleep(2500); }); await AtAGlanceBackOfCardXCloseLink.click().then(function() { browser.sleep(2500); }); await OccupationCardEllipsis.click().then(function() { browser.sleep(2500); }); await JourneymanIcon.click().then(function() { browser.sleep(5000); }); browser.waitForAngular(); browser.wait(EC.elementToBeClickable(JourneyInfoIcon)); browser.waitForAngular(); browser.getCurrentUrl(); }); } function InterestSurveyResultsCreateJourney() { it(': InterestSurveyResultsCreateJourney, should create a Journey to Top Interest Survey Result', async function () { var JourneySideBarHeaderOne = element(by.css('.side-bar-child-text > span')); var JourneyInfoIcon = element(by.css('.journey-info-circle')); var JourneyInfoDivTitle = element(by.css('.col-lg-12 > .ng-binding')); var JourneyInfoDivSubText = element(by.css('.col-lg-12:nth-child(3)')); var JourneyInfoDivXCloseLink = element(by.css('.fa-times')); var JourneyEntryPoint = element(by.css('.journeyInput')); var SelectEntryPointDropDown = element(by.css('.ng-scope:nth-child(1) > .sidebarScrollListTxt > .ng-binding')); var StartYourJourneyButton = element(by.css('.journeyStartBtnEnable')); var JourneysSideBarHeaderTwo = element(by.css('.sideBarSearchBarContainer > div:nth-child(1) > .ng-binding')); var JourneySaveIcon = element(by.css('#journeyitem0 .mapActionBarActive > .fas')); var JourneySaveDivTitle = element(by.css('h2')); var JourneySaveDivDescription = element(by.css('p:nth-child(7)')); var JourneyPersistButtonNo = element(by.css('.cancel')); var JourneyPersistButtonYes = element(by.css('.confirm')); var JourneyDetailsIcon = element(by.css('#journeyitem0 .journey-info-circle')); var ActionTitleBar = element(by.css('.ng-binding:nth-child(2)')); var Expand8thGradeSubJourney = element(by.css('.ng-scope:nth-child(4) > div > div .side-bar-journey-detail-child-txt:nth-child(5)')); var ExpandSubjectMathematicsSubJourney = element(by.css('.ng-scope:nth-child(11) .side-bar-journey-detail-child-txt:nth-child(6)')); var ExpandSubJourney = element(by.css('.ng-scope:nth-child(2) > div > div:nth-child(1) > .ng-isolate-scope .side-bar-journey-detail-child-txt:nth-child(6)')); var UpOneLevelLink = element(by.css('div:nth-child(1) > .sidebarBackTxt')); var EditJourneyLink = element(by.linkText('Edit Journey')); var WayPointOne = element(by.css('.itemWaypoint:nth-child(1) > .itemTextContainer > .ng-binding')); var WayPointTwo = element(by.css('.itemWaypoint:nth-child(2) > .itemTextContainer > .ng-binding')); var WayPointThree = element(by.css('.itemWaypoint:nth-child(3) > .itemTextContainer > .ng-binding')); var WayPointFour = element(by.css('.itemWaypoint:nth-child(4) > .itemTextContainer > .ng-binding')); var WayPointFive = element(by.css('.itemWaypoint:nth-child(5) > .itemTextContainer > .ng-binding')); var WayPointSix = element(by.css('.itemWaypoint:nth-child(6) > .itemTextContainer > .ng-binding')); var SelectWayPointTwoEllipsis = element(by.css('.itemWaypoint:nth-child(2) > .dropdown > .fas')); var DeleteLink = element(by.linkText('Delete')); var DeleteDiv = element(by.css('.modal-content > .ng-scope div:nth-child(1)')); var DeleteDivRemoveThisWaypoint = element(by.css('.btn:nth-child(3)')); var cancel = element(by.css('.fa-times-circle')); var ActionBarSaveIconOne = element(by.css('.mapActionBarActive:nth-child(2) > .fas')); var Select12thGradeWayPointEllipsis = element(by.css('.itemWaypoint:nth-child(7) > .dropdown > .fas')); var InsertAStop = element(by.linkText('Insert a Stop')); var SixthGradeWayPoint = element(by.css('.itemWaypoint:nth-child(1) > .itemTextContainer > .ng-binding:nth-child(1)')); var SeventhGradeWayPoint = element(by.css('.itemWaypoint:nth-child(2) > .itemTextContainer > .ng-binding:nth-child(1)')); var EightGradeWayPoint = element(by.css('.itemWaypoint:nth-child(3) > .itemTextContainer > .ng-binding:nth-child(1)')); var NinethGradeWayPoint = element(by.css('.itemWaypoint:nth-child(4) > .itemTextContainer > .ng-binding:nth-child(1)')); var TenthGradeWayPoint = element(by.css('.itemWaypoint:nth-child(5) > .itemTextContainer > .ng-binding:nth-child(1)')); var EleventhGradeWayPoint = element(by.css('.itemWaypoint:nth-child(6) > .itemTextContainer > .ng-binding:nth-child(1)')); var TwelvethGradeWayPoint = element(by.css('.itemWaypoint:nth-child(7) > .itemTextContainer > .ng-binding:nth-child(1)')); var ThirteenthWayPoint = element(by.css('.itemWaypoint:nth-child(8) > .itemTextContainer > .ng-binding:nth-child(1)')); var FourteenthWayPoint = element(by.css('.itemWaypoint:nth-child(9) > .itemTextContainer > .ng-binding:nth-child(1)')); var EditSearchText = element(by.css('.sidebarNoResults:nth-child(1)')); var MapSearchTextBox = element(by.css('#searchBox')); var MagnifyingGlassIcon = element(by.css('.glyphicon-search')); var ActionTitleBarTwo = element(by.css('.sideBarSearchBarContainer > div:nth-child(1) > .ng-binding')); var CertificationResultsTab = element(by.css('#tab-item-6 > .ng-binding'));//#tab-item-2 > .ng-binding')); var ThirdResultViewOnMapIconIcon = element(by.css('#tab-content-6 #searchitem2 div:nth-child(6) > .fas'));//#tab-content-2 #searchitem2 div:nth-child(6) > .fas')); var MapZoomInIcon = element(by.css('.glyphicon-plus')); var ThirdResultAddIcon = element(by.css('#tab-content-6 #searchitem2 div:nth-child(5) > #mapActionBarJourneyIcon'));//#tab-content-2 #searchitem2 div:nth-child(5) > #mapActionBarJourneyIcon')); var FifteenthWayPoint = element(by.css('.itemWaypoint:nth-child(10) > .itemTextContainer > .ng-binding')); var ActionBarSaveIconTwo = element(by.css('.fa-save')); var MapZoomOutIcon = element(by.css('.glyphicon-minus')); var SelectCollegeWayPointEllipsis = element(by.css('.itemWaypoint:nth-child(9) > .dropdown > .fas')); var ReOrderLink = element(by.linkText('Re-order')); var GrabCollegeWayPoint = element(by.css('.selectedWaypoint > .itemTextContainer > .ng-binding:nth-child(1)')); var DashboardHeaderLink = element(by.css('.ng-scope:nth-child(1) > a > .span-navbar-hover')); //short cut to create journey var Results = element(by.css('div:nth-child(6) .fa-chart-bar')); var SecondAtAGlanceIcon = element(by.xpath('//div[2]/div/div/career-territory-card/territory-card/div/div/div/div/div/div[2]')); var Select = element(by.xpath('//territory-card-action-bar/div/button')); var Journey = element(by.xpath('//action-journey/span')); await Results.click().then(function() { browser.sleep(5000); }); browser.actions().mouseMove(SecondAtAGlanceIcon).perform().then(function() { browser.sleep(2500); }); await Select.click().then(function() { browser.sleep(5000); }); browser.actions().mouseMove(SecondAtAGlanceIcon).perform().then(function() { browser.sleep(2500); }); await Select.click().then(function() { browser.sleep(5000); }); browser.actions().mouseMove(SecondAtAGlanceIcon).perform().then(function() { browser.sleep(2500); }); await Journey.click().then(function() { browser.sleep(5000); });//end*/ /*short cut to retrieve journey var MyJourneys = element(by.css('#nbMyJourneys .span-navbar-hover')); var Journey = element(by.xpath('//div[2]/div/div/span')); var ViewOnMap = element(by.css('.col-md-4 > .btn-info')); await MyJourneys.click().then(function() { browser.sleep(2500); }); await Journey.click().then(function() { browser.sleep(2500); }); await ViewOnMap.click().then(function() { browser.sleep(2500); });//end - hide upto row 829*/ expect(await JourneySideBarHeaderOne.getText()).toEqual('Create Your Journey'); await JourneyInfoIcon.click().then(function() { browser.sleep(1000); }); expect(await JourneyInfoDivTitle.getText()).toEqual('Create Your Journey'); expect(await JourneyInfoDivSubText.getText()).toEqual('A Journey is your driving direction. Enter a starting location, such as your current grade, as well as the destination you are trying to reach, like an occupation. From there we will provide you with possible pathways to reach your goal.'); await JourneyInfoDivXCloseLink.click().then(function() { browser.sleep(1000); }); await JourneyEntryPoint.click(); browser.waitForAngular(); await JourneyEntryPoint.sendKeys('6'); await SelectEntryPointDropDown.click(); browser.waitForAngular(); await StartYourJourneyButton.click(); browser.waitForAngular(); expect(await JourneysSideBarHeaderTwo.getText()).toEqual('Journey Search Results'); browser.actions().mouseMove(JourneySaveIcon).perform().then(function() { browser.sleep(1000); }); await JourneySaveIcon.click().then(function() { browser.sleep(5000); }); expect(await JourneySaveDivTitle.getText()).toEqual('Journey saved!'); expect(await JourneySaveDivDescription.getText()).toEqual('Would you like this journey to persist on the map?'); await JourneyPersistButtonYes.click().then(function() { browser.sleep(2500); }); await JourneyDetailsIcon.click().then(function() { browser.sleep(5000); }); expect(await ActionTitleBar.getText()).toEqual('Journey Search Results'); await Expand8thGradeSubJourney.click().then(function() { browser.sleep(5000); }); browser.actions().mouseMove(element(by.css('.ng-scope:nth-child(5) div:nth-child(2) .side-bar-journey-detail-child-txt:nth-child(5)'))).perform().then(function() { browser.sleep(2500); }); await ExpandSubjectMathematicsSubJourney.click().then(function() { browser.sleep(5000); }); browser.actions().mouseMove(JourneyDetailsIcon).perform().then(function() { browser.sleep(2500); }); await ExpandSubJourney.click().then(function() { browser.sleep(5000); }); await ExpandSubJourney.click().then(function() { browser.sleep(5000); }); await ExpandSubJourney.click().then(function() { browser.sleep(5000); }); await UpOneLevelLink.click().then(function() { browser.sleep(5000); }); await UpOneLevelLink.click().then(function() { browser.sleep(5000); }); await EditJourneyLink.click().then(function() { browser.sleep(2500) }); expect(await ActionTitleBar.getText()).toEqual('Journey Edit'); expect(await WayPointOne.getText()).toEqual('Geometry'); expect(await WayPointTwo.getText()).toEqual('Expressions and Equations'); expect(await WayPointThree.getText()).toEqual('Mathematical Practices'); expect(await WayPointFour.getText()).toEqual('The Number System'); expect(await WayPointFive.getText()).toEqual('Statistics and Probability'); expect(await WayPointSix.getText()).toEqual('Functions'); await SelectWayPointTwoEllipsis.click().then(function() { browser.sleep(2500); }); browser.actions().mouseMove(DeleteLink).perform().then(function() { browser.sleep(1000); }); await DeleteLink.click().then(function() { browser.sleep(2500); }); expect(await DeleteDiv.getText()).toEqual('Are you sure you want to remove Expressions and Equations from this journey?'); await DeleteDivRemoveThisWaypoint.click().then(function() { browser.sleep(2500); }); expect(await ActionTitleBar.getText()).toEqual('Journey Edit'); expect(await WayPointOne.getText()).toEqual('Geometry'); expect(await WayPointTwo.getText()).toEqual('Mathematical Practices'); expect(await WayPointThree.getText()).toEqual('The Number System'); expect(await WayPointFour.getText()).toEqual('Statistics and Probability'); expect(await WayPointFive.getText()).toEqual('Functions'); await ActionBarSaveIconOne.click().then(function() { browser.sleep(2500); }); expect(await ActionTitleBar.getText()).toEqual('Journey Search Results'); await UpOneLevelLink.click().then(function() { browser.sleep(5000); }); await UpOneLevelLink.click().then(function() { browser.sleep(5000); }); await EditJourneyLink.click().then(function() { browser.sleep(2500) }); expect(await ActionTitleBar.getText()).toEqual('Journey Edit'); expect(await SixthGradeWayPoint.getText()).toEqual('6'); expect(await SeventhGradeWayPoint.getText()).toEqual('7'); expect(await EightGradeWayPoint.getText()).toEqual('8'); expect(await NinethGradeWayPoint.getText()).toEqual('9'); expect(await TenthGradeWayPoint.getText()).toEqual('10'); expect(await EleventhGradeWayPoint.getText()).toEqual('11'); browser.actions().mouseMove(FourteenthWayPoint).perform().then(function() { browser.sleep(1000); }); expect(await TwelvethGradeWayPoint.getText()).toEqual('12'); expect(await ThirteenthWayPoint.getText()).toEqual('Business Administration B.A./B.S.'); expect(await FourteenthWayPoint.getText()).toEqual('Administrative Services Managers'); await Select12thGradeWayPointEllipsis.click().then(function() { browser.sleep(2500) }); browser.actions().mouseMove(InsertAStop).perform().then(function() { browser.sleep(1000); }); await InsertAStop.click().then(function() { browser.sleep(2500); }); expect(await ActionTitleBar.getText()).toEqual('Journey Add Stop'); expect(await EditSearchText.getText()).toEqual('Use the search bar above to find a stop to add to your journey, or pick one from the map.'); await MapSearchTextBox.sendKeys('Engineer').then(function() { browser.sleep(2500); }); await MagnifyingGlassIcon.click().then(function() { browser.sleep(5000); }); expect(await ActionTitleBarTwo.getText()).toEqual('Search Results'); await CertificationResultsTab.click().then(function() { browser.sleep(5000); }); browser.actions().mouseMove(ThirdResultViewOnMapIconIcon).perform().then(function() { browser.sleep(1000); }); await ThirdResultViewOnMapIconIcon.click().then(function() { browser.sleep(5000); }); await MapZoomInIcon.click().then(function() { browser.sleep(2500); }); await MapZoomInIcon.click().then(function() { browser.sleep(2500); }); await ThirdResultAddIcon.click().then(function() { browser.sleep(2500); }); expect(await SixthGradeWayPoint.getText()).toEqual('6'); expect(await SeventhGradeWayPoint.getText()).toEqual('7'); expect(await EightGradeWayPoint.getText()).toEqual('8'); expect(await NinethGradeWayPoint.getText()).toEqual('9'); expect(await TenthGradeWayPoint.getText()).toEqual('10'); expect(await EleventhGradeWayPoint.getText()).toEqual('11'); browser.actions().mouseMove(FifteenthWayPoint).perform().then(function() { browser.sleep(1000); }); expect(await TwelvethGradeWayPoint.getText()).toEqual('12'); expect(await ThirteenthWayPoint.getText()).toEqual('National Chief Engineer/Assistant Engineer UFIV'); expect(await FourteenthWayPoint.getText()).toEqual('Business Administration B.A./B.S.'); expect(await FifteenthWayPoint.getText()).toEqual('Administrative Services Managers'); await ActionBarSaveIconTwo.click().then(function() { browser.sleep(2500); }); await MapZoomOutIcon.click(); await MapZoomOutIcon.click(); await MapZoomOutIcon.click(); await MapZoomOutIcon.click(); await MapZoomOutIcon.click(); await MapZoomOutIcon.click(); await MapZoomOutIcon.click(); await MapZoomOutIcon.click().then(function() { browser.sleep(1000) }); browser.actions().mouseMove(FifteenthWayPoint).perform().then(function() { browser.sleep(1000); }); await SelectCollegeWayPointEllipsis.click().then(function() { browser.sleep(2500) }); await ReOrderLink.click().then(function() { browser.sleep(2500) }); browser.actions().dragAndDrop(GrabCollegeWayPoint, ThirteenthWayPoint).mouseUp().perform(); browser.sleep(2500) expect(await SixthGradeWayPoint.getText()).toEqual('6'); expect(await SeventhGradeWayPoint.getText()).toEqual('7'); expect(await EightGradeWayPoint.getText()).toEqual('8'); expect(await NinethGradeWayPoint.getText()).toEqual('9'); expect(await TenthGradeWayPoint.getText()).toEqual('10'); expect(await EleventhGradeWayPoint.getText()).toEqual('11'); browser.actions().mouseMove(FifteenthWayPoint).perform().then(function() { browser.sleep(1000); }); expect(await TwelvethGradeWayPoint.getText()).toEqual('12'); expect(await ThirteenthWayPoint.getText()).toEqual('Business Administration B.A./B.S.'); expect(await FourteenthWayPoint.getText()).toEqual('National Chief Engineer/Assistant Engineer UFIV'); expect(await FifteenthWayPoint.getText()).toEqual('Administrative Services Managers'); await ActionBarSaveIconOne.click().then(function() { browser.sleep(2500); }); await DashboardHeaderLink.click().then(function() { browser.sleep(5000); }); browser.waitForAngular(); browser.getCurrentUrl(); }); } function SkillsAssessmentWidget() { it(': SkillsAssessmentWidget, should take Skills Assessment', async function () { var InterestRetakeLink = element(by.css('div:nth-child(2) > .fa-tasks')); var SkillsAssessmentPageTitle = element(by.css('.jrnys_lead-body-copy')); var SkillsQuestion = element(by.css('.questionText > .ng-binding:nth-child(1)')); var SkillsSubQuestion = element(by.css('.questionText > .ng-binding:nth-child(2)')); var BeginnerIcon = element(by.id('emoji_0_0')); var BasicIcon = element(by.id('emoji_0_1')); var SkilledIcon = element(by.id('emoji_0_2')); var AdvancedIcon = element(by.id('emoji_0_3')); var ExpertIcon = element(by.id('emoji_0_4')); var PreviousQuestion = element(by.linkText('< Previous Question')); var SkillsAssessmentResultPageTitle = element(by.css('.surveyContainer > .col-xs-offset-1')); var YourTop3SkillsWidgetTitle = element(by.css('.fullHeight > .jrnys_lead-body-copy')); var FitHeader = element(by.css('.active .jrnys_lead-body-copy')); var BestFitHeaderOne = element(by.css('.item:nth-child(1) .ng-binding:nth-child(2) > .ng-binding')); var DescriptionOne = element(by.css('.active .ng-binding:nth-child(2)')); var BestFitHeaderTwo = element(by.css('.item:nth-child(1) .ng-binding:nth-child(3) > .ng-binding')); var DescriptionTwo = element(by.css('.active .ng-binding:nth-child(3)')); var BestFitHeaderThree = element(by.css('.item:nth-child(1) .ng-binding:nth-child(4) > .ng-binding')); var DescriptionThree = element(by.css('.active .ng-binding:nth-child(4)')); var CarrouselRightScroll = element(by.css('.glyphicon-chevron-right')); var GreatFitHeaderOne = element(by.css('.item:nth-child(2) .ng-binding:nth-child(2) > .ng-binding')); var GreatFitHeaderTwo = element(by.css('.item:nth-child(2) .ng-binding:nth-child(3) > .ng-binding')); var GreatFitHeaderThree = element(by.css('.item:nth-child(2) .ng-binding:nth-child(4) > .ng-binding')); var GoodFitHeaderOne = element(by.css('.item:nth-child(3) .ng-binding:nth-child(2) > .ng-binding')); var GoodFitHeaderTwo = element(by.css('.item:nth-child(3) .ng-binding:nth-child(3) > .ng-binding')); var GoodFitHeaderThree = element(by.css('.item:nth-child(3) .ng-binding:nth-child(4) > .ng-binding')); var DashboardHeaderLink = element(by.css('.ng-scope:nth-child(1) > a > .span-navbar-hover')); /*browser.actions().mouseMove(element(by.css('#recommendedCareersCollapsed .fullHeight .jrnys_lead-body-copy'))).perform().then(function() { browser.sleep(1000); });*/ browser.executeScript('window.scrollTo(0, 610);').then(function() { browser.sleep(2500); }); await InterestRetakeLink.click().then(function() { browser.sleep(5000); }); expect(await SkillsAssessmentPageTitle.getText()).toEqual('Skills Assessment'); expect(await SkillsQuestion.getText()).toEqual('Administration and Management'); expect(await SkillsSubQuestion.getText()).toEqual('How much do you know about business planning and leadership?'); await SkilledIcon.click(); expect(await SkillsQuestion.getText()).toEqual('Biology'); expect(await SkillsSubQuestion.getText()).toEqual('How much do you know about plant, animal and cell functions?'); await BeginnerIcon.click(); expect(await SkillsQuestion.getText()).toEqual('Body Coordination'); expect(await SkillsSubQuestion.getText()).toEqual('How well can you coordinate moving your arms, legs, and torso together?'); await BeginnerIcon.click(); expect(await SkillsQuestion.getText()).toEqual('Building and Construction'); expect(await SkillsSubQuestion.getText()).toEqual('How much do you know about construction materials, methods, and tools?'); await AdvancedIcon.click(); expect(await SkillsQuestion.getText()).toEqual('Chemistry'); expect(await SkillsSubQuestion.getText()).toEqual('How well do you know chemistry?'); await SkilledIcon.click(); expect(await SkillsQuestion.getText()).toEqual('Clerical'); expect(await SkillsSubQuestion.getText()).toEqual('How much do you know about administrative tasks and processes?'); await BasicIcon.click(); expect(await SkillsQuestion.getText()).toEqual('Complex Problem Solving'); expect(await SkillsSubQuestion.getText()).toEqual('How good are you at figuring out the best way to solve a problem?'); await BasicIcon.click(); expect(await SkillsQuestion.getText()).toEqual('Computers and Electronics'); expect(await SkillsSubQuestion.getText()).toEqual('How effective are you at using electronic equipment?'); await BasicIcon.click(); expect(await SkillsQuestion.getText()).toEqual('Customer and Personal Service'); expect(await SkillsSubQuestion.getText()).toEqual('How well do you know how to handle customer needs and resolve service problems?'); await BasicIcon.click(); expect(await SkillsQuestion.getText()).toEqual('Economics and Accounting'); expect(await SkillsSubQuestion.getText()).toEqual('How well do you know banking and financial systems?'); await AdvancedIcon.click(); browser.sleep(2500); await PreviousQuestion.click(); browser.sleep(2500); expect(await SkillsQuestion.getText()).toEqual('Economics and Accounting'); expect(await SkillsSubQuestion.getText()).toEqual('How well do you know banking and financial systems?'); await BasicIcon.click(); expect(await SkillsQuestion.getText()).toEqual('Fine Arts'); expect(await SkillsSubQuestion.getText()).toEqual('How well do you know the theory and techniques of an art form such as music, painting, drama, or other?'); await BeginnerIcon.click(); expect(await SkillsQuestion.getText()).toEqual('Foreign Language'); expect(await SkillsSubQuestion.getText()).toEqual('How well do you know a foreign language?'); await AdvancedIcon.click(); expect(await SkillsQuestion.getText()).toEqual('Helping People'); expect(await SkillsSubQuestion.getText()).toEqual('How good are you at understanding how to help people?'); await BeginnerIcon.click(); expect(await SkillsQuestion.getText()).toEqual('Instructing'); expect(await SkillsSubQuestion.getText()).toEqual('How skilled are you at teaching people how to do something?'); await BeginnerIcon.click(); expect(await SkillsQuestion.getText()).toEqual('Management of Financial Resources'); expect(await SkillsSubQuestion.getText()).toEqual('What level of financial decision-maker are you?'); await ExpertIcon.click(); expect(await SkillsQuestion.getText()).toEqual('Mathematics'); expect(await SkillsSubQuestion.getText()).toEqual('What is your level of math skill?'); await SkilledIcon.click(); expect(await SkillsQuestion.getText()).toEqual('Mechanical'); expect(await SkillsSubQuestion.getText()).toEqual('How well can you design, use, repair, and maintain machines?'); await BasicIcon.click(); expect(await SkillsQuestion.getText()).toEqual('Medicine and Dentistry'); expect(await SkillsSubQuestion.getText()).toEqual('How well do you know how to provide health care?'); await BasicIcon.click(); expect(await SkillsQuestion.getText()).toEqual('Memorization'); expect(await SkillsSubQuestion.getText()).toEqual('How good is your memory?'); await BeginnerIcon.click(); expect(await SkillsQuestion.getText()).toEqual('Monitoring'); expect(await SkillsSubQuestion.getText()).toEqual('How well can you assess your or others’ work?'); await BeginnerIcon.click(); expect(await SkillsQuestion.getText()).toEqual('Negotiation'); expect(await SkillsSubQuestion.getText()).toEqual('How well do you persuade others to see different points of view or compromise?'); await BeginnerIcon.click(); expect(await SkillsQuestion.getText()).toEqual('Operations Analysis'); expect(await SkillsSubQuestion.getText()).toEqual('How well can you analyze needs and requirements, then make a plan that meets them?'); await AdvancedIcon.click(); expect(await SkillsQuestion.getText()).toEqual('Personnel and Human Resources'); expect(await SkillsSubQuestion.getText()).toEqual('How well do you know the principles and procedures for recruiting, hiring, and training employees?'); await AdvancedIcon.click(); expect(await SkillsQuestion.getText()).toEqual('Production and Processing'); expect(await SkillsSubQuestion.getText()).toEqual('How well can you oversee manufacturing and distribution processes?'); await BeginnerIcon.click(); expect(await SkillsQuestion.getText()).toEqual('Programming'); expect(await SkillsSubQuestion.getText()).toEqual('How well can you write computer programs?'); await AdvancedIcon.click(); expect(await SkillsQuestion.getText()).toEqual('Psychology'); expect(await SkillsSubQuestion.getText()).toEqual('How well do you know the methods of research, assessment, and treatment of human behavior?'); await SkilledIcon.click(); expect(await SkillsQuestion.getText()).toEqual('Public Safety and Security'); expect(await SkillsSubQuestion.getText()).toEqual('How well do you know the equipment, policies, procedures, and strategies used to promote security operations?'); await SkilledIcon.click(); expect(await SkillsQuestion.getText()).toEqual('Quality Control Analysis'); expect(await SkillsSubQuestion.getText()).toEqual('How well can you develop and use testing processes?'); await AdvancedIcon.click(); expect(await SkillsQuestion.getText()).toEqual('Repairing'); expect(await SkillsSubQuestion.getText()).toEqual('How well can you repair machines or systems using the needed tools?'); await BeginnerIcon.click(); expect(await SkillsQuestion.getText()).toEqual('Sales and Marketing'); expect(await SkillsSubQuestion.getText()).toEqual('How well can you perform marketing strategies and tactics?'); await BeginnerIcon.click(); expect(await SkillsQuestion.getText()).toEqual('Science'); expect(await SkillsSubQuestion.getText()).toEqual('How well can you use scientific rules and methods to solve problems?'); await BeginnerIcon.click(); expect(await SkillsQuestion.getText()).toEqual('Sociology and Anthropology'); expect(await SkillsSubQuestion.getText()).toEqual('How well do you know the theories of group behavior, societal trends and influences, and human culture?'); await BeginnerIcon.click(); expect(await SkillsQuestion.getText()).toEqual('Speaking'); expect(await SkillsSubQuestion.getText()).toEqual('How well do you convey information when you speak?'); await SkilledIcon.click(); expect(await SkillsQuestion.getText()).toEqual('Systems Analysis'); expect(await SkillsSubQuestion.getText()).toEqual('How well can you analyze systems?'); await BasicIcon.click(); expect(await SkillsQuestion.getText()).toEqual('Teaching and Course Design'); expect(await SkillsSubQuestion.getText()).toEqual('How well do you know the principles and methods of instruction?'); await BasicIcon.click(); expect(await SkillsQuestion.getText()).toEqual('Telecommunications'); expect(await SkillsSubQuestion.getText()).toEqual('How well do you understand telecom systems?'); await BasicIcon.click(); expect(await SkillsQuestion.getText()).toEqual('Therapy and Counseling'); expect(await SkillsSubQuestion.getText()).toEqual('How well do you know the principles and methods used in counseling?'); await BasicIcon.click(); expect(await SkillsQuestion.getText()).toEqual('Time Management'); expect(await SkillsSubQuestion.getText()).toEqual("How well do you manage your and others' time?"); await BasicIcon.click(); expect(await SkillsQuestion.getText()).toEqual('Troubleshooting'); expect(await SkillsSubQuestion.getText()).toEqual('How well can you identify and fix problems in machines or technology?'); await BeginnerIcon.click(); expect(await SkillsQuestion.getText()).toEqual('Writing'); expect(await SkillsSubQuestion.getText()).toEqual("How well does your writing effectively communicate to an audience's particular need?"); await BeginnerIcon.click(); browser.sleep(10000); expect(await SkillsAssessmentResultPageTitle.getText()).toEqual('Skills Assessment Result'); expect(await YourTop3SkillsWidgetTitle.getText()).toEqual('Your top 3 skills View All'); expect(await FitHeader.getText()).toEqual('BEST FIT'); expect(await BestFitHeaderOne.getText()).toEqual('Building and Construction'); expect(await DescriptionOne.getText()).toContain('Knowledge of materials, methods, and the tools involved in the construction or repair of houses, buildings, or other structures such as highways and roads.'); expect(await BestFitHeaderTwo.getText()).toEqual('Foreign Language'); expect(await DescriptionTwo.getText()).toContain('Knowledge of the structure and content of a foreign (non-English) language including the meaning and spelling of words, rules of composition and grammar, and pronunciation.'); expect(await BestFitHeaderThree.getText()).toEqual('Management of Financial Resources'); expect(await DescriptionThree.getText()).toContain('Making spending decisions and keeping track of what is spent.'); await CarrouselRightScroll.click(); browser.sleep(2500); expect(await FitHeader.getText()).toEqual('GREAT FIT'); expect(await GreatFitHeaderOne.getText()).toEqual('Administration and Management'); expect(await DescriptionOne.getText()).toContain('Knowledge of business and management principles involved in strategic planning, resource allocation, human resources modeling, leadership technique, production methods, and coordination of people and resources.'); expect(await GreatFitHeaderTwo.getText()).toEqual('Chemistry'); expect(await DescriptionTwo.getText()).toContain('Knowledge of the chemical composition, structure, and properties of substances and of the chemical processes and transformations that they undergo. This includes uses of chemicals and their interactions, danger signs, production techniques, and disposal methods.'); expect(await GreatFitHeaderThree.getText()).toEqual('Mathematics'); expect(await DescriptionThree.getText()).toContain('Using math to solve problems.'); await CarrouselRightScroll.click(); browser.sleep(2500); expect(await FitHeader.getText()).toEqual('GOOD FIT'); expect(await GoodFitHeaderOne.getText()).toEqual('Biology'); expect(await DescriptionOne.getText()).toContain('Knowledge of plant and animal organisms, their tissues, cells, functions, interdependencies, and interactions with each other and the environment.'); expect(await GoodFitHeaderTwo.getText()).toEqual('Body Coordination'); expect(await DescriptionTwo.getText()).toContain('Moving your arms, legs, and mid-section together while your whole body is moving.'); expect(await GoodFitHeaderThree.getText()).toEqual('Clerical'); expect(await DescriptionThree.getText()).toContain('Knowledge of administrative and clerical procedures and systems such as word processing, managing files and records, stenography and transcription, designing forms, and other office procedures and terminology.'); await CarrouselRightScroll.click(); browser.sleep(2500); expect(await FitHeader.getText()).toEqual('BEST FIT'); await DashboardHeaderLink.click().then(function() { browser.sleep(5000); }); browser.waitForAngular(); browser.getCurrentUrl(); }); } function SkillsAssessmentResults() { it(': SkillsAssessmentResults, should interact with Skills Assessment widget and validate results', async function () { var SkillsAssessmentWidgetTitle = element(by.css('.bigScreenHeader')); var BestFitHeader = element(by.css('div:nth-child(2) > b')); var SkillsResultsOneTitle = element(by.css('.ng-scope:nth-child(4) > div > div > .ng-binding:nth-child(1)')); var SkillsResultsOneDescription = element(by.css('.ng-scope:nth-child(4) .skillProfilerResultTruncateText')); var SkillsResultsTwoTitle = element(by.css('.skillProfilerResultsSpacing:nth-child(5) > div > div > .ng-binding')); var SkillsResultsTwoDescription = element(by.css('.ng-scope:nth-child(5) .skillProfilerResultTruncateText')); var SkillsResultsThreeTitle = element(by.css('.ng-scope:nth-child(6) > div > div > .ng-binding')); var SkillsResultsThreeDescription = element(by.css('.ng-scope:nth-child(6) .skillProfilerResultTruncateText')); var SkillsResultsLink = element(by.css('div:nth-child(7) .fa-chart-bar')); var SkillsAssessmentResultPageTitle = element(by.css('.surveyContainer > .col-xs-offset-1')); var ViewAllLink = element(by.linkText('View All')); var BestFitDivHeader = element(by.css('.row:nth-child(1) > .col-xs-10 > .jrnys_lead-body-copy')); var DivHeaderOne = element(by.css('.row:nth-child(1) > .col-xs-10 > .ng-binding:nth-child(2) > .ng-binding')); var DivDescriptionOne = element(by.css('.row:nth-child(1) > .col-xs-10 > .ng-binding:nth-child(2)')); var DivHeaderTwo = element(by.css('.row:nth-child(1) > .col-xs-10 > .ng-binding:nth-child(3) > .ng-binding')); var DivDescriptionTwo = element(by.css('.row:nth-child(1) > .col-xs-10 > .ng-binding:nth-child(3)')); var DivHeaderThree = element(by.css('.row:nth-child(1) > .col-xs-10 > .ng-binding:nth-child(4) > .ng-binding')); var DivDescriptionThree = element(by.css('.row:nth-child(1) > .col-xs-10 > .ng-binding:nth-child(4)')); var DivHeaderFour = element(by.css('.row:nth-child(1) > .col-xs-10 > .ng-binding:nth-child(5) > .ng-binding')); var DivDescriptionFour = element(by.css('.row:nth-child(1) .ng-binding:nth-child(5)')); var DivHeaderFive = element(by.css('.row:nth-child(1) .ng-binding:nth-child(6) > .ng-binding')); var DivDescriptionFive = element(by.css('.row:nth-child(1) .ng-binding:nth-child(6)')); var DivHeaderSix = element(by.css('.row:nth-child(1) .ng-binding:nth-child(7) > .ng-binding')); var DivDescriptionSix = element(by.css('.row:nth-child(1) .ng-binding:nth-child(7)')); var DivHeaderSeven = element(by.css('.row:nth-child(1) .ng-binding:nth-child(8) > .ng-binding')); var DivDescriptionSeven = element(by.css('.row:nth-child(1) .ng-binding:nth-child(8)')); var BestFitDivXCloseLink = element(by.css('.close')); var SkillsResultCardOne = element(by.xpath('//div[2]/span')); var SkillsResultCardTwo = element(by.xpath('//div[2]/div/career-territory-card/territory-card/div/div/div[3]/div/div[2]/span')); var SkillsResultCardThree = element(by.xpath('//div[3]/div/career-territory-card/territory-card/div/div/div[3]/div/div[2]/span')); var SkillsResultCardFour = element(by.xpath('//div[2]/div/div/career-territory-card/territory-card/div/div/div[3]/div/div[2]/span')); var SkillsResultCardFive = element(by.xpath('//div[2]/div[2]/div/career-territory-card/territory-card/div/div/div[3]/div/div[2]/span')); var SkillsResultCardSix = element(by.xpath('//div[2]/div[3]/div/career-territory-card/territory-card/div/div/div[3]/div/div[2]/span')); var DashboardHeaderLink = element(by.css('.ng-scope:nth-child(1) > a > .span-navbar-hover')); /*browser.actions().mouseMove(element(by.css('#recommendedCareersCollapsed .fullHeight .jrnys_lead-body-copy'))).perform().then(function() { browser.sleep(1000); });*/ browser.executeScript('window.scrollTo(0, 610);').then(function() { browser.sleep(5000); }); expect(await SkillsAssessmentWidgetTitle.getText()).toEqual('Skills Assessment Results'); expect(await BestFitHeader.getText()).toEqual('BEST FIT'); expect(await SkillsResultsOneTitle.getText()).toEqual('Building and Construction'); expect(await SkillsResultsOneDescription.getText()).toEqual('Knowledge of materials, methods, and the tools involved in the construction or repair of houses, buildings, or other structures such as highways and roads.'); expect(await SkillsResultsTwoTitle.getText()).toEqual('Foreign Language'); expect(await SkillsResultsTwoDescription.getText()).toEqual('Knowledge of the structure and content of a foreign (non-English) language including the meaning and spelling of words, rules of composition and grammar, and pronunciation.'); expect(await SkillsResultsThreeTitle.getText()).toEqual('Management of Financial Resources'); expect(await SkillsResultsThreeDescription.getText()).toEqual('Making spending decisions and keeping track of what is spent.'); await SkillsResultsLink.click().then(function() { browser.sleep(5000); }); expect(await SkillsAssessmentResultPageTitle.getText()).toEqual('Skills Assessment Result'); await ViewAllLink.click().then(function() { browser.sleep(1000); }); expect(await BestFitDivHeader.getText()).toEqual('BEST FIT'); expect(await DivHeaderOne.getText()).toEqual('Building and Construction'); expect(await DivDescriptionOne.getText()).toContain('Knowledge of materials, methods, and the tools involved in the construction or repair of houses, buildings, or other structures such as highways and roads.'); expect(await DivHeaderTwo.getText()).toEqual('Foreign Language'); expect(await DivDescriptionTwo.getText()).toContain('Knowledge of the structure and content of a foreign (non-English) language including the meaning and spelling of words, rules of composition and grammar, and pronunciation.'); expect(await DivHeaderThree.getText()).toEqual('Management of Financial Resources'); expect(await DivDescriptionThree.getText()).toContain('Making spending decisions and keeping track of what is spent.'); expect(await DivHeaderFour.getText()).toEqual('Operations Analysis'); expect(await DivDescriptionFour.getText()).toContain('Figuring out what a product or service needs to be able to do.'); expect(await DivHeaderFive.getText()).toEqual('Personnel and Human Resources'); expect(await DivDescriptionFive.getText()).toContain('Knowledge of principles and procedures for personnel recruitment, selection, training, compensation and benefits, labor relations and negotiation, and personnel information systems.'); expect(await DivHeaderSix.getText()).toEqual('Programming'); expect(await DivDescriptionSix.getText()).toContain('Writing computer programs.'); expect(await DivHeaderSeven.getText()).toEqual('Quality Control Analysis'); expect(await DivDescriptionSeven.getText()).toContain('Testing how well a product or service works.'); await BestFitDivXCloseLink.click().then(function() { browser.sleep(1000); }); browser.actions().mouseMove(element(by.xpath('//div[2]/div/div/career-territory-card/territory-card/div/div/div/div/div/div[2]'))).perform().then(function() { browser.sleep(2500); }); expect(await SkillsResultCardOne.getText()).toEqual('Business Management & Administration'); expect(await SkillsResultCardTwo.getText()).toEqual('Architecture & Construction'); expect(await SkillsResultCardThree.getText()).toEqual('Science, Technology, Engineering & Math'); //Scroll to bottom of page browser.executeScript('window.scrollTo(0, document.body.scrollHeight);').then(function() { browser.sleep(2500); }); expect(await SkillsResultCardFour.getText()).toEqual('Transportation, Distribution & Logistics'); expect(await SkillsResultCardFive.getText()).toEqual('Cyber Security'); expect(await SkillsResultCardSix.getText()).toEqual('Finance'); await DashboardHeaderLink.click().then(function() { browser.sleep(10000); }); browser.waitForAngular(); browser.getCurrentUrl(); }); } function BeginCareerExploration() { it(': BeginCareerExploration, should interact with Begin Career Exploration widget', async function () { var BeginCareerExplorationTitle = element(by.css('tbody .jrnys_lead-body-copy')); var BeginCareerExplorationDescription = element(by.css('.fullHeight:nth-child(1) > table > tbody > tr:nth-child(3) > td')); var ExploreCareersButton = element(by.css('td > .btn-info')); var DashboardHeaderLink = element(by.css('.ng-scope:nth-child(1) > a > .span-navbar-hover')); /*browser.actions().mouseMove(element(by.css('#recommendedCareersCollapsed .fullHeight .jrnys_lead-body-copy'))).perform().then(function() { browser.sleep(1000); });*/ browser.executeScript('window.scrollTo(0, 610);').then(function() { browser.sleep(5000); }); expect(await BeginCareerExplorationTitle.getText()).toEqual('Begin Career Exploration'); expect(await BeginCareerExplorationDescription.getText()).toEqual('We like your adventurous spirit. Search for a career that aligns with your interests and Learn More about it.'); await ExploreCareersButton.click().then(function() { browser.sleep(10000); }); await DashboardHeaderLink.click().then(function() { browser.sleep(10000); }); browser.waitForAngular(); browser.getCurrentUrl(); }); } function MyCareersCarousel() { it(': MyCareersCarousel, should cycle through Recommended Careers carousel and click the View More link', async function () { var WidgetTitle = element(by.css('.fullHeight > .jrnys_lead-body-copy')); var CarrouselRightScroll = element(by.xpath('//div[3]/table/tbody/tr/td/div/div/a[2]/span')); var ViewMoreLink = element(by.linkText('View More')); var PageTitle = element(by.css('.surveyContainer > .col-xs-offset-1')); var FollowFirstOccupationCardIcon = element(by.xpath('//div[3]/div/div/territory-card-social/div/social-follow-icon/span/i')); var FilterIcon = element(by.css('.widgetControlContainer')); var FilterTitle = element(by.css('tr:nth-child(1) > .ng-binding')); var MyResultsHeader = element(by.css('#recommendedCareerFilter tr:nth-child(2) > td')); var InterestSurveyResults = element(by.css('.ng-scope:nth-child(3) > .ng-binding:nth-child(2)')); var InterestSurveyResultsCheckBox = element(by.css('.ng-scope:nth-child(3) > td > input')); var SkillsAssessmentResults = element(by.css('.ng-scope:nth-child(4) > .ng-binding:nth-child(2)')); var SkillsAssessmentResultsCheckBox = element(by.css('.ng-scope:nth-child(4) input')); var MyFollowing = element(by.css('.ng-scope:nth-child(5) > .ng-binding:nth-child(2)')); var MyFollowingCheckBox = element(by.css('.ng-scope:nth-child(5) input')); var RequiredJobPrepHeader= element(by.css('#recommendedCareerFilter tr:nth-child(6) > td')); var MayRequireHighSchoolDiplomaOrGED = element(by.css('.ng-scope:nth-child(7) > .ng-binding:nth-child(2)')); var MayRequireHighSchoolDiplomaOrGEDCheckBox = element(by.css('.ng-scope:nth-child(7) input')); var HighSchoolDiploma = element(by.css('.ng-scope:nth-child(8) > .ng-binding:nth-child(2)')); var HighSchoolDiplomaCheckBox = element(by.css('.ng-scope:nth-child(8) input')); var VocationalTrainingOrAssociatesDegrees = element(by.css('.ng-scope:nth-child(9) > .ng-binding')); var VocationalTrainingOrAssociatesDegreesCheckBox = element(by.css('.ng-scope:nth-child(9) input')); var FourYearBachelorDegrees = element(by.css('.ng-scope:nth-child(10) > .ng-binding')); var FourYearBachelorDegreesCheckBox = element(by.css('.ng-scope:nth-child(10) input')); var GraduateSchoolOrProfessionalDegree = element(by.css('.ng-scope:nth-child(11) > .ng-binding')); var GraduateSchoolOrProfessionalDegreeCheckBox = element(by.css('.ng-scope:nth-child(11) input')); var FitHeader = element(by.css('#recommendedCareerFilter tr:nth-child(12) > td')); var Best = element(by.css('.ng-scope:nth-child(13) > .ng-binding')); var BestCheckBox = element(by.css('.ng-scope:nth-child(13) input')); var Great = element(by.css('.ng-scope:nth-child(14) > .ng-binding')); var GreatCheckBox = element(by.css('.ng-scope:nth-child(14) input')); var Good = element(by.css('.ng-scope:nth-child(15) > .ng-binding')); var GoodCheckBox = element(by.css('.ng-scope:nth-child(15) input')); var ShowResultsByHeader = element(by.css('#recommendedCareerFilter tr:nth-child(16) > td')); var BrightOutlook = element(by.css('.ng-scope:nth-child(17) > .ng-binding')); var BrightOutlookCheckBox = element(by.css('.ng-scope:nth-child(17) input')); var Green = element(by.css('.ng-scope:nth-child(18) > .ng-binding')); var GreenCheckBox = element(by.css('.ng-scope:nth-child(18) input')); var Apprenticeships = element(by.css('.ng-scope:nth-child(19) > .ng-binding')); var ApprenticeshipsCheckBox = element(by.css('.ng-scope:nth-child(19) input')); var Following = element(by.css('.ng-scope:nth-child(20) > .ng-binding')); var FollowingCheckBox = element(by.css('.ng-scope:nth-child(20) input')); var SortHeader = element(by.css('#recommendedCareerFilter tr:nth-child(21) > td')); var AtoZ = element(by.css('#recommendedCareerFilter tr:nth-child(22) > td:nth-child(2)')); var AtoZRadioButton = element(by.css('td > .ng-pristine')); var ZtoA = element(by.css('#recommendedCareerFilter tr:nth-child(23) > td:nth-child(2)')); var ZtoARadioButton = element(by.css('tr:nth-child(23) .ng-pristine')); var FilterButton = element(by.css('td > .btn-info')); var NoResultsFoundAppliedFilters = element(by.css('.col-md-10')); var BackLink = element(by.css('.btn-primary-back-mod')); var NoResultsFound = element(by.css('.table-height:nth-child(1) td')); var RemoveLeftFilterButton = element(by.css('.statusBtn:nth-child(1)')); var RemoveShowMyResultsByFilterButton = element(by.css('.statusBtn:nth-child(2)')); var RemoveRightFilterButton = element(by.css('.statusBtn:nth-child(3)')); var WidgetFilterIcon = element(by.css('.fa-filter')); var FilterButtonTwo = element(by.css('tr:nth-child(24) .btn-info')); var RemoveLastFilterButton = element(by.css('.statusBtn')); var FirstOccupationCardTitle = element(by.xpath('//div[3]/div/div[2]/span')); var FirstOccupationCardAtAGlanceIcon = element(by.xpath('//territory-card/div/div/div/div/div/div[2]')); var FirstOccupationCardBestFitIcon = element(by.xpath('//territory-card-fit-status/div/div/div[2]')); var SecondOccupationCardTitle = element(by.xpath('//div[2]/div/career-territory-card/territory-card/div/div/div[3]/div/div[2]/span')); var ThirdOccupationCardTitle = element(by.xpath('//div[3]/div/career-territory-card/territory-card/div/div/div[3]/div/div[2]/span')); /*browser.actions().mouseMove(element(by.css('.widget-padding:nth-child(2) > .jrnys_lead-body-copy'))).perform().then(function() { browser.sleep(1000); });*/ browser.executeScript('window.scrollTo(0, 1250);').then(function() { browser.sleep(5000); }); expect(await WidgetTitle.getText()).toEqual('My Careers View All'); await CarrouselRightScroll.click(); browser.sleep(2500); await CarrouselRightScroll.click(); browser.sleep(2500); await CarrouselRightScroll.click(); browser.sleep(2500); await CarrouselRightScroll.click(); browser.sleep(2500); await ViewMoreLink.click(); browser.sleep(5000); expect(await PageTitle.getText()).toEqual('My Careers'); await FollowFirstOccupationCardIcon.click().then(function() { browser.sleep(3000); }); await FilterIcon.click(); browser.sleep(2500); expect(await FilterTitle.getText()).toEqual('Filter'); expect(await MyResultsHeader.getText()).toEqual('My Results'); expect(await InterestSurveyResults.getText()).toContain('Interest Survey Results ('); expect(await SkillsAssessmentResults.getText()).toContain('Skills Assessment Results ('); await SkillsAssessmentResultsCheckBox.click().then(function() { browser.sleep(1000); }); expect(await MyFollowing.getText()).toEqual('My Following (7)'); expect(await RequiredJobPrepHeader.getText()).toEqual('Required Job Prep'); expect(await MayRequireHighSchoolDiplomaOrGED.getText()).toContain('May Require High School Diploma or GED ('); await MayRequireHighSchoolDiplomaOrGEDCheckBox.click().then(function() { browser.sleep(1000); }); expect(await HighSchoolDiploma.getText()).toContain('High School Diploma ('); expect(await VocationalTrainingOrAssociatesDegrees.getText()).toContain('Vocational Training or Associates Degree ('); expect(await FourYearBachelorDegrees.getText()).toContain('4 Year Bachelor Degree ('); expect(await GraduateSchoolOrProfessionalDegree.getText()).toContain('Graduate School or Professional Degree ('); expect(await FitHeader.getText()).toEqual('Fit'); expect(await Best.getText()).toContain('Best ('); await BestCheckBox.click().then(function() { browser.sleep(1000); }); expect(await Great.getText()).toContain('Great ('); expect(await Good.getText()).toContain('Good ('); await GoodCheckBox.click().then(function() { browser.sleep(1000); }); expect(await ShowResultsByHeader.getText()).toEqual('Show Results By'); expect(await BrightOutlook.getText()).toContain('Bright Outlook ('); expect(await Green.getText()).toContain('Green ('); expect(await Apprenticeships.getText()).toContain('Apprenticeship ('); expect(await Following.getText()).toEqual('Following (7)'); await FollowingCheckBox.click().then(function() { browser.sleep(1000); }); expect(await SortHeader.getText()).toEqual('Sort'); expect(await AtoZ.getText()).toEqual('A to Z'); expect(await ZtoA.getText()).toEqual('Z to A'); await ZtoARadioButton.click().then(function() { browser.sleep(1000); }); await FilterButton.click().then(function() { browser.sleep(2500); }); expect(await NoResultsFoundAppliedFilters.getText()).toContain('Sorry, Journeys found no matching results for that combination of filters. Please change the applied filters.'); await BackLink.click(); browser.sleep(2500); /*browser.actions().mouseMove(element(by.css('.widget-padding:nth-child(2) > .jrnys_lead-body-copy'))).perform().then(function() { browser.sleep(1000); });*/ browser.executeScript('window.scrollTo(0, 1250);').then(function() { browser.sleep(5000); }); expect(await NoResultsFound.getText()).toContain('Sorry, Journeys found no matching results for that combination of filters. Please change the applied filters.'); await RemoveLeftFilterButton.click().then(function() { browser.sleep(2500); }); expect(await NoResultsFound.getText()).toContain('Sorry, Journeys found no matching results for that combination of filters. Please change the applied filters.'); await RemoveShowMyResultsByFilterButton.click().then(function() { browser.sleep(2500); }); expect(await FirstOccupationCardTitle.getText()).toEqual('Wind Energy Project Managers'); expect(await FirstOccupationCardAtAGlanceIcon.getText()).toContain('At a'); expect(await FirstOccupationCardAtAGlanceIcon.getText()).toContain('Glance'); expect(await FirstOccupationCardBestFitIcon.getText()).toContain('Interest'); expect(await FirstOccupationCardBestFitIcon.getText()).toContain('Best Fit'); expect(await SecondOccupationCardTitle.getText()).toEqual('Business Intelligence Analysts'); expect(await ThirdOccupationCardTitle.getText()).toEqual('Airfield Operations Specialists'); await RemoveRightFilterButton.click().then(function() { browser.sleep(2500); }); expect(await FirstOccupationCardTitle.getText()).toEqual('Administrative Law Judges, Adjudicators, and Hearing Officers'); expect(await FirstOccupationCardAtAGlanceIcon.getText()).toContain('At a'); expect(await FirstOccupationCardAtAGlanceIcon.getText()).toContain('Glance'); expect(await FirstOccupationCardBestFitIcon.getText()).toContain('Interest'); expect(await FirstOccupationCardBestFitIcon.getText()).toContain('Best Fit'); expect(await SecondOccupationCardTitle.getText()).toEqual('Airfield Operations Specialists'); expect(await ThirdOccupationCardTitle.getText()).toEqual('Business Intelligence Analysts'); await FollowFirstOccupationCardIcon.click().then(function() { browser.sleep(2500); }); await WidgetFilterIcon.click().then(function() { browser.sleep(2500); }); expect(await Following.getText()).toEqual('Following (6)'); await FollowingCheckBox.click().then(function() { browser.sleep(1000); }); await FilterButtonTwo.click().then(function() { browser.sleep(2500); }); expect(await FirstOccupationCardTitle.getText()).toEqual('Administrative Law Judges, Adjudicators, and Hearing Officers'); expect(await FirstOccupationCardAtAGlanceIcon.getText()).toContain('At a'); expect(await FirstOccupationCardAtAGlanceIcon.getText()).toContain('Glance'); expect(await FirstOccupationCardBestFitIcon.getText()).toContain('Interest'); expect(await FirstOccupationCardBestFitIcon.getText()).toContain('Best Fit'); expect(await SecondOccupationCardTitle.getText()).toEqual('Administrative Services Managers'); expect(await ThirdOccupationCardTitle.getText()).toEqual('Administrative Services Managers'); await RemoveLastFilterButton.click().then(function() { browser.sleep(2500); }); expect(await FirstOccupationCardTitle.getText()).toEqual('Administrative Law Judges, Adjudicators, and Hearing Officers'); expect(await FirstOccupationCardAtAGlanceIcon.getText()).toContain('At a'); expect(await FirstOccupationCardAtAGlanceIcon.getText()).toContain('Glance'); expect(await FirstOccupationCardBestFitIcon.getText()).toContain('Interest'); expect(await FirstOccupationCardBestFitIcon.getText()).toContain('Best Fit'); expect(await SecondOccupationCardTitle.getText()).toEqual('Administrative Services Managers'); expect(await ThirdOccupationCardTitle.getText()).toEqual('Administrative Services Managers'); browser.sleep(2500); browser.waitForAngular(); browser.getCurrentUrl(); }); } function EditTopCareer() { it(': EditTopCareer, should edit Top Career', async function () { var WidgetTitle = element(by.css('.widget-padding:nth-child(2) > .jrnys_lead-body-copy')); var TopCareerEditIcon = element(by.css('.full-width .fa-pencil')); var TopCareerDivXRemoveLink = element(by.css('.col-xs-1 > .glyphicon')); var TopCareerDivCancelButton = element(by.css('.row:nth-child(12) .btn-alt-info')); var TopCareerGreenText = element(by.css('.default-color:nth-child(2)')); var TopCareerGreenSubText = element(by.css('.textPosition')); var TopCareerDivAddButton = element(by.css('.resetBtn')); var TopCareerDivTitle = element(by.css('h2')); var TopCareerDivSubTitle = element(by.css('.row:nth-child(5) > .col-lg-8')); var TopCareerDivHandle = element(by.css('.col-lg-8 > label')); var TopCareerDivTextBox = element(by.id('searchBox')); var TopCareerDivSelection = element(by.xpath('//div[2]/div/ul/li[3]/a/span')); var TopCareerDivSaveButton = element(by.css('.row:nth-child(12) #photoBtn')); var TopCareerDescription = element(by.css('.jrEllipsis3Lines')); /*browser.actions().mouseMove(element(by.css('#id > .ng-scope > .jrnys_lead-body-copy'))).perform().then(function() { browser.sleep(1000); });*/ browser.executeScript('window.scrollTo(0, 1880);').then(function() { browser.sleep(2500); }); expect(await WidgetTitle.getText()).toEqual('Top Career'); browser.actions().mouseMove(element(by.css('.widget-padding:nth-child(2) > .jrnys_lead-body-copy'))).perform().then(function() { browser.sleep(1000); }); await TopCareerEditIcon.click().then(function() { browser.sleep(1000); }); await TopCareerDivXRemoveLink.click().then(function() { browser.sleep(1000); }); await TopCareerDivCancelButton.click().then(function() { browser.sleep(1000); }); expect(await TopCareerGreenText.getText()).toEqual('Top Career'); expect(await TopCareerGreenSubText.getText()).toEqual("Head in the clouds? Share what Career you’re thinking about!"); await TopCareerDivAddButton.click().then(function() { browser.sleep(2500); }); //expect(await TopCareerDivTitle.getText()).toEqual('Dream big, reach higher!'); Not reading value expect(await TopCareerDivSubTitle.getText()).toEqual("Journeys is a place that helps make dreams come true. What's your dream job?"); expect(await TopCareerDivHandle.getText()).toEqual('Job Title'); await TopCareerDivTextBox.click().then(function() { browser.sleep(1000); }); await TopCareerDivTextBox.sendKeys('Computer'); browser.sleep(2500); browser.actions().mouseMove(TopCareerDivSelection).perform().then(function() { browser.sleep(2500); }); await TopCareerDivSelection.click().then(function() { browser.sleep(1000); }); await TopCareerDivSaveButton.click().then(function() { browser.sleep(1000); }); expect(await TopCareerDescription.getText()).toEqual('Conduct research into fundamental computer and information science as theorists, designers, or inventors. Develop solutions to problems in the field of computer hardware and software.'); browser.waitForAngular(); browser.getCurrentUrl(); }); } function TopCareerWidget() { it(': TopCareerWidget, should click the Top Career link and interact with Learn More page', async function () { var TopCareerLink = element(by.css('td>.jrnys_support-text')); var LearnMoreTitle = element(by.css('td > div:nth-child(1) > .jrnys_lead-body-copy')); var DescriptionDetail = element(by.css('.info-icon:nth-child(2) > .journey-info-circle')); var DescriptionHeader = element(by.css('.col-lg-12 > .ng-binding')); var DescriptionSubText = element(by.css('.col-lg-12:nth-child(3)')); var XCloseLink = element(by.css('.close')); var VideoIcon = element(by.css('.text-right .far')); var FollowIcon = element(by.css('.text-right > span .journey-follow')); var JourneymanIcon = element(by.css('.text-right .socialImgIcon .socialImgIconJourneyableSvg')); var AtAGlanceHeader = element(by.css('#atAGlanceWidget .jrnys_lead-body-copy')); var AtAGlanceHeaderOne = element(by.css('.row-height:nth-child(1) .jrnys_support-text')); var AtAGlanceStatOne = element(by.css('.row-height:nth-child(1) .col-sm-offset-4')); var AtAGlanceHeaderTwo = element(by.css('.row-height:nth-child(2) .jrnys_support-text')); var AtAGlanceStatTwo = element(by.css('.row-height:nth-child(2) .dataFontSize')); var AtAGlanceHeaderThree = element(by.css('.row-height:nth-child(3) .jrnys_support-text')); var AtAGlanceSubHeaderThree = element(by.css('.col-sm-offset-4 > span')); var AtAGlanceStatThree = element(by.css('.row-height:nth-child(3) .col-sm-offset-4')); var AtAGlanceHeaderFour = element(by.css('.row-height:nth-child(4) .jrnys_support-text')); var AtAGlanceStatFour = element(by.css('.row-height:nth-child(4) .dataFontSize')); var AtAGlanceHeaderFive = element(by.css('.row-height:nth-child(5) .jrnys_support-text')); var AtAGlanceStatFive = element(by.css('.row-height:nth-child(5) .dataFontSize')); var PersonalityWidgetTitle = element(by.css('.widget-round-corners:nth-child(3) .fullHeight .jrnys_lead-body-copy')); var PersonalityDescriptionOne = element(by.css('.carouselHeight > .ng-scope > tbody > tr > td > .ng-binding')); var PersonalityDescriptionTwo = element(by.css('.ng-scope > tbody > tr:nth-child(2) div')); var PersonalityBulletOne = element(by.css('table:nth-child(1) .ng-scope:nth-child(1) > td:nth-child(1) > .ng-binding:nth-child(2)')); var PersonalityBulletTwo = element(by.css('.ng-scope:nth-child(1) > td:nth-child(2) > .ng-binding')); var PersonalityBulletThree = element(by.css('table:nth-child(1) .ng-scope:nth-child(2) > td:nth-child(1) > .ng-binding:nth-child(2)')); var PersonalityBulletFour = element(by.css('.ng-scope:nth-child(2) > td:nth-child(2) > .ng-binding')); var PersonalityBulletFive = element(by.css('table:nth-child(1) .ng-scope:nth-child(3) > td:nth-child(1) > .ng-binding:nth-child(2)')); var PersonalityBulletSix = element(by.css('.ng-scope:nth-child(3) > td:nth-child(2) > .ng-binding')); var WagesWidgetTitle = element(by.css('.widget-round-corners:nth-child(4) .fullHeight .jrnys_lead-body-copy')); var WagesInfoIcon = element(by.css('.jrnys_lead-body-copy > .journey-info-circle')); var WagesSubTextOne = element(by.css('table:nth-child(2) > tbody > tr:nth-child(2) div:nth-child(1)')); var WagesSubTextTwo = element(by.xpath('//occupation-wages/div/div[2]/table/tbody/tr[2]/td/div[2]')); var WagesSubTextThree = element(by.linkText('https://beta.bls.gov/dataQuery/find?st=0&r=20&fq=cg:[Occupation]&more=0')); var WagesCloseBackOfCardIcon = element(by.css('.fa-times-rectangle')); var CurrentDataNationalHeader = element(by.css('g:nth-child(2) > g:nth-child(2) > text')); var CurrentDataLocalHeader = element(by.css('g:nth-child(3) > g > text')); var WagesHighText = element(by.css('g:nth-child(6) > text')); var WagesMedianText = element(by.css('g:nth-child(7) > text')); var WagesLowText = element(by.css('g:nth-child(8) > text')); var Wages0Text = element(by.css('g:nth-child(4) > g:nth-child(1) > text')); var Wages50KText = element(by.css('g:nth-child(4) > g:nth-child(2) > text')); var Wages100KText = element(by.css('g:nth-child(3) > text')); var Wages150KText = element(by.css('g:nth-child(4) > text')); var Wages200KText = element(by.css('g:nth-child(5) > text')); var WagesChangeLocationLink = element(by.css('.dropdown > .widgetRightControlContainer')); var ZipCodeTextBox = element(by.css('.ng-valid-maxlength:nth-child(1)')); var ApplyButton = element(by.css('tr:nth-child(1) > td > .btn')); var DegreesWidgetTitle = element(by.css('#liDegree .jrnys_lead-body-copy')); var DegreesCardOneHeader = element(by.xpath('//div/div/div/div/table/tbody/tr/td/div')); var DegreesCardTwoHeader = element(by.xpath('//div[2]/div/div/table/tbody/tr/td/div')); var DegreesCardThreeHeader = element(by.xpath('//div[3]/div/div/table/tbody/tr/td/div')); var DegreesRightScroll = element(by.css('.table-height:nth-child(2) .right > .glyphicon')); var CertificatesWidgetTitle = element(by.css('#liCertificate .jrnys_lead-body-copy')); var CertificatesCardOneHeader = element(by.xpath('//career-certificate-carousel/div/div/table/tbody/tr/td/div/div/div/div/div/div/div/table/tbody/tr/td/div')); var CertificatesCardOneSubHeader = element(by.xpath('//div/div/div/div/table/tbody/tr/td/span')); var CertificatesCardTwoHeader = element(by.xpath('//career-certificate-carousel/div/div/table/tbody/tr/td/div/div/div/div/div[2]/div/div/table/tbody/tr/td/div')); var CertificatesCardTwoSubHeader = element(by.xpath('//div[2]/div/div/table/tbody/tr/td/span')); var CertificatesCardThreeHeader = element(by.xpath('//career-certificate-carousel/div/div/table/tbody/tr/td/div/div/div/div/div[3]/div/div/table/tbody/tr/td/div')); var CertificatesCardThreeSubHeader = element(by.xpath('//div[3]/div/div/table/tbody/tr/td/span')); var CertificatesRightScroll = element(by.css('.widget-round-corners:nth-child(6) .right:nth-child(4) > .glyphicon:nth-child(1)')); var InstitutionsWidgetTitle = element(by.xpath('//recommended-colleges/div/div/div')); var InstitutionsCardOneHeader = element(by.css('.item:nth-child(1) > .col-xs-4:nth-child(1) > .internat-carouse-padding > .full-width .jrnys_body-copy')); var InstitutionsCardTwoHeader = element(by.css('.item:nth-child(1) > .col-xs-4:nth-child(2) > .internat-carouse-padding > .full-width .jrnys_body-copy')); var InstitutionsCardThreeHeader = element(by.css('.item:nth-child(1) > .col-xs-4:nth-child(3) > .internat-carouse-padding > .full-width .jrnys_body-copy')); var InstitutionsRightScroll = element(by.css('#recommendedColleges .right > .glyphicon')); var TopResourcesWidgetTitle = element(by.css('#id .jrnys_lead-body-copy')); var TopResourcesCardOneHeader = element(by.css('.item:nth-child(1) > .col-xs-4:nth-child(1) .hotTitles')); var TopResourcesCardTwoHeader = element(by.css('.item:nth-child(1) > .col-xs-4:nth-child(2) .hotTitles')); var TopResourcesCardThreeHeader = element(by.css('.item:nth-child(1) > .col-xs-4:nth-child(3) .hotTitles')); var TopResourcesRightScroll = element(by.xpath('//resource-carousel/div/div/table/tbody/tr/td/div/div/a[2]/span')); var TopResourcesLeftScroll = element(by.xpath('//resource-carousel/div/div/table/tbody/tr/td/div/div/a/span')); var TopResourcesCardThreeSaveIcon = element(by.css('.item:nth-child(1) > .col-xs-4:nth-child(3) .journey-save:nth-child(1)')); var FindOpportunitiesWidgetTitle = element(by.css('.widgetTitleContainerFindJob > .noPaddingCol')); var FindOpportunitiesSubText = element(by.css('.col-sm-12:nth-child(2)')); var JobsTotalsLink = element(by.css('.col-sm-8 .job-title-display')); var JobListingsDivHeader = element(by.css('.col-xs-12 > h6:nth-child(1) > .ng-binding')); var InternshipsTotalsLink = element(by.xpath('//div[2]/div/div[2]/div/div')); var InternshipsListingsDivHeader = element(by.css('h6:nth-child(2) > .ng-binding')); var ApprenticeshipsTotalsLink = element(by.css('#findJobsWidget > .text-color-7a:nth-child(3)')); var FindOpportunitiesChangeLocationLink = element(by.css('.text-right:nth-child(2)')); var ChangeLocationDivTitle = element(by.css('b')); var ChangeLocationDivSubTitle = element(by.css('.col-xs-11:nth-child(2)')); var ChnageLocationEnterZipCodeTextBox = element(by.css('#inputZip')); var ChangeLocationApplyButton = element(by.css('#indeedQuery')); var SubmitResourceWidgetTitle = element(by.css('.jrnys_lead-body-copy > .row > .col-xs-12')); var SubmitResourceWidgetSubTextOne = element(by.css('.row:nth-child(2) > .jrnys_body-copy:nth-child(1)')); var TotalInJourneys = element(by.css('.col-xs-offset-1 .col-xs-offset-1')); var MySubmittedResourcesLink = element(by.css('.col-xs-offset-1 > .row .jrnys_lead-body-copy')); var MySubmittedResourcesWidgetTitle = element(by.css('.col-sm-12 > .ng-binding')); var MyResourceTitle = element(by.css('.row > .row > .col-xs-9 > .ng-binding')); var EllipsisResource = element(by.css('.glyphicon-option-vertical:nth-child(1)')); var MyResourceFollowIcon = element(by.css('div:nth-child(1) > .text-color-4b > span')); var MyResourceLearnMoreIcon = element(by.css('div:nth-child(2) > .text-color-4b > span:nth-child(2)')); var ForThisMapPoint = element(by.css('.display-right .col-xs-offset-1')); var SubmitResourceWidgetSubTextTwo = element(by.css('.row:nth-child(4) > .col-sm-12')); var SubmitAResourceWidgetButton = element(by.css('.col-sm-12 > .jrnys_support-text')); var SubmitAResourceDivTitle = element(by.css('h3')); var SubmitAResourceDivCancelButton = element(by.css('.btn-blue-RoundTabsinfo')); var TasksWidgetTitle = element(by.css('#tasksid > .widgetHeaderContainer > .jrnys_lead-body-copy')); var TasksRowOne = element(by.css('#tasksid .ng-scope:nth-child(1) > .no-padding:nth-child(1)')); var ImportanceStatOne = element(by.css('.ng-scope:nth-child(1) > .no-padding:nth-child(3)')); var CategoryStatOne = element(by.css('.ng-scope:nth-child(1) > .text-center:nth-child(4)')); var TechnologyWidgetTitle = element(by.css('#technologyid > .widgetHeaderContainer > .jrnys_lead-body-copy')); var KnowledgeWidgetTitle = element(by.css('#knowledgeid > .widgetHeaderContainer > .jrnys_lead-body-copy')); var SkillsWidgetTitle = element(by.css('#skillsid > .widgetHeaderContainer > .jrnys_lead-body-copy')); var WorkActivitiesWidgetTitle = element(by.css('#workActivitiesid > .widgetHeaderContainer > .jrnys_lead-body-copy')); var AbilityWidgetTitle = element(by.css('#abilitiesid > .widgetHeaderContainer > .jrnys_lead-body-copy')); var NearbyPlacesWidgetTitle = element(by.css('#liNearby .jrnys_lead-body-copy')); var NearbyPlacesCardOneHeader = element(by.xpath('//div[3]/div/div[2]/span')); var NearbyPlacesCardTwoHeader = element(by.xpath('//div[2]/div/career-territory-card/territory-card/div/div/div[3]/div/div[2]/span')); var NearbyPlacesCardThreeHeader = element(by.xpath('//div[3]/div/career-territory-card/territory-card/div/div/div[3]/div/div[2]/span')); var NearbyPlacesRightScroll = element(by.xpath('//career-occupation-carousel/div/div/table/tbody/tr/td/div/div/a[2]/span')); var NearbyPlacesLeftScroll = element(by.xpath('//career-occupation-carousel/div/div/table/tbody/tr/td/div/div/a/span')); //var NearbyPlacesRightScroll = element(by.xpath('//li[17]')).element(by.css('.glyphicon-chevron-right')); //var NearbyPlacesLeftScroll = element(by.xpath('//li[17]')).element(by.css('.glyphicon-chevron-left')); /*browser.executeScript('window.scrollTo(0, 1880);').then(function() { browser.sleep(2500); });//remove*/ await TopCareerLink.click().then(function() { browser.sleep(10000); }); //Description expect(await LearnMoreTitle.getText()).toEqual('Computer and Information Research Scientists'); await DescriptionDetail.click().then(function() { browser.sleep(1000); }); expect(await DescriptionHeader.getText()).toEqual('Computer and Information Research Scientists'); expect(await DescriptionSubText.getText()).toContain('Conduct research into fundamental computer and information science as theorists, designers, or inventors. Develop solutions to problems in the field of computer hardware and software.'); expect(await DescriptionSubText.getText()).toContain('Other Jobs:'); expect(await DescriptionSubText.getText()).toContain('Computer Scientist; Control System Computer Scientist; Scientific Programmer Analyst'); await XCloseLink.click().then(function() { browser.sleep(1000); }); browser.actions().mouseMove(VideoIcon).perform().then(function() { browser.sleep(1000); }); browser.actions().mouseMove(FollowIcon).perform().then(function() { browser.sleep(1000); }); browser.actions().mouseMove(JourneymanIcon).perform().then(function() { browser.sleep(1000); }); //At A Glance expect(await AtAGlanceHeader.getText()).toEqual('At A Glance'); expect(await AtAGlanceHeaderOne.getText()).toEqual('Typical Degree'); expect(await AtAGlanceStatOne.getText()).toContain("Master's degree - 59%"); expect(await AtAGlanceStatOne.getText()).toContain("Associate's degree - 0%"); expect(await AtAGlanceStatOne.getText()).toContain('College (4 Year) - 0%'); expect(await AtAGlanceHeaderTwo.getText()).toEqual('Average Annual Salary'); expect(await AtAGlanceStatTwo.getText()).toEqual('$114,520'); expect(await AtAGlanceHeaderThree.getText()).toEqual('Projected Growth'); expect(await AtAGlanceSubHeaderThree.getText()).toEqual(' ABOVE AVERAGE'); expect(await AtAGlanceStatThree.getText()).toContain(' ABOVE AVERAGE'); expect(await AtAGlanceStatThree.getText()).toContain('19.2%'); expect(await AtAGlanceHeaderFour.getText()).toEqual('Projected Job Openings'); expect(await AtAGlanceStatFour.getText()).toEqual('2,500'); expect(await AtAGlanceHeaderFive.getText()).toEqual('Currently Employed'); expect(await AtAGlanceStatFive.getText()).toEqual('27,900'); browser.executeScript('window.scrollTo(0, 405);').then(function() { browser.sleep(2500); }); /*browser.actions().mouseMove(DegreesWidgetTitle).perform().then(function() { browser.sleep(1000); }); browser.actions().mouseMove(element(by.css('.widget-round-corners:nth-child(5) #id > .jrnys_lead-body-copy'))).perform().then(function() { browser.sleep(1000); });*/ //Personality expect(await PersonalityWidgetTitle.getText()).toEqual('Personality'); expect(await PersonalityDescriptionOne.getText()).toEqual('People interested in this work like activities that include ideas, thinking, and figuring things out.'); expect(await PersonalityDescriptionTwo.getText()).toEqual('They do well at jobs that need:'); expect(await PersonalityBulletOne.getText()).toEqual('Analytical Thinking'); expect(await PersonalityBulletTwo.getText()).toEqual('Cooperation'); expect(await PersonalityBulletThree.getText()).toEqual('Attention to Detail'); expect(await PersonalityBulletFour.getText()).toEqual('Independence'); expect(await PersonalityBulletFive.getText()).toEqual('Achievement/Effort'); expect(await PersonalityBulletSix.getText()).toEqual('Initiative'); //Wages expect(await WagesWidgetTitle.getText()).toContain('Wages'); await WagesInfoIcon.click().then(function() { browser.sleep(1000); }); expect(await WagesSubTextOne.getText()).toEqual('Data provided by the Bureau of Labor Statistics.'); expect(await WagesSubTextTwo.getText()).toEqual('For more information please visit:'); expect(await WagesSubTextThree.getText()).toEqual('https://beta.bls.gov/dataQuery/find?st=0&r=20&fq=cg:[Occupation]&more=0'); await WagesCloseBackOfCardIcon.click().then(function() { browser.sleep(1000); }); expect(await WagesWidgetTitle.getText()).toContain('Change Location'); expect(await CurrentDataNationalHeader.getText()).toEqual('National'); expect(await CurrentDataLocalHeader.getText()).toContain('San Diego-Carlsbad, CA'); expect(await WagesHighText.getText()).toEqual('High'); expect(await WagesMedianText.getText()).toEqual('Median'); expect(await WagesLowText.getText()).toEqual('Low'); expect(await Wages0Text.getText()).toEqual('$0'); expect(await Wages50KText.getText()).toEqual('$50,000'); expect(await Wages100KText.getText()).toEqual('$100,000'); expect(await Wages150KText.getText()).toEqual('$150,000'); expect(await Wages200KText.getText()).toEqual('$200,000'); await WagesChangeLocationLink.click().then(function() { browser.sleep(1000); }); await ZipCodeTextBox.click(); await ZipCodeTextBox.clear(); await ZipCodeTextBox.sendKeys('85013').then(function() { browser.sleep(1000); }); await ApplyButton.click().then(function() { browser.sleep(2500); }); expect(await CurrentDataNationalHeader.getText()).toEqual('National'); expect(await CurrentDataLocalHeader.getText()).toContain('Phoenix-Mesa-Scottsdale, AZ'); /*browser.actions().mouseMove(CertificatesWidgetTitle).perform().then(function() { browser.sleep(1000); });*/ browser.executeScript('window.scrollTo(0, 882);').then(function() { browser.sleep(2495); }); //Degrees expect(await DegreesWidgetTitle.getText()).toEqual('Degrees'); expect(await DegreesCardOneHeader.getText()).toEqual('Computer Applications Minor—College-Wide'); expect(await DegreesCardTwoHeader.getText()).toEqual('Computer Science B.S.'); expect(await DegreesCardThreeHeader.getText()).toEqual('Computer Science M.S.'); await DegreesRightScroll.click(); browser.sleep(2500); /*browser.actions().mouseMove(InstitutionsWidgetTitle).perform().then(function() { browser.sleep(1000); });*/ browser.executeScript('window.scrollTo(0, 1360);').then(function() { browser.sleep(2500); }); //Certificates expect(await CertificatesWidgetTitle.getText()).toEqual('Certificates'); expect(await CertificatesCardOneHeader.getText()).toEqual('Certified Associate LabVIEW Developer'); expect(await CertificatesCardOneSubHeader.getText()).toEqual('Business Analysis'); expect(await CertificatesCardTwoHeader.getText()).toEqual('Certified LabVIEW Architect'); expect(await CertificatesCardTwoSubHeader.getText()).toEqual('Business Analysis'); expect(await CertificatesCardThreeHeader.getText()).toEqual('Certified Biometrics Professional'); expect(await CertificatesCardThreeSubHeader.getText()).toEqual('Business Financial Mgmt & Acctg'); await CertificatesRightScroll.click(); browser.sleep(2500); /*browser.actions().mouseMove(TopResourcesWidgetTitle).perform().then(function() { browser.sleep(1000); });*/ browser.executeScript('window.scrollTo(0, 1836);').then(function() { browser.sleep(2500); }); //Institutions expect(await InstitutionsWidgetTitle.getText()).toEqual('Institutions View All'); expect(await InstitutionsCardOneHeader.getText()).toEqual('University of San Diego'); expect(await InstitutionsCardTwoHeader.getText()).toEqual('National University'); expect(await InstitutionsCardThreeHeader.getText()).toEqual('Point Loma Nazarene University'); await InstitutionsRightScroll.click(); browser.sleep(2500); /*browser.actions().mouseMove(FindOpportunitiesWidgetTitle).perform().then(function() { browser.sleep(1000); });*/ browser.executeScript('window.scrollTo(0, 2313);').then(function() { browser.sleep(2500); }); //Top Resources expect(await TopResourcesWidgetTitle.getText()).toEqual('Top Resources View All'); expect(await TopResourcesCardOneHeader.getText()).toEqual('Computer and Information Research Scientists (Information Technology)'); expect(await TopResourcesCardTwoHeader.getText()).toEqual('How to Become a Research Scientist'); expect(await TopResourcesCardThreeHeader.getText()).toEqual('Computer and Information Research Scientists'); browser.sleep(2500); await TopResourcesRightScroll.click().then(function() { browser.sleep(2500); }); await TopResourcesLeftScroll.click().then(function() { browser.sleep(2500); }); expect(await TopResourcesCardThreeHeader.getText()).toEqual('Computer and Information Research Scientists'); await TopResourcesCardThreeSaveIcon.click().then(function() { browser.sleep(2500); }); /*browser.actions().mouseMove(TasksWidgetTitle).perform().then(function() { browser.sleep(1000); });*/ browser.executeScript('window.scrollTo(0, 2790);').then(function() { browser.sleep(2500); }); //Find Opportunities expect(await FindOpportunitiesWidgetTitle.getText()).toEqual('Find Opportunities'); expect(await FindOpportunitiesSubText.getText()).toEqual('Great News! We found lots of opportunities within a 50 mile radius of 92123.'); expect(await JobsTotalsLink.getText()).toContain('Jobs'); //expect(await JobsTotalsLink.getText()).toContain('85');//stored value needed expect(await InternshipsTotalsLink.getText()).toContain('Internships'); //expect(await InternshipsTotalsLink.getText()).toContain('0');//stored value needed expect(await ApprenticeshipsTotalsLink.getText()).toContain('Apprenticeships');//value sometimes is disabled //expect(await ApprenticeshipsTotalsLink.getText()).toContain('0');//stored value needed await FindOpportunitiesChangeLocationLink.click().then(function() { browser.sleep(1000); }); expect(await ChangeLocationDivTitle.getText()).toEqual('Change Location'); expect(await ChangeLocationDivSubTitle.getText()).toEqual("Let's search the location you're most interested in."); await ChnageLocationEnterZipCodeTextBox.sendKeys('85013'); browser.sleep(1000); element(by.cssContainingText('option', '1000')).click().then(function() { browser.sleep(1000); }); await ChangeLocationApplyButton.click().then(function() { browser.sleep(1000); }); expect(await FindOpportunitiesSubText.getText()).toEqual('Great News! We found lots of opportunities within a 1000 mile radius of you.'); await JobsTotalsLink.click().then(function() { browser.sleep(2500); }); expect(await JobListingsDivHeader.getText()).toContain('Job Listings:');//stored value needed await XCloseLink.click().then(function() { browser.sleep(1000); }); /*await InternshipsTotalsLink.click().then(function() { browser.sleep(2500); }); expect(await InternshipsListingsDivHeader.getText()).toContain('Internships: ');//stored value needed await XCloseLink.click().then(function() { browser.sleep(1000); });*/ expect(await JobsTotalsLink.getText()).toEqual('Jobs'); //expect(await JobsTotalsLink.getText()).toContain('68');//stored value needed expect(await InternshipsTotalsLink.getText()).toEqual('Internships'); //expect(await InternshipsTotalsLink.getText()).toContain('0');//stored value needed expect(await ApprenticeshipsTotalsLink.getText()).toContain('Apprenticeships'); //expect(await Totals.getText()).toContain('3');//stored value needed //Submit A Resource expect(await SubmitResourceWidgetTitle.getText()).toEqual('Submit a Resource'); expect(await SubmitResourceWidgetSubTextOne.getText()).toEqual("Here's a summary of your submitted Resources"); expect(await TotalInJourneys.getText()).toContain('Total in Journeys'); expect(await TotalInJourneys.getText()).toContain('1'); await MySubmittedResourcesLink.click().then(function() { browser.sleep(1000); }); expect(await MySubmittedResourcesWidgetTitle.getText()).toContain('My Submitted Resources'); expect(await MyResourceTitle.getText()).toEqual('Test Doc'); await EllipsisResource.click().then(function() { browser.sleep(1000); }); expect(await MyResourceFollowIcon.getText()).toEqual('Follow'); expect(await MyResourceLearnMoreIcon.getText()).toEqual('Learn More'); await XCloseLink.click().then(function() { browser.sleep(1000); }); expect(await ForThisMapPoint.getText()).toContain('For this map point'); expect(await ForThisMapPoint.getText()).toContain('0'); expect(await SubmitResourceWidgetSubTextTwo.getText()).toEqual('Help expand the system by submitting a resource.'); await SubmitAResourceWidgetButton.click().then(function() { browser.sleep(1000); }); expect(await SubmitAResourceDivTitle.getText()).toEqual('Submit a Resource'); await SubmitAResourceDivCancelButton.click().then(function() { browser.sleep(1000); }); /*browser.actions().mouseMove(KnowledgeWidgetTitle).perform().then(function() { browser.sleep(1000); });*/ browser.executeScript('window.scrollTo(0, 3108);').then(function() { browser.sleep(2500); }); //Tasks expect(await TasksWidgetTitle.getText()).toEqual('Tasks View All'); expect(await TasksRowOne.getText()).toEqual('Analyze problems to develop solutions in...'); expect(await ImportanceStatOne.getText()).toEqual('82%'); expect(await CategoryStatOne.getText()).toEqual('Core'); //Technology expect(await TechnologyWidgetTitle.getText()).toEqual('Technology View All'); browser.sleep(1000); /*browser.actions().mouseMove(WorkActivitiesWidgetTitle).perform().then(function() { browser.sleep(1000); });*/ browser.executeScript('window.scrollTo(0, 3426);').then(function() { browser.sleep(2500); }); //Knowledge expect(await KnowledgeWidgetTitle.getText()).toEqual('Knowledge View All'); //Skills expect(await SkillsWidgetTitle.getText()).toEqual('Skills View All'); browser.sleep(1000); /*browser.actions().mouseMove(NearbyPlacesWidgetTitle).perform().then(function() { browser.sleep(1000); });*/ browser.executeScript('window.scrollTo(0, 3743);').then(function() { browser.sleep(2500); }); //Work Activities expect(await WorkActivitiesWidgetTitle.getText()).toEqual('Work Activities View All'); //Ability expect(await AbilityWidgetTitle.getText()).toEqual('Ability View All'); //Nearby Places browser.executeScript('window.scrollTo(0, document.body.scrollHeight);').then(function() { browser.sleep(5000); }); expect(await NearbyPlacesWidgetTitle.getText()).toEqual('Nearby Places'); expect(await NearbyPlacesCardOneHeader.getText()).toEqual('Computer and Information Systems Managers'); expect(await NearbyPlacesCardTwoHeader.getText()).toEqual('Computer Network Architects'); expect(await NearbyPlacesCardThreeHeader.getText()).toEqual('Computer Network Support Specialists'); await NearbyPlacesRightScroll.click(); browser.sleep(2500); await NearbyPlacesLeftScroll.click(); browser.sleep(2500); browser.waitForAngular(); browser.getCurrentUrl(); }); } function NearbyPlacesOccupationCard() { it(': NearbyPlacesOccupationCard, should interact with Occupation cards on Nearby Places widget of Learn More page, then navigate to Following page an unfollow occupation', async function () { var OccupationCardTitle = element(by.xpath('//territory-card/div/div/div[3]/div/div[2]/span')); var OccupatonCardFollow = element(by.xpath('//div[3]/div/div/territory-card-social/div/social-follow-icon/span/i')); var AtAGlanceHeaderRowIcon = element(by.xpath('//territory-card/div/div/div/div/div/div[2]')); var AtAGlanceBackOfCardTitle = element(by.xpath('//territory-card/div/div[2]/div/div')); var AtAGlanceBackOfCardDescription = element(by.xpath('//territory-card-at-a-glance-back/div/div/div/div')); var AtAGlanceTypicalDegreeTitle = element(by.xpath('//div/div/div[2]/div/div/table/tbody/tr/td[2]/div')); var AtAGlanceCollege = element(by.xpath('//tr[2]/td[2]/div')); var AtAGlanceMasters = element(by.xpath('//tr[3]/td[2]/div')); var AtAGlanceAssociates = element(by.xpath('//tr[4]/td[2]/div')); var AtAGlanceSalary = element(by.xpath('//tr[16]/td[2]/div')); var AtAGlanceSalaryStat = element(by.xpath('//tr[17]/td[2]/div')); var AtAGlanceGrowth = element(by.xpath('//tr[19]/td[2]/div')); var AtAGlanceGrowthStat = element(by.xpath('//tr[20]/td[2]/div')); var AtAGlanceGrowthAverage = element(by.xpath('//td[2]/div[2]')); var AtAGlanceJobOpenings = element(by.xpath('//tr[22]/td[2]/div')); var AtAGlanceJobOpeningsStat = element(by.xpath('//tr[23]/td[2]/div')); var AtAGlanceEmployed = element(by.xpath('//tr[25]/td[2]/div')); var AtAGlanceEmployedStat = element(by.xpath('//tr[26]/td[2]/div')); var AtAGlanceXCloseLink = element(by.css('.item:nth-child(1) > .col-xs-4:nth-child(1) .glyphicon:nth-child(1)')); var OccupationCardEllipsis = element(by.xpath('//territory-card/div/div/div/div[2]/div/i')); var BackOfCardTitle = element(by.xpath('//territory-card/div/div[3]/div/div')); var BackOfCardUnFollow = element(by.xpath('//territory-card-more-back/div/div/div/div/div/div[2]')); var BackOfCardLearnMore = element(by.xpath('//territory-card-more-back/div/div/div/div/div[2]/div[2]')); var BackOfCardMap = element(by.xpath('//territory-card-more-back/div/div/div/div/div[3]/div[2]')); var BackOfCardJourney = element(by.xpath('//territory-card-more-back/div/div/div/div/div[4]/div[2]')); var BackOfCardVideo = element(by.xpath('//territory-card-more-back/div/div/div/div/div[5]/div[2]')); var BackOfCardAtAGlanceIcon = element(by.xpath('//div/div/div/div/div[6]/div[2]')); var OccupationCardLearnMoreIcon = element(by.xpath('//action-learn-more/i')); var LearnMoreTitle = element(by.css('td > div:nth-child(1) > .jrnys_lead-body-copy')); //var BackLink = element(by.css('.btn-primary-back-mod')); Not taking you back to LM page, takes you back to dashboard var OccupationCardMapIcon = element(by.xpath('//action-map/i')); var ObjectPath = element(by.css('.sidebarDescriptionAncestorTxt:nth-child(1)')); var ObjectTitle = element(by.css('.side-bar-child-text:nth-child(2)')); var ItemDescription = element(by.css('.sidebarDescription')); var OccupationCardJourneymanIcon = element(by.xpath('//action-journey/span')); var JourneySideBarHeader = element(by.css('.side-bar-child-text > span')); var OccupationCardVideoIcon = element(by.xpath('//div[4]/career-one-stop-video/i')); var VideoTitle = element(by.css('.modal-content > .ng-scope > div > .ng-binding')); var XCloseVideoDivLink = element(by.css('.close:nth-child(2)')); var DashboardHeaderLink = element(by.css('.ng-scope:nth-child(1) > a > .span-navbar-hover')); expect(await OccupationCardTitle.getText()).toEqual('Computer and Information Systems Managers'); await OccupatonCardFollow.click().then(function() { browser.sleep(2500); }); await AtAGlanceHeaderRowIcon.click().then(function() { browser.sleep(1000); }); expect(await AtAGlanceBackOfCardTitle.getText()).toEqual('Computer and Information Systems Managers'); expect(await AtAGlanceBackOfCardDescription.getText()).toEqual('Plan, direct, or coordinate activities in such fields as electronic data processing, information systems, systems analysis, and computer programming.'); expect(await AtAGlanceTypicalDegreeTitle.getText()).toEqual('Typical Degree'); expect(await AtAGlanceCollege.getText()).toEqual('College (4 Year) - 48%'); expect(await AtAGlanceMasters.getText()).toEqual("Some college - 26%"); expect(await AtAGlanceAssociates.getText()).toEqual("Master's degree - 14%"); expect(await AtAGlanceSalary.getText()).toEqual('Average Annual Salary'); expect(await AtAGlanceSalaryStat.getText()).toEqual('$139,220'); expect(await AtAGlanceGrowth.getText()).toEqual('Projected Growth'); expect(await AtAGlanceGrowthStat.getText()).toEqual('12%'); expect(await AtAGlanceGrowthAverage.getText()).toEqual('ABOVE AVERAGE'); expect(await AtAGlanceJobOpenings.getText()).toEqual('Projected Job Openings'); expect(await AtAGlanceJobOpeningsStat.getText()).toEqual('32,500'); expect(await AtAGlanceEmployed.getText()).toEqual('Currently Employed'); expect(await AtAGlanceEmployedStat.getText()).toEqual('367,600'); await AtAGlanceXCloseLink.click().then(function() { browser.sleep(1000); }); expect(await OccupationCardTitle.getText()).toEqual('Computer and Information Systems Managers'); await OccupationCardEllipsis.click().then(function() { browser.sleep(1000); }); expect(await BackOfCardTitle.getText()).toEqual('Computer and Information Systems Managers'); expect(await BackOfCardUnFollow.getText()).toEqual('Follow'); expect(await BackOfCardLearnMore.getText()).toEqual('Learn More'); expect(await BackOfCardMap.getText()).toEqual('Map'); expect(await BackOfCardJourney.getText()).toEqual('Journey'); expect(await BackOfCardVideo.getText()).toEqual('Video'); await BackOfCardAtAGlanceIcon.click().then(function() { browser.sleep(2500); }); expect(await AtAGlanceBackOfCardTitle.getText()).toEqual('Computer and Information Systems Managers'); expect(await AtAGlanceBackOfCardDescription.getText()).toEqual('Plan, direct, or coordinate activities in such fields as electronic data processing, information systems, systems analysis, and computer programming.'); expect(await AtAGlanceTypicalDegreeTitle.getText()).toEqual('Typical Degree'); expect(await AtAGlanceCollege.getText()).toEqual('College (4 Year) - 48%'); expect(await AtAGlanceMasters.getText()).toEqual("Some college - 26%"); expect(await AtAGlanceAssociates.getText()).toEqual("Master's degree - 14%"); expect(await AtAGlanceSalary.getText()).toEqual('Average Annual Salary'); expect(await AtAGlanceSalaryStat.getText()).toEqual('$139,220'); expect(await AtAGlanceGrowth.getText()).toEqual('Projected Growth'); expect(await AtAGlanceGrowthStat.getText()).toEqual('12%'); expect(await AtAGlanceGrowthAverage.getText()).toEqual('ABOVE AVERAGE'); expect(await AtAGlanceJobOpenings.getText()).toEqual('Projected Job Openings'); expect(await AtAGlanceJobOpeningsStat.getText()).toEqual('32,500'); expect(await AtAGlanceEmployed.getText()).toEqual('Currently Employed'); expect(await AtAGlanceEmployedStat.getText()).toEqual('367,600'); await AtAGlanceXCloseLink.click().then(function() { browser.sleep(1000); }); expect(await OccupationCardTitle.getText()).toEqual('Computer and Information Systems Managers'); await OccupationCardLearnMoreIcon.click().then(function() { browser.sleep(10000); }); expect(await LearnMoreTitle.getText()).toEqual('Computer and Information Systems Managers'); browser.navigate().back().then(function() { browser.sleep(10000); }); browser.executeScript('window.scrollTo(0, document.body.scrollHeight);').then(function() { browser.sleep(2500); }); await OccupationCardMapIcon.click().then(function() { browser.sleep(10000); }); expect(await ObjectPath.getText()).toEqual('IT > Network Systems >'); expect(await ObjectTitle.getText()).toEqual('Computer and Information Systems Managers'); expect(await ItemDescription.getText()).toEqual('Plan, direct, or coordinate activities in such fields as electronic data processing, information systems, systems analysis, and computer programming.'); browser.navigate().back().then(function() { browser.sleep(10000); }); browser.executeScript('window.scrollTo(0, document.body.scrollHeight);').then(function() { browser.sleep(2500); }); await OccupationCardJourneymanIcon.click().then(function() { browser.sleep(10000); }); expect(await JourneySideBarHeader.getText()).toEqual('Create Your Journey'); browser.navigate().back().then(function() { browser.sleep(10000); }); browser.executeScript('window.scrollTo(0, document.body.scrollHeight);').then(function() { browser.sleep(2500); }); await OccupationCardVideoIcon.click().then(function() { browser.sleep(10000); }); expect(await VideoTitle.getText()).toEqual('Computer and Information Systems Managers'); await XCloseVideoDivLink.click().then(function() { browser.sleep(1000); }); await DashboardHeaderLink.click().then(function() { browser.sleep(10000); }); browser.waitForAngular(); browser.getCurrentUrl(); }); } function FollowingPage() { it(': FollowingPage, should navigate to Following page and delete 3rd card', async function () { var FollowingLink = element(by.css('.col-md-3:nth-child(4) .jrnys_stand-out-text')); var ConnectionsTab = element(by.css('.col-md-4 > .row-follow-type > .col-xs-4:nth-child(1)')); var DivTitle = element(by.css('.default-color2 > h3')); var DivSubText = element(by.css('.col-lg-12:nth-child(1)')); var DivGotItButton = element(by.css('.row > .btn')); var FollowersTab = element(by.css('.col-md-4 > .row-follow-type > .col-xs-4:nth-child(2)')); var DivCloseLlink = element(by.css('.glyphicon-remove')); var FollowingTab = element(by.css('.col-md-4 > .row-follow-type > .col-selected')); var SoftwareDevelopersApplicationsTitle = element(by.css('#viewTemp > div > div > div:nth-child(3) > div > div > following > div:nth-child(2) > div.row.hidden-sm.hidden-xs.ng-scope > div > div > div:nth-child(2) > div > div:nth-child(3) > section > section > div > div > div:nth-child(1) > table > tbody > tr:nth-child(2) > td > div.title.ng-binding')); var SoftwareDevelopersApplicationsPathway = element(by.css('#viewTemp > div > div > div:nth-child(3) > div > div > following > div:nth-child(2) > div.row.hidden-sm.hidden-xs.ng-scope > div > div > div:nth-child(2) > div > div:nth-child(3) > section > section > div > div > div:nth-child(1) > table > tbody > tr:nth-child(2) > td > div.subtitle.ng-binding')); var SoftwareDevelopersApplicationsUnfollowIcon = element(by.css('#viewTemp > div > div > div:nth-child(3) > div > div > following > div:nth-child(2) > div.row.hidden-sm.hidden-xs.ng-scope > div > div > div:nth-child(2) > div > div:nth-child(3) > section > section > div > div > div:nth-child(1) > table > tbody > tr:nth-child(3) > td > div:nth-child(1) > div > span:nth-child(2) > social-follow-icon > span > i')); var DashboardHeaderLink = element(by.css('.ng-scope:nth-child(1) > a > .span-navbar-hover')); await FollowingLink.click().then(function() { browser.sleep(5000); }); await ConnectionsTab.click().then(function() { browser.sleep(1000); }); expect(await DivTitle.getText()).toEqual('This feature is on its way!'); expect(await DivSubText.getText()).toEqual("Love Journeys? Then you'll love what is coming next."); await DivGotItButton.click().then(function() { browser.sleep(1000); }); await FollowersTab.click().then(function() { browser.sleep(1000); }); await DivCloseLlink.click().then(function() { browser.sleep(1000); }); expect(await FollowingTab.getText()).toEqual('Following'); expect(await SoftwareDevelopersApplicationsTitle.getText()).toEqual('Computer and Information Systems Managers'); expect(await SoftwareDevelopersApplicationsPathway.getText()).toEqual('Information Technology'); await SoftwareDevelopersApplicationsUnfollowIcon.click().then(function() { browser.sleep(2500); }); await DashboardHeaderLink.click().then(function() { browser.sleep(10000); }); browser.waitForAngular(); browser.getCurrentUrl(); }); } function AtAGlance() { it(': AtAGlance, should click the At A Glance link and validate data', async function () { var AtAGlanceLink = element(by.css('tr:nth-child(3) > td:nth-child(1) > .text-color-7a')); var AtAGlanceWidgetTitle = element(by.css('.widgetHeaderContainer > .jrnys_lead-body-copy')); var AtAGlanceHeaderOne = element(by.css('.row-height:nth-child(1) .jrnys_support-text')); var AtAGlanceStatOne = element(by.css('.row-height:nth-child(1) .col-sm-offset-4')); var AtAGlanceHeaderTwo = element(by.css('.row-height:nth-child(2) .jrnys_support-text')); var AtAGlanceStatTwo = element(by.css('.row-height:nth-child(2) .dataFontSize')); var AtAGlanceHeaderThree = element(by.css('.row-height:nth-child(3) .jrnys_support-text')); var AtAGlanceSubHeaderThree = element(by.css('.col-sm-offset-4 > span')); var AtAGlanceStatThree = element(by.css('.row-height:nth-child(3) .col-sm-offset-4')); var AtAGlanceHeaderFour = element(by.css('.row-height:nth-child(4) .jrnys_support-text')); var AtAGlanceStatFour = element(by.css('.row-height:nth-child(4) .dataFontSize')); var AtAGlanceHeaderFive = element(by.css('.row-height:nth-child(5) .jrnys_support-text')); var AtAGlanceStatFive = element(by.css('.row-height:nth-child(5) .dataFontSize')); var XCloseLink = element(by.css('.close')); //browser.actions().mouseMove(element(by.css('#id > .ng-scope > .jrnys_lead-body-copy'))).perform().then(function() { browser.executeScript('window.scrollTo(0, 1883);').then(function() { browser.sleep(2500); }); await AtAGlanceLink.click().then(function() { browser.sleep(2500); }); expect(await AtAGlanceWidgetTitle.getText()).toEqual('At A Glance'); expect(await AtAGlanceHeaderOne.getText()).toEqual('Typical Degree'); expect(await AtAGlanceStatOne.getText()).toContain("Master's degree - 59%"); expect(await AtAGlanceStatOne.getText()).toContain("Associate's degree - 0%"); expect(await AtAGlanceStatOne.getText()).toContain('College (4 Year) - 0%'); expect(await AtAGlanceHeaderTwo.getText()).toEqual('Average Annual Salary'); expect(await AtAGlanceStatTwo.getText()).toEqual('$114,520'); expect(await AtAGlanceHeaderThree.getText()).toEqual('Projected Growth'); expect(await AtAGlanceSubHeaderThree.getText()).toContain(' ABOVE AVERAGE'); expect(await AtAGlanceStatThree.getText()).toContain(' ABOVE AVERAGE'); expect(await AtAGlanceStatThree.getText()).toContain('19.2%'); expect(await AtAGlanceHeaderFour.getText()).toEqual('Projected Job Openings'); expect(await AtAGlanceStatFour.getText()).toEqual('2,500'); expect(await AtAGlanceHeaderFive.getText()).toEqual('Currently Employed'); expect(await AtAGlanceStatFive.getText()).toEqual('27,900'); await XCloseLink.click().then(function() { browser.sleep(1000); }); browser.waitForAngular(); browser.getCurrentUrl(); }); } function Personality() { it(': Personality, should click the Personality link and validate data', async function() { var PersonatlityLink = element(by.css('tr:nth-child(4) > td:nth-child(1) > .text-color-7a')); var PersonatlityWidgetTitle = element(by.css('.ng-isolate-scope:nth-child(3) > .fullHeight .jrnys_lead-body-copy')); var PersonatlityDescriptionOne = element(by.css('.carouselHeight > .ng-scope td > .ng-binding')); var PersonatlityDescriptionTwo = element(by.css('.carouselHeight > .ng-scope tr:nth-child(2) div')); var PersonatlityBulletOne = element(by.css('.ng-scope > tbody > .ng-scope:nth-child(3) .ng-binding')); var PersonatlityBulletTwo = element(by.css('.ng-scope > tbody > .ng-scope:nth-child(4) .ng-binding')); var PersonatlityBulletThree = element(by.css('.ng-scope > tbody > .ng-scope:nth-child(5) .ng-binding')); var PersonatlityBulletFour = element(by.css('.ng-scope > tbody > .ng-scope:nth-child(6) .ng-binding')); var PersonatlityBulletFive = element(by.css('.ng-scope:nth-child(7) > td > div > .ng-binding')); var PersonatlityBulletSix = element(by.css('.ng-scope:nth-child(8) > td > div > .ng-binding')); var XCloseLink = element(by.css('.close')); await PersonatlityLink.click().then(function() { browser.sleep(2500); }); expect(await PersonatlityWidgetTitle.getText()).toEqual('Personality'); expect(await PersonatlityDescriptionOne.getText()).toEqual('People interested in this work like activities that include ideas, thinking, and figuring things out.'); expect(await PersonatlityDescriptionTwo.getText()).toEqual('They do well at jobs that need:'); expect(await PersonatlityBulletOne.getText()).toEqual('Analytical Thinking'); expect(await PersonatlityBulletTwo.getText()).toEqual('Cooperation'); expect(await PersonatlityBulletThree.getText()).toEqual('Attention to Detail'); expect(await PersonatlityBulletFour.getText()).toEqual('Independence'); expect(await PersonatlityBulletFive.getText()).toEqual('Achievement/Effort'); expect(await PersonatlityBulletSix.getText()).toEqual('Initiative'); await XCloseLink.click().then(function() { browser.sleep(1000); }); browser.waitForAngular(); browser.getCurrentUrl(); }); } function Wages() { it(': Wages, should click the Wages link and change State drop down to Nevada', async function () { var WagesLink = element(by.css('tr:nth-child(5) > td:nth-child(1) > .text-color-7a')); var CurrentDataNational = element(by.css('g:nth-child(2) > g > text')); var CurrentDataLocal = element(by.css('g:nth-child(3) > g > text')); var XCloseLink = element(by.css('.close')); var ChangeLocationLink = element(by.css('.dropdown > .widgetRightControlContainer')); var ApplyButton = element(by.css('tr:nth-child(2) .btn-xs')); await WagesLink.click().then(function() { browser.sleep(2500); }); expect(await CurrentDataNational.getText()).toEqual('National'); expect(await CurrentDataLocal.getText()).toContain('San Diego-Carlsbad, CA'); await ChangeLocationLink.click().then(function() { browser.sleep(1000); }); element(by.cssContainingText('option', 'Nevada')).click().then(function() { browser.sleep(1000); }); await ApplyButton.click().then(function() { browser.sleep(2500); }); expect(await CurrentDataNational.getText()).toEqual('National'); expect(await CurrentDataLocal.getText()).toEqual('Nevada'); await XCloseLink.click().then(function() { browser.sleep(1000); }); browser.waitForAngular(); browser.getCurrentUrl(); }); } function Degrees() { it(': Degrees, should click the Degrees link, expand/collapse first career card by title and validate data', async function () { var DegreesLink = element(by.css('tr:nth-child(3) > td:nth-child(2) > .text-color-7a')); var DegreesWidgetTitle = element(by.css('.ng-scope > .fullHeight > .ng-binding')); var DegreeTitle = element(by.css('.item:nth-child(1) > .col-xs-12:nth-child(1) .textSize:nth-child(1)')); var DegreesEllipsis = element(by.css('.item:nth-child(1) > .col-xs-12:nth-child(1) .col-sm-1')); var DegreeDetails = element(by.css('#dropDownSocialOptionsComputerApplicationsMinorCollegeWideDegrees63f93734c4e948cd8ff4041e10760da5 .row:nth-child(4) > .col-xs-9')); var InstitutionTitle = element(by.css('#dropDownDataComputerApplicationsMinorCollegeWideDegrees63f93734c4e948cd8ff4041e10760da5 > .row:nth-child(2) .item-title')); var InstitutionData = element(by.css('#dropDownDataComputerApplicationsMinorCollegeWideDegrees63f93734c4e948cd8ff4041e10760da5 > .row:nth-child(2) .item-body > .ng-binding')); var CourseTitle = element(by.css('#dropDownDataComputerApplicationsMinorCollegeWideDegrees63f93734c4e948cd8ff4041e10760da5 > .row:nth-child(3) .item-title')); var CourseData = element(by.css('#dropDownDataComputerApplicationsMinorCollegeWideDegrees63f93734c4e948cd8ff4041e10760da5 > .row:nth-child(3) .item-body > .ng-binding')); var OccupationTitle = element(by.css('#dropDownDataComputerApplicationsMinorCollegeWideDegrees63f93734c4e948cd8ff4041e10760da5 > .row:nth-child(4) .item-title')); var OccupationData = element(by.css('#dropDownDataComputerApplicationsMinorCollegeWideDegrees63f93734c4e948cd8ff4041e10760da5 > .row:nth-child(4) .item-body > .ng-binding')); var SalaryTitle = element(by.css('#dropDownDataComputerApplicationsMinorCollegeWideDegrees63f93734c4e948cd8ff4041e10760da5 > .row:nth-child(5) .item-title')); var SalaryData = element(by.css('#dropDownDataComputerApplicationsMinorCollegeWideDegrees63f93734c4e948cd8ff4041e10760da5 > .row:nth-child(5) .item-body > .ng-binding')); var DegreeXCloseIcon = element(by.css('#dropDownDataComputerApplicationsMinorCollegeWideDegrees63f93734c4e948cd8ff4041e10760da5 > .col-xs-1')); var CarrouselRightScroll = element(by.css('.table-height:nth-child(2) .right > .glyphicon')); var XCloseLink = element(by.css('.close')); await DegreesLink.click().then(function() { browser.sleep(2500); }); expect(await DegreesWidgetTitle.getText()).toEqual('Degrees'); expect(await DegreeTitle.getText()).toEqual('Computer Applications Minor—College-Wide'); await DegreesEllipsis.click().then(function() { browser.sleep(1000); }); await DegreeDetails.click().then(function() { browser.sleep(1000); }); expect(await InstitutionTitle.getText()).toEqual('Institutions'); expect(await InstitutionData.getText()).toEqual('2,419'); expect(await CourseTitle.getText()).toEqual('Courses'); expect(await CourseData.getText()).toEqual('0'); expect(await OccupationTitle.getText()).toEqual('Occupations'); expect(await OccupationData.getText()).toEqual('75'); expect(await SalaryTitle.getText()).toEqual('Average Salary'); expect(await SalaryData.getText()).toEqual('$98,931'); await DegreeXCloseIcon.click().then(function() { browser.sleep(1000); }); await DegreesEllipsis.click().then(function() { browser.sleep(1000); }); await CarrouselRightScroll.click().then(function() { browser.sleep(1000); }); await XCloseLink.click().then(function() { browser.sleep(1000); }); browser.waitForAngular(); browser.getCurrentUrl(); }); } function Certificates() { it(': Certificates, should click the Certificate link, expand/collapse first card by ellipsis validate data and scroll to second set', async function () { var CertificatesLink = element(by.css('tr:nth-child(4) > td:nth-child(2) > .text-color-7a')); var CertificatesWidgetTitle = element(by.css('.ng-scope > .fullHeight > .ng-binding')); var CertificateTitle = element(by.css('.item:nth-child(1) > .col-xs-12:nth-child(1) .textSize:nth-child(1)')); var CertificateSubTitle = element(by.css('.item:nth-child(1) > .col-xs-12:nth-child(1) .text-color-4a')); var CertificatesEllipsis = element(by.css('.item:nth-child(1) > .col-xs-12:nth-child(1) .col-sm-1')); var CertificateDetailsIcon = element(by.css('#dropDownSocialOptionsCertifiedAssociateLabVIEWDeveloperCertificates06943e36d76a4fcc9e67780aff668435 .row:nth-child(4) > .col-xs-9')); var EducationTitle = element(by.css('#dropDownDataCertifiedAssociateLabVIEWDeveloperCertificates06943e36d76a4fcc9e67780aff668435 > .row:nth-child(2) .item-title')); var EducationData = element(by.css('#dropDownDataCertifiedAssociateLabVIEWDeveloperCertificates06943e36d76a4fcc9e67780aff668435 > .row:nth-child(2) .item-body > .ng-binding')); var WorkExperienceTitle = element(by.css('#dropDownDataCertifiedAssociateLabVIEWDeveloperCertificates06943e36d76a4fcc9e67780aff668435 > .row:nth-child(3) .item-title')); var WorkExperienceData = element(by.css('#dropDownDataCertifiedAssociateLabVIEWDeveloperCertificates06943e36d76a4fcc9e67780aff668435 > .row:nth-child(3) .item-body > .ng-binding')); var ExamTitle = element(by.css('#dropDownDataCertifiedAssociateLabVIEWDeveloperCertificates06943e36d76a4fcc9e67780aff668435 > .row:nth-child(4) .item-title')); var ExamData = element(by.css('#dropDownDataCertifiedAssociateLabVIEWDeveloperCertificates06943e36d76a4fcc9e67780aff668435 > .row:nth-child(4) .item-body > .ng-binding')); var RenewalTitle = element(by.css('#dropDownDataCertifiedAssociateLabVIEWDeveloperCertificates06943e36d76a4fcc9e67780aff668435 > .row:nth-child(5) .item-title')); var RenewalData = element(by.css('#dropDownDataCertifiedAssociateLabVIEWDeveloperCertificates06943e36d76a4fcc9e67780aff668435 > .row:nth-child(5) .item-body > .ng-binding')); var CertificateXCloseIcon = element(by.css('#dropDownDataCertifiedAssociateLabVIEWDeveloperCertificates06943e36d76a4fcc9e67780aff668435 > .col-xs-1')) var CarrouselRightScroll = element(by.css('.table-height:nth-child(2) .right > .glyphicon')); var XCloseLink = element(by.css('.close')); await CertificatesLink.click().then(function() { browser.sleep(2500); }); expect(await CertificatesWidgetTitle.getText()).toEqual('Certificates'); expect(await CertificateTitle.getText()).toEqual('Certified Associate LabVIEW Developer'); expect(await CertificateSubTitle.getText()).toEqual('Business Analysis'); await CertificatesEllipsis.click(); browser.sleep(1000); await CertificateDetailsIcon.click(); browser.sleep(1000); expect(await EducationTitle.getText()).toEqual('Education and Training Required'); expect(await EducationData.getText()).toEqual('No'); expect(await WorkExperienceTitle.getText()).toEqual('Work Experience Required'); expect(await WorkExperienceData.getText()).toEqual('No'); expect(await ExamTitle.getText()).toEqual('Oral or Written Exam Required'); expect(await ExamData.getText()).toEqual('Yes'); expect(await RenewalTitle.getText()).toEqual('Renewal Required'); expect(await RenewalData.getText()).toEqual('No'); await CertificateXCloseIcon.click(); browser.sleep(1000); await CertificatesEllipsis.click(); browser.sleep(1000); await CarrouselRightScroll.click(); browser.sleep(1000); await XCloseLink.click().then(function() { browser.sleep(1000); }); browser.waitForAngular(); browser.getCurrentUrl(); }); } function Institutions() { it(': Institutions, should click the Institutions link, scroll to second set, expand by ellipsis, and validate data', async function () { var InstitutionsLink = element(by.css('tr:nth-child(5) > td:nth-child(2) > .text-color-7a')); var InstitutionsWidgetTitle = element(by.xpath('//recommended-colleges/div/div/div')); var CarrouselRightScroll = element(by.css('#recommendedColleges .right > .glyphicon')); var SchoolNameTitle = element(by.css('.item:nth-child(2) > .col-xs-12:nth-child(2) .textSize')); var InstitutionsEllipsis = element(by.css('.item:nth-child(2) > .col-xs-12:nth-child(2) .col-sm-1')); var InstitutionsFollowIcon = element(by.css('#dropDownSocialOptionsInstitutions_1_1 .journey-follow')); var InstitutionsDetailsIcon = element(by.css('#dropDownSocialOptionsInstitutions_1_1 .journey-info')); var UndergraduateTitle = element(by.css('#dropDownDataInstitutions_1_1 > .row:nth-child(2) .item-title')); var UndergraduateData = element(by.css('#dropDownDataInstitutions_1_1 > .row:nth-child(2) .ng-binding > span')); var NotRated = element(by.css('#dropDownDataInstitutions_1_1 > .row:nth-child(2) .item-body div')); var TuitionTitle = element(by.css('#dropDownDataInstitutions_1_1 > .row:nth-child(3) .item-title')); var TuitionData = element(by.css('#dropDownDataInstitutions_1_1 > .row:nth-child(3) .ng-binding > span')); var TuitionAverage = element(by.css('#dropDownDataInstitutions_1_1 > .row:nth-child(3) .item-body div')); var GraduateTitle = element(by.css('#dropDownDataInstitutions_1_1 > .row:nth-child(4) .item-title')); var GraduateData = element(by.css('#dropDownDataInstitutions_1_1 > .row:nth-child(4) .ng-binding > span')); var GraduateAverage = element(by.css('#dropDownDataInstitutions_1_1 > .row:nth-child(4) .item-body div')); var EarningsTitle = element(by.css('#dropDownDataInstitutions_1_1 > .row:nth-child(5) .item-title')); var EarningsData = element(by.css('#dropDownDataInstitutions_1_1 > .row:nth-child(5) .ng-binding > span')); var EarningsAverage = element(by.css('#dropDownDataInstitutions_1_1 > .row:nth-child(5) .item-body div')); var InstitutionsDetailsXCloseLink = element(by.css('#dropDownDataInstitutions_1_1 > .col-xs-1')); var InstitutionsUnFollowIcon = element(by.css('.col-xs-2 .journey-follow-selected')); var CarrouselLeftScroll = element(by.css('#recommendedColleges .left > .glyphicon')); var XCloseLink = element(by.css('.close')); await InstitutionsLink.click().then(function() { browser.sleep(2500); }); expect(await InstitutionsWidgetTitle.getText()).toEqual('Institutions View All'); await CarrouselRightScroll.click(); browser.sleep(1000); //Bug - Incorrect institution being loaded at times(Golden Gate University-San Francisco) await SchoolNameTitle.getText().then(async function(actualText) { if(actualText.indexOf('San Diego State University') !== -1) { expect(await SchoolNameTitle.getText()).toEqual('San Diego State University'); await InstitutionsEllipsis.click().then(function() { browser.sleep(1000); }); await InstitutionsFollowIcon.click().then(function() { browser.sleep(1000); }); await InstitutionsDetailsIcon.click().then(function() { browser.sleep(1000); }); expect(await UndergraduateTitle.getText()).toEqual('Undergraduate Students'); expect(await UndergraduateData.getText()).toEqual('29,781'); expect(await NotRated.getText()).toEqual('Not Rated'); expect(await TuitionTitle.getText()).toEqual('Tuition'); expect(await TuitionData.getText()).toEqual('$14,030'); expect(await TuitionAverage.getText()).toEqual('Lower Than Average'); expect(await GraduateTitle.getText()).toEqual('Graduation Rate'); expect(await GraduateData.getText()).toEqual('74%'); expect(await GraduateAverage.getText()).toEqual('Above Average'); expect(await EarningsTitle.getText()).toEqual('Earnings After School'); expect(await EarningsData.getText()).toEqual('$51,000'); expect(await EarningsAverage.getText()).toEqual('Above Average'); } else { expect(await SchoolNameTitle.getText()).toEqual('Golden Gate University-San Francisco'); await InstitutionsEllipsis.click().then(function() { browser.sleep(1000); }); await InstitutionsFollowIcon.click().then(function() { browser.sleep(1000); }); await InstitutionsDetailsIcon.click().then(function() { browser.sleep(1000); }); expect(await UndergraduateTitle.getText()).toEqual('Undergraduate Students'); expect(await UndergraduateData.getText()).toEqual('416'); expect(await NotRated.getText()).toEqual('Not Rated'); expect(await TuitionTitle.getText()).toEqual('Tuition'); expect(await GraduateTitle.getText()).toEqual('Graduation Rate'); expect(await EarningsTitle.getText()).toEqual('Earnings After School'); expect(await EarningsData.getText()).toEqual('$71,100'); expect(await EarningsAverage.getText()).toEqual('Above Average'); } }); await InstitutionsDetailsXCloseLink.click(); browser.sleep(1000); await InstitutionsUnFollowIcon.click(); browser.sleep(1000); await InstitutionsEllipsis.click(); browser.sleep(1000); await CarrouselLeftScroll.click(); browser.sleep(1000); await XCloseLink.click().then(function() { browser.sleep(1000); }); browser.waitForAngular(); browser.getCurrentUrl(); }); } function TopResources() { it(': TopResources, should click Top Resources link and expand fourth then expand first card and follow', async function () { var TopResourcesLink = element(by.css('tr:nth-child(3) > td:nth-child(3) > .text-color-7a')); var TopResourcesDivTitle = element(by.css('.col-sm-12 > .ng-binding')); var FourthResourceCardTitle = element(by.css('.panel:nth-child(4) .ng-binding')); var FirstResourceCardTitle = element(by.css('.panel:nth-child(1) .ng-binding')); var FirstResourceCardEllipsis = element(by.css('.panel:nth-child(1) .glyphicon')); var FirstFollowResourceIcon = element(by.css('.panel:nth-child(1) .col-xs-10:nth-child(1) > div:nth-child(1) span:nth-child(2)')); var FirstResourceLearnMoreIcon = element(by.css('.panel:nth-child(1) .row:nth-child(2) div:nth-child(2) span:nth-child(2)')); var XCloseLink = element(by.css('.close')); await TopResourcesLink.click().then(function() { browser.sleep(2500); }); expect(await TopResourcesDivTitle.getText()).toEqual('Computer and Information Research Scientists'); expect(await FourthResourceCardTitle.getText()).toEqual('Computer and Information Research Scientists'); await FourthResourceCardTitle.click(); browser.sleep(1000); expect(await FirstResourceCardTitle.getText()).toEqual('Computer and Information Research Scientists (Information Technology)'); await FirstResourceCardEllipsis.click(); browser.sleep(1000); expect(await FirstFollowResourceIcon.getText()).toEqual('Follow'); await FirstResourceLearnMoreIcon.click(); browser.sleep(5000); browser.getAllWindowHandles().then(function (handles) { //var SecondWindowHandle = handles[1]; //var FirstWindowHandle = handles[0]; browser.driver.switchTo().window(handles[1]).then(async function () { browser.sleep(10000); expect(await browser.driver.getCurrentUrl()).toEqual("https://www.onetonline.org/link/summary/15-1111.00"); browser.driver.close(); browser.sleep(2500); browser.driver.switchTo().window(handles[0]); expect(await FirstResourceCardTitle.getText()).toEqual('Computer and Information Research Scientists (Information Technology)'); }); }); /*browser.driver.switchTo().window(handles[0]).then(async function () { browser.sleep(5000); expect(await FirstResourceCardTitle.getText()).toEqual('Computer and Information Research Scientists (Information Technology)'); });*/ //}); await XCloseLink.click().then(function() { browser.sleep(1000); }); browser.waitForAngular(); browser.getCurrentUrl(); }); } function FindOpportunities() { it(': FindOpportunities, should click Find Opportunities link', async function () { var FindOpportunitiesLink = element(by.css('tr:nth-child(4) > td:nth-child(3) > .text-color-7a')); var FindOpportunitiesWidgetTitle = element(by.css('.col-xs-12 > h6:nth-child(1) > .ng-binding')); var XCloseLink = element(by.css('.close')); await FindOpportunitiesLink.click().then(function() { browser.sleep(2500); }); expect(await FindOpportunitiesWidgetTitle.getText()).toContain('Job Listings:');//stored value needed browser.waitForAngular(); await XCloseLink.click().then(function() { browser.sleep(1000); }); browser.waitForAngular(); browser.getCurrentUrl(); }); } function SubmitAResource() { it(': SubmitAResource, should click Find Resources link', async function () { var SubmitAResourceLink = element(by.css('tr:nth-child(5) > td:nth-child(3) > .text-color-7a')); var SubmitAResourceWidgetTitle = element(by.css('.jrnys_lead-body-copy > .row > .col-xs-12')); var SubmitAResourceSubTextOne = element(by.css('.row:nth-child(2) > .col-sm-12')); var TotalInJourneysText = element(by.css('.col-xs-offset-1 .col-xs-offset-1')); var TotalInJourneysValue = element(by.css('.col-xs-offset-1 > .row .jrnys_lead-body-copy')); var TotalInJourneysDivTitle = element(by.css('.col-sm-12 > .ng-binding')); var MyResourceTitle = element(by.css('.row > .row .ng-binding')); var XCloseLDivLinkOne = element(by.css('div:nth-child(2) > .close')); var ForThisMapPointText = element(by.css('.display-right .col-xs-offset-1')); var ForThisMapPointValue = element(by.css('.display-right .jrnys_lead-body-copy')); var SubmitAResourceSubTextTwo = element(by.css('.row:nth-child(4) > .col-sm-12')); var SubmitAResourceButton = element(by.css('.col-sm-12 > .jrnys_support-text')); var WidgetDivTitle = element(by.css('h3')); var WebsiteURLLink = element(by.css('.Tag:nth-child(2) > label')); var XCloseDivLinkTwo = element(by.css('.modal-header > .close')); var XCloseLink = element(by.css('.close')); await SubmitAResourceLink.click().then(function() { browser.sleep(2500); }); expect(await SubmitAResourceWidgetTitle.getText()).toEqual('Submit a Resource'); expect(await SubmitAResourceSubTextOne.getText()).toEqual("Here's a summary of your submitted Resources"); expect(await TotalInJourneysText.getText()).toContain('Total in Journeys'); expect(await TotalInJourneysValue.getText()).toEqual('1'); await TotalInJourneysValue.click().then(function() { browser.sleep(1000); }); expect(await TotalInJourneysDivTitle.getText()).toEqual('My Submitted Resources'); expect(await MyResourceTitle.getText()).toEqual('Test Doc'); await XCloseLDivLinkOne.click().then(function() { browser.sleep(1000); }); expect(await ForThisMapPointText.getText()).toContain('For this map point'); expect(await ForThisMapPointValue.getText()).toEqual('0'); expect(await SubmitAResourceSubTextTwo.getText()).toEqual('Help expand the system by submitting a resource.'); browser.waitForAngular(); await SubmitAResourceButton.click(); browser.waitForAngular(); expect(await WidgetDivTitle.getText()).toEqual('Submit a Resource'); browser.waitForAngular(); WebsiteURLLink.click(); await XCloseDivLinkTwo.click().then(function() { browser.sleep(1000); }); browser.waitForAngular(); await XCloseLink.click().then(function() { browser.sleep(1000); }); browser.waitForAngular(); browser.getCurrentUrl(); }); } function NearbyPlaces() { it(': NearbyPlaces, should click Nearby Places link, expand 1st card and play video', async function () { var NearbyPlacesLink = element(by.css('tr:nth-child(3) > td:nth-child(4) > .text-color-7a')); var NearbyPlcaesWidgetTitle = element(by.css('.ng-scope > .fullHeight > .ng-binding')); var NearbyPlacesTitle = element(by.id('territoryCardMobileTitle')); var NearbyPlacesEllipsis = element(by.css('#\\35 d1377f6-b0bc-4750-945e-1f0d12df3807 .territoryCardIcon > .fas')); var VideoIcon = element(by.css('#\\35 d1377f6-b0bc-4750-945e-1f0d12df3807 > div > table > tbody > tr:nth-child(3) > td > div > div:nth-child(1) > territory-card-more-back > div > div > div:nth-child(5) > div.territoryCardIconBackOfCard > career-one-stop-video > i'));//#dropDownSocialOptionsComputerandInformationResearchScientistsNearbyPlacesundefined .far')); var VideoTitle = element(by.css('.modal-content > .ng-scope > div > .ng-binding')); var XCloseVideoDivLink = element(by.css('.close:nth-child(2)')); var NearbyPlacesAtAGlanceIcon = element(by.css('#\\35 d1377f6-b0bc-4750-945e-1f0d12df3807 > div > table > tbody > tr:nth-child(3) > td > div > div:nth-child(1) > territory-card-more-back > div > div > div:nth-child(6) > div.territoryCardIconBackOfCard > i')); var NearbyPlacesDescription = element(by.css('#\\35 d1377f6-b0bc-4750-945e-1f0d12df3807 > div > table > tbody > tr:nth-child(3) > td > div > div:nth-child(2) > territory-card-at-a-glance-back > div > div.territoryCardDescriptionText.ng-binding')); var TypicalDegreeTitle = element(by.css('#\\35 d1377f6-b0bc-4750-945e-1f0d12df3807 > div > table > tbody > tr:nth-child(3) > td > div > div:nth-child(2) > territory-card-at-a-glance-back > div > div.ng-scope > div > div > table > tbody > tr:nth-child(1) > td:nth-child(2) > div')); var DegreeDataOne = element(by.css('#\\35 d1377f6-b0bc-4750-945e-1f0d12df3807 > div > table > tbody > tr:nth-child(3) > td > div > div:nth-child(2) > territory-card-at-a-glance-back > div > div.ng-scope > div > div > table > tbody > tr:nth-child(2) > td:nth-child(2) > div')); var DegreeDataTwo = element(by.css('#\\35 d1377f6-b0bc-4750-945e-1f0d12df3807 > div > table > tbody > tr:nth-child(3) > td > div > div:nth-child(2) > territory-card-at-a-glance-back > div > div.ng-scope > div > div > table > tbody > tr:nth-child(3) > td:nth-child(2) > div')); var DegreeDataThree = element(by.css('#\\35 d1377f6-b0bc-4750-945e-1f0d12df3807 > div > table > tbody > tr:nth-child(3) > td > div > div:nth-child(2) > territory-card-at-a-glance-back > div > div.ng-scope > div > div > table > tbody > tr:nth-child(4) > td:nth-child(2) > div')); var SalaryTitle = element(by.css('#\\35 d1377f6-b0bc-4750-945e-1f0d12df3807 > div > table > tbody > tr:nth-child(3) > td > div > div:nth-child(2) > territory-card-at-a-glance-back > div > div.ng-scope > div > div > table > tbody > tr:nth-child(16) > td:nth-child(2) > div')); var SalaryData = element(by.css('#\\35 d1377f6-b0bc-4750-945e-1f0d12df3807 > div > table > tbody > tr:nth-child(3) > td > div > div:nth-child(2) > territory-card-at-a-glance-back > div > div.ng-scope > div > div > table > tbody > tr:nth-child(17) > td:nth-child(2) > div')); var GrowthTitle = element(by.css('#\\35 d1377f6-b0bc-4750-945e-1f0d12df3807 > div > table > tbody > tr:nth-child(3) > td > div > div:nth-child(2) > territory-card-at-a-glance-back > div > div.ng-scope > div > div > table > tbody > tr:nth-child(19) > td:nth-child(2) > div')); var GrowthDataOne = element(by.css('#\\35 d1377f6-b0bc-4750-945e-1f0d12df3807 > div > table > tbody > tr:nth-child(3) > td > div > div:nth-child(2) > territory-card-at-a-glance-back > div > div.ng-scope > div > div > table > tbody > tr:nth-child(20) > td.territoryCardBackOfCardItemText > div:nth-child(1)')); var GrowthDataTwo = element(by.css('#\\35 d1377f6-b0bc-4750-945e-1f0d12df3807 > div > table > tbody > tr:nth-child(3) > td > div > div:nth-child(2) > territory-card-at-a-glance-back > div > div.ng-scope > div > div > table > tbody > tr:nth-child(20) > td.territoryCardBackOfCardItemText > div:nth-child(3)')); var OpeningsTitle = element(by.css('#\\35 d1377f6-b0bc-4750-945e-1f0d12df3807 > div > table > tbody > tr:nth-child(3) > td > div > div:nth-child(2) > territory-card-at-a-glance-back > div > div.ng-scope > div > div > table > tbody > tr:nth-child(22) > td:nth-child(2) > div')); var OpeningsData = element(by.css('#\\35 d1377f6-b0bc-4750-945e-1f0d12df3807 > div > table > tbody > tr:nth-child(3) > td > div > div:nth-child(2) > territory-card-at-a-glance-back > div > div.ng-scope > div > div > table > tbody > tr:nth-child(23) > td:nth-child(2) > div')); var EmployedTitle = element(by.css('#\\35 d1377f6-b0bc-4750-945e-1f0d12df3807 > div > table > tbody > tr:nth-child(3) > td > div > div:nth-child(2) > territory-card-at-a-glance-back > div > div.ng-scope > div > div > table > tbody > tr:nth-child(25) > td:nth-child(2) > div')); var EmployedData = element(by.css('#\\35 d1377f6-b0bc-4750-945e-1f0d12df3807 > div > table > tbody > tr:nth-child(3) > td > div > div:nth-child(2) > territory-card-at-a-glance-back > div > div.ng-scope > div > div > table > tbody > tr:nth-child(26) > td:nth-child(2) > div')); var XCloseLink = element(by.css('.close')); //browser.actions().mouseMove(element(by.css('#id > .ng-scope > .jrnys_lead-body-copy'))).perform().then(function() { browser.executeScript('window.scrollTo(0, 1885);').then(function() { browser.sleep(2500); }); await NearbyPlacesLink.click().then(function() { browser.sleep(2500); }); browser.waitForAngular(); expect(await NearbyPlcaesWidgetTitle.getText()).toEqual('Nearby Places'); browser.waitForAngular(); expect(await NearbyPlacesTitle.getText()).toEqual('Computer and Information Systems Managers'); await NearbyPlacesEllipsis.click(); browser.sleep(2500); await VideoIcon.click().then(function() { browser.sleep(10000); }); expect(await VideoTitle.getText()).toEqual('Computer and Information Systems Managers'); await XCloseVideoDivLink.click().then(function() { browser.sleep(2500); }); await NearbyPlacesAtAGlanceIcon.click().then(function() { browser.sleep(2500); }); expect(await NearbyPlacesDescription.getText()).toEqual('Plan, direct, or coordinate activities in such fields as electronic data processing, information systems, systems analysis, and computer programming.'); expect(await TypicalDegreeTitle.getText()).toEqual('Typical Degree'); expect(await DegreeDataOne.getText()).toEqual('College (4 Year) - 48%'); expect(await DegreeDataTwo.getText()).toEqual('Some college - 26%'); expect(await DegreeDataThree.getText()).toEqual("Master's degree - 14%"); expect(await SalaryTitle.getText()).toEqual('Average Annual Salary'); expect(await SalaryData.getText()).toEqual('$139,220'); expect(await GrowthTitle.getText()).toEqual('Projected Growth'); expect(await GrowthDataOne.getText()).toEqual('12%'); expect(await GrowthDataTwo.getText()).toEqual('ABOVE AVERAGE'); expect(await OpeningsTitle.getText()).toEqual('Projected Job Openings'); expect(await OpeningsData.getText()).toEqual('32,500'); expect(await EmployedTitle.getText()).toEqual('Currently Employed'); expect(await EmployedData.getText()).toEqual('367,600'); browser.waitForAngular(); await XCloseLink.click().then(function() { browser.sleep(1000); }); browser.waitForAngular(); browser.getCurrentUrl(); }); } function Tasks() { it(': Tasks, should click Tasks link and validate data', async function () { var TasksLink = element(by.css('tr:nth-child(4) > td:nth-child(4) > .text-color-7a')); var WidgetTitle = element(by.css('h6 > .ng-binding')); var ImportanceHeader = element(by.css('th:nth-child(2) > .text-color-7a')); var CategoryHeader = element(by.css('th:nth-child(3) > .text-color-7a')); var TasksRowOne = element(by.css('tbody:nth-child(2) > .ng-scope:nth-child(1) > .ng-binding:nth-child(1)')); var ImportanceStatOne = element(by.css('.ng-scope:nth-child(1) > .text-color-7a:nth-child(2)')); var CategoryStatOne = element(by.css('.ng-scope:nth-child(1) > .text-center:nth-child(3)')); var TasksRowTwo = element(by.css('.ng-scope:nth-child(2) > .ng-binding:nth-child(1)')); var ImportanceStatTwo = element(by.css('.ng-scope:nth-child(2) > .text-color-7a:nth-child(2)')); var CategoryStatTwo = element(by.css('.ng-scope:nth-child(2) > .text-center:nth-child(3)')); var TasksRowThree = element(by.css('.ng-scope:nth-child(3) > .ng-binding:nth-child(1)')); var ImportanceStatThree = element(by.css('.ng-scope:nth-child(3) > .text-color-7a:nth-child(2)')); var CategoryStatThree = element(by.css('.ng-scope:nth-child(3) > .text-center:nth-child(3)')); var TasksRowFour = element(by.css('.ng-scope:nth-child(4) > .ng-binding:nth-child(1)')); var ImportanceStatFour = element(by.css('.ng-scope:nth-child(4) > .text-color-7a:nth-child(2)')); var CategoryStatFour = element(by.css('.ng-scope:nth-child(4) > .text-center:nth-child(3)')); var TasksRowFive = element(by.css('.ng-scope:nth-child(5) > .ng-binding:nth-child(1)')); var ImportanceStatFive = element(by.css('.ng-scope:nth-child(5) > .text-color-7a:nth-child(2)')); var CategoryStatFive = element(by.css('.ng-scope:nth-child(5) > .text-center:nth-child(3)')); var TasksRowSix = element(by.css('.ng-scope:nth-child(6) > .ng-binding:nth-child(1)')); var ImportanceStatSix = element(by.css('.ng-scope:nth-child(6) > .text-color-7a:nth-child(2)')); var CategoryStatSix = element(by.css('.ng-scope:nth-child(6) > .text-center:nth-child(3)')); var TasksRowSeven = element(by.css('.ng-scope:nth-child(7) > .ng-binding:nth-child(1)')); var ImportanceStatSeven = element(by.css('.ng-scope:nth-child(7) > .text-color-7a:nth-child(2)')); var CategoryStatSeven = element(by.css('.ng-scope:nth-child(7) > .text-center:nth-child(3)')); var TasksRowEight = element(by.css('.ng-scope:nth-child(8) > .ng-binding:nth-child(1)')); var ImportanceStatEight = element(by.css('.ng-scope:nth-child(8) > .text-color-7a:nth-child(2)')); var CategoryStatEight = element(by.css('.ng-scope:nth-child(8) > .text-center:nth-child(3)')); var TasksRowNine = element(by.css('.ng-scope:nth-child(9) > .ng-binding:nth-child(1)')); var ImportanceStatNine = element(by.css('.ng-scope:nth-child(9) > .text-color-7a:nth-child(2)')); var CategoryStatNine = element(by.css('.ng-scope:nth-child(9) > .text-center:nth-child(3)')); var TasksRowTen = element(by.css('.ng-scope:nth-child(10) > .ng-binding:nth-child(1)')); var ImportanceStatTen = element(by.css('.ng-scope:nth-child(10) > .text-color-7a:nth-child(2)')); var CategoryStatTen= element(by.css('.ng-scope:nth-child(10) > .text-center:nth-child(3)')); var TasksRowEleven = element(by.css('.ng-scope:nth-child(11) > .ng-binding:nth-child(1)')); var ImportanceStatEleven = element(by.css('.ng-scope:nth-child(11) > .text-color-7a:nth-child(2)')); var CategoryStatEleven = element(by.css('.ng-scope:nth-child(11) > .text-center:nth-child(3)')); var TasksRowTwelve = element(by.css('.ng-scope:nth-child(12) > .ng-binding:nth-child(1)')); var ImportanceStatTwelve = element(by.css('.ng-scope:nth-child(12) > .text-color-7a:nth-child(2)')); var CategoryStatTwelve = element(by.css('.ng-scope:nth-child(12) > .text-center:nth-child(3)')); var TasksRowThirteen = element(by.css('.ng-scope:nth-child(13) > .ng-binding:nth-child(1)')); var ImportanceStatThirteen = element(by.css('.ng-scope:nth-child(13) > .text-color-7a:nth-child(2)')); var CategoryStatThirteen = element(by.css('.ng-scope:nth-child(13) > .text-center:nth-child(3)')); var TasksRowFourteen = element(by.css('.ng-scope:nth-child(14) > .ng-binding:nth-child(1)')); var ImportanceStatFourteen = element(by.css('.ng-scope:nth-child(14) > .text-color-7a:nth-child(2)')); var CategoryStatFourteen = element(by.css('.ng-scope:nth-child(14) > .text-center:nth-child(3)')); var TasksRowFifteen = element(by.css('.ng-scope:nth-child(15) > .ng-binding:nth-child(1)')); var ImportanceStatFifteen = element(by.css('.ng-scope:nth-child(15) > .text-color-7a:nth-child(2)')); var CategoryStatFifteen = element(by.css('.ng-scope:nth-child(15) > .text-center:nth-child(3)')); var XCloseLink = element(by.css('.close')); await TasksLink.click().then(function() { browser.sleep(2500); }); expect(await WidgetTitle.getText()).toEqual('Tasks'); expect(await ImportanceHeader.getText()).toEqual('Importance'); expect(await CategoryHeader.getText()).toEqual('Category'); expect(await TasksRowOne.getText()).toEqual('Analyze problems to develop solutions involving computer hardware and software.'); expect(await ImportanceStatOne.getText()).toEqual('82%'); expect(await CategoryStatOne.getText()).toEqual('Core'); expect(await TasksRowTwo.getText()).toEqual('Assign or schedule tasks to meet work priorities and goals.'); expect(await ImportanceStatTwo.getText()).toEqual('71%'); expect(await CategoryStatTwo.getText()).toEqual('Core'); expect(await TasksRowThree.getText()).toEqual('Evaluate project plans and proposals to assess feasibility issues.'); expect(await ImportanceStatThree.getText()).toEqual('70%'); expect(await CategoryStatThree.getText()).toEqual('Core'); expect(await TasksRowFour.getText()).toEqual('Apply theoretical expertise and innovation to create or apply new technology, such as adapting principles for applying computers to new uses.'); expect(await ImportanceStatFour.getText()).toEqual('66%'); expect(await CategoryStatFour.getText()).toEqual('Core'); expect(await TasksRowFive.getText()).toEqual('Consult with users, management, vendors, and technicians to determine computing needs and system requirements.'); expect(await ImportanceStatFive.getText()).toEqual('66%'); expect(await CategoryStatFive.getText()).toEqual('Core'); expect(await TasksRowSix.getText()).toEqual('Meet with managers, vendors, and others to solicit cooperation and resolve problems.'); expect(await ImportanceStatSix.getText()).toEqual('64%'); expect(await CategoryStatSix.getText()).toEqual('Core'); expect(await TasksRowSeven.getText()).toEqual('Conduct logical analyses of business, scientific, engineering, and other technical problems, formulating mathematical models of problems for solution by computers.'); expect(await ImportanceStatSeven.getText()).toEqual('63%'); expect(await CategoryStatSeven.getText()).toEqual('Core'); expect(await TasksRowEight.getText()).toEqual('Develop and interpret organizational goals, policies, and procedures.'); expect(await ImportanceStatEight.getText()).toEqual('59%'); expect(await CategoryStatEight.getText()).toEqual('Core'); expect(await TasksRowNine.getText()).toEqual('Participate in staffing decisions and direct training of subordinates.'); expect(await ImportanceStatNine.getText()).toEqual('54%'); expect(await CategoryStatNine.getText()).toEqual('Core'); expect(await TasksRowTen.getText()).toEqual('Develop performance standards, and evaluate work in light of established standards.'); expect(await ImportanceStatTen.getText()).toEqual('51%'); expect(await CategoryStatTen.getText()).toEqual('Core'); expect(await TasksRowEleven.getText()).toEqual('Design computers and the software that runs them.'); expect(await ImportanceStatEleven.getText()).toEqual('74%'); expect(await CategoryStatEleven .getText()).toEqual('Supplemental'); expect(await TasksRowTwelve.getText()).toEqual('Maintain network hardware and software, direct network security measures, and monitor networks to ensure availability to system users.'); expect(await ImportanceStatTwelve.getText()).toEqual('65%'); expect(await CategoryStatTwelve.getText()).toEqual('Supplemental'); expect(await TasksRowThirteen.getText()).toEqual('Participate in multidisciplinary projects in areas such as virtual reality, human-computer interaction, or robotics.'); expect(await ImportanceStatThirteen.getText()).toEqual('62%'); expect(await CategoryStatThirteen.getText()).toEqual('Supplemental'); expect(await TasksRowFourteen.getText()).toEqual('Approve, prepare, monitor, and adjust operational budgets.'); expect(await ImportanceStatFourteen.getText()).toEqual('58%'); expect(await CategoryStatFourteen.getText()).toEqual('Supplemental'); expect(await TasksRowFifteen.getText()).toEqual('Direct daily operations of departments, coordinating project activities with other departments.'); expect(await ImportanceStatFifteen.getText()).toEqual('50%'); expect(await CategoryStatFifteen.getText()).toEqual('Supplemental'); browser.waitForAngular(); await XCloseLink.click().then(function() { browser.sleep(1000); }); browser.waitForAngular(); browser.getCurrentUrl(); }); } function Technology() { it(': Technology, should click Technology link and validate data', async function () { var TechnologyLink = element(by.css('tr:nth-child(5) > td:nth-child(4) > .text-color-7a')); var WidgetTitle = element(by.css('h6 > .ng-binding')); var TechnologyTitleOne = element(by.css('tbody:nth-child(2) > .ng-scope:nth-child(1) > .ng-binding')); var TechnologyDataOne = element(by.css('.ng-scope:nth-child(1) > .text-left > .ng-binding:nth-child(1)')); var TechnologyTitleTwo = element(by.css('.ng-scope:nth-child(2) > .ng-binding:nth-child(1)')); var TechnologyDataTwo = element(by.css('.ng-scope:nth-child(2) > .text-left > .ng-binding:nth-child(1)')); var TechnologyTitleThree = element(by.css('.ng-scope:nth-child(3) > .ng-binding')); var TechnologyDataThree = element(by.css('.ng-scope:nth-child(3) > .text-left > .ng-binding:nth-child(1)')); var TechnologyTitleFour = element(by.css('.ng-scope:nth-child(4) > .ng-binding')); var TechnologyDataFour = element(by.css('.ng-scope:nth-child(4) > .text-left > .ng-binding:nth-child(1)')); var TechnologyTitleFive = element(by.css('.ng-scope:nth-child(5) > .ng-binding')); var TechnologyDataFive = element(by.css('.ng-scope:nth-child(5) > .text-left > .ng-binding:nth-child(1)')); var TechnologyTitleSix = element(by.css('.ng-scope:nth-child(6) > .ng-binding')); var TechnologyDataSix = element(by.css('.ng-scope:nth-child(6) > .text-left > .ng-binding:nth-child(1)')); var TechnologyTitleSeven = element(by.css('.ng-scope:nth-child(7) > .ng-binding')); var TechnologyDataSeven = element(by.css('.ng-scope:nth-child(7) > .text-left > .ng-binding:nth-child(1)')); var TechnologyTitleEight = element(by.css('.ng-scope:nth-child(8) > .ng-binding')); var TechnologyDataEight = element(by.css('.ng-scope:nth-child(8) > .text-left > .ng-binding:nth-child(1)')); var TechnologyTitleNine = element(by.css('.ng-scope:nth-child(9) > .ng-binding')); var TechnologyDataNine = element(by.css('.ng-scope:nth-child(9) > .text-left > .ng-binding:nth-child(1)')); var TechnologyTitleTen = element(by.css('.ng-scope:nth-child(10) > .ng-binding')); var TechnologyDataTen = element(by.css('.ng-scope:nth-child(10) > .text-left > .ng-binding:nth-child(1)')); var TechnologyTitleEleven = element(by.css('.ng-scope:nth-child(11) > .ng-binding')); var TechnologyDataEleven = element(by.css('.ng-scope:nth-child(11) > .text-left > .ng-binding:nth-child(1)')); var TechnologyTitleTwelve = element(by.css('.ng-scope:nth-child(12) > .ng-binding')); var TechnologyDataTwelve = element(by.css('.ng-scope:nth-child(12) > .text-left > .ng-binding:nth-child(1)')); var TechnologyTitleThirteen = element(by.css('.ng-scope:nth-child(13) > .ng-binding')); var TechnologyDataThirteen = element(by.css('.ng-scope:nth-child(13) > .text-left > .ng-binding:nth-child(1)')); var TechnologyTitleFourteen = element(by.css('.ng-scope:nth-child(14) > .ng-binding')); var TechnologyDataFourteen = element(by.css('.ng-scope:nth-child(14) > .text-left > .ng-binding:nth-child(1)')); var TechnologyTitleFifteen = element(by.css('.ng-scope:nth-child(15) > .ng-binding')); var TechnologyDataFifteen = element(by.css('.ng-scope:nth-child(15) > .text-left > .ng-binding:nth-child(1)')); var TechnologyTitleSixteen = element(by.css('.ng-scope:nth-child(16) > .ng-binding')); var TechnologyDataSixteen = element(by.css('.ng-scope:nth-child(16) > .text-left > .ng-binding:nth-child(1)')); var TechnologyTitleSeventeen = element(by.css('.ng-scope:nth-child(17) > .ng-binding')); var TechnologyDataSeventeen = element(by.css('.ng-scope:nth-child(17) > .text-left > .ng-binding:nth-child(1)')); var TechnologyTitleEighteen = element(by.css('.ng-scope:nth-child(18) > .ng-binding')); var TechnologyDataEighteen = element(by.css('.ng-scope:nth-child(18) > .text-left > .ng-binding:nth-child(1)')); var TechnologyTitleNineteen = element(by.css('.ng-scope:nth-child(19) > .ng-binding')); var TechnologyDataNineteen = element(by.css('.ng-scope:nth-child(19) > .text-left > .ng-binding:nth-child(1)')); var TechnologyTitleTwenty = element(by.css('.ng-scope:nth-child(20) > .ng-binding')); var TechnologyDataTwenty = element(by.css('.ng-scope:nth-child(20) > .text-left > .ng-binding:nth-child(1)')); var TechnologyTitleTwentyOne = element(by.css('.ng-scope:nth-child(21) > .ng-binding')); var TechnologyDataTwentyOne = element(by.css('.ng-scope:nth-child(21) > .text-left > .ng-binding:nth-child(1)')); var TechnologyTitleTwentyTwo = element(by.css('.ng-scope:nth-child(22) > .ng-binding')); var TechnologyDataTwentyTwo = element(by.css('.ng-scope:nth-child(22) > .text-left > .ng-binding:nth-child(1)')); var TechnologyTitleTwentyThree = element(by.css('.ng-scope:nth-child(23) > .ng-binding')); var TechnologyDataTwentyThree = element(by.css('.ng-scope:nth-child(23) > .text-left > .ng-binding:nth-child(1)')); var TechnologyTitleTwentyFour = element(by.css('.ng-scope:nth-child(24) > .ng-binding')); var TechnologyDataTwentyFour = element(by.css('.ng-scope:nth-child(24) > .text-left > .ng-binding:nth-child(1)')); var TechnologyTitleTwentyFive = element(by.css('.ng-scope:nth-child(25) > .ng-binding')); var TechnologyDataTwentyFive = element(by.css('.ng-scope:nth-child(25) > .text-left > .ng-binding:nth-child(1)')); var TechnologyTitleTwentySix = element(by.css('.ng-scope:nth-child(26) > .ng-binding')); var TechnologyDataTwentySix = element(by.css('.ng-scope:nth-child(26) > .text-left > .ng-binding:nth-child(1)')); var TechnologyTitleTwentySeven = element(by.css('.ng-scope:nth-child(27) > .ng-binding')); var TechnologyDataTwentySeven = element(by.css('.ng-scope:nth-child(27) > .text-left > .ng-binding:nth-child(1)')); var TechnologyTitleTwentyEight = element(by.css('.ng-scope:nth-child(28) > .ng-binding')); var TechnologyDataTwentyEight = element(by.css('.ng-scope:nth-child(28) > .text-left > .ng-binding:nth-child(1)')); var TechnologyTitleTwentyNine = element(by.css('.ng-scope:nth-child(29) > .ng-binding')); var TechnologyDataTwentyNine = element(by.css('.ng-scope:nth-child(29) > .text-left > .ng-binding:nth-child(1)')); var TechnologyTitleThirty = element(by.css('.ng-scope:nth-child(30) > .ng-binding')); var TechnologyDataThirty = element(by.css('.ng-scope:nth-child(30) > .text-left > .ng-binding:nth-child(1)')); var TechnologyTitleThirtyOne = element(by.css('.ng-scope:nth-child(31) > .ng-binding')); var TechnologyDataThirtyOne = element(by.css('.ng-scope:nth-child(31) > .text-left > .ng-binding:nth-child(1)')); var TechnologyTitleThirtyTwo = element(by.css('.ng-scope:nth-child(32) > .ng-binding')); var TechnologyDataThirtyTwo = element(by.css('.ng-scope:nth-child(32) > .text-left > .ng-binding:nth-child(1)')); var TechnologyTitleThirtyThree = element(by.css('.ng-scope:nth-child(33) > .ng-binding')); var TechnologyDataThirtyThree = element(by.css('.ng-scope:nth-child(33) > .text-left > .ng-binding:nth-child(1)')); var XCloseLink = element(by.css('.close')); await TechnologyLink.click().then(function() { browser.sleep(2500); }); expect(await WidgetTitle.getText()).toEqual('Technology'); expect(await TechnologyTitleOne.getText()).toEqual('Development environment software'); expect(await TechnologyDataOne.getText()).toEqual('Ada ;'); expect(await TechnologyTitleTwo.getText()).toEqual('Analytical or scientific software'); expect(await TechnologyDataTwo.getText()).toEqual('Advanced numerical software ;'); expect(await TechnologyTitleThree.getText()).toEqual('Data base management system software'); expect(await TechnologyDataThree.getText()).toEqual('Apache Cassandra ;'); expect(await TechnologyTitleFour.getText()).toEqual('Operating system software'); expect(await TechnologyDataFour.getText()).toEqual('Bash ;'); expect(await TechnologyTitleFive.getText()).toEqual('Object or component oriented development software'); expect(await TechnologyDataFive.getText()).toEqual('C# ;'); expect(await TechnologyTitleSix.getText()).toEqual('Business intelligence and data analysis software'); expect(await TechnologyDataSix.getText()).toEqual('IBM Cognos Impromptu ;'); expect(await TechnologyTitleSeven.getText()).toEqual('Data base user interface and query software'); expect(await TechnologyDataSeven.getText()).toEqual('Apache Hive ;'); expect(await TechnologyTitleEight.getText()).toEqual('Web platform development software'); expect(await TechnologyDataEight.getText()).toEqual('Django ;'); expect(await TechnologyTitleNine.getText()).toEqual('Graphics or photo imaging software'); expect(await TechnologyDataNine.getText()).toEqual('Graphics pipelines ;'); expect(await TechnologyTitleTen.getText()).toEqual('Compiler and decompiler software'); expect(await TechnologyDataTen.getText()).toEqual('Greenhills Ada compilers ;'); expect(await TechnologyTitleEleven.getText()).toEqual('Configuration management software'); expect(await TechnologyDataEleven.getText()).toEqual('IBM Rational Apex ;'); expect(await TechnologyTitleTwelve.getText()).toEqual('Clustering software'); expect(await TechnologyDataTwelve.getText()).toEqual('Clustermatic ;'); expect(await TechnologyTitleThirteen.getText()).toEqual('Enterprise application integration software'); expect(await TechnologyDataThirteen .getText()).toEqual('Extensible markup language XML ;'); expect(await TechnologyTitleFourteen.getText()).toEqual('Computer aided design CAD software'); expect(await TechnologyDataFourteen.getText()).toEqual('Computer aided design and drafting CADD software ;'); expect(await TechnologyTitleFifteen.getText()).toEqual('Spreadsheet software'); expect(await TechnologyDataFifteen.getText()).toEqual('Microsoft Excel '); expect(await TechnologyTitleSixteen.getText()).toEqual('Metadata management software'); expect(await TechnologyDataSixteen.getText()).toEqual('CA Erwin Data Modeler '); expect(await TechnologyTitleSeventeen.getText()).toEqual('Application server software'); expect(await TechnologyDataSeventeen.getText()).toEqual('GitHub '); expect(await TechnologyTitleEighteen.getText()).toEqual('Enterprise system management software'); expect(await TechnologyDataEighteen.getText()).toEqual('Splunk Enterprise '); expect(await TechnologyTitleNineteen.getText()).toEqual('Object oriented data base management software'); expect(await TechnologyDataNineteen.getText()).toEqual('PostgreSQL '); expect(await TechnologyTitleTwenty.getText()).toEqual('Enterprise resource planning ERP software'); expect(await TechnologyDataTwenty.getText()).toEqual('SAP Business Objects'); expect(await TechnologyTitleTwentyOne.getText()).toEqual('Communications server software'); expect(await TechnologyDataTwentyOne.getText()).toEqual('IBM Domino'); expect(await TechnologyTitleTwentyTwo.getText()).toEqual('Portal server software'); expect(await TechnologyDataTwentyTwo.getText()).toEqual('Apache HTTP Server '); expect(await TechnologyTitleTwentyThree.getText()).toEqual('Video creation and editing software'); expect(await TechnologyDataTwentyThree.getText()).toEqual('Video editing software'); expect(await TechnologyTitleTwentyFour.getText()).toEqual('File versioning software'); expect(await TechnologyDataTwentyFour.getText()).toEqual('Git '); expect(await TechnologyTitleTwentyFive.getText()).toEqual('Office suite software'); expect(await TechnologyDataTwentyFive.getText()).toEqual('Microsoft Office '); expect(await TechnologyTitleTwentySix.getText()).toEqual('Graphical user interface development software'); expect(await TechnologyDataTwentySix.getText()).toEqual('Waikato Environment for Knowledge Analysis Weka'); expect(await TechnologyTitleTwentySeven.getText()).toEqual('Sales and marketing software'); expect(await TechnologyDataTwentySeven.getText()).toEqual('Google AdWords '); expect(await TechnologyTitleTwentyEight.getText()).toEqual('Presentation software'); expect(await TechnologyDataTwentyEight.getText()).toEqual('Microsoft PowerPoint '); expect(await TechnologyTitleTwentyNine.getText()).toEqual('Map creation software'); expect(await TechnologyDataTwentyNine.getText()).toEqual('ESRI ArcGIS software '); expect(await TechnologyTitleThirty.getText()).toEqual('Web page creation and editing software'); expect(await TechnologyDataThirty.getText()).toEqual('Plug-in file software'); expect(await TechnologyTitleThirtyOne.getText()).toEqual('Data mining software'); expect(await TechnologyDataThirtyOne.getText()).toEqual('Google Analytics '); expect(await TechnologyTitleThirtyTwo.getText()).toEqual('Requirements analysis and system architecture software'); expect(await TechnologyDataThirtyTwo.getText()).toEqual('Unified modeling language UML '); expect(await TechnologyTitleThirtyThree.getText()).toEqual('Project management software'); expect(await TechnologyDataThirtyThree.getText()).toEqual('Microsoft Project '); browser.waitForAngular(); await XCloseLink.click().then(function() { browser.sleep(1000); }); browser.waitForAngular(); browser.getCurrentUrl(); }); } function Knowledge() { it(': Knowledge, should click Knowledge link and validate data', async function () { var KnowledgeLink = element(by.css('tr:nth-child(3) > td:nth-child(5) > .text-color-7a')); var WidgetTitle = element(by.css('h6 > .ng-binding')); var ImportanceHeader = element(by.css('.text-right > .text-color-7a')); var KnowledgeTitleOne = element(by.css('tbody:nth-child(2) > .ng-scope:nth-child(1) > .ng-binding:nth-child(1)')); var KnowledgeDataOne = element(by.css('.ng-scope:nth-child(1) > .text-color-7a')); var KnowledgeTitleTwo = element(by.css('tbody > .ng-scope:nth-child(2) > .ng-binding:nth-child(1)')); var KnowledgeDataTwo = element(by.css('.ng-scope:nth-child(2) > .text-color-7a:nth-child(2)')); var KnowledgeTitleThree = element(by.css('tbody > .ng-scope:nth-child(3) > .ng-binding:nth-child(1)')); var KnowledgeDataThree = element(by.css('.ng-scope:nth-child(3) > .text-color-7a')); var KnowledgeTitleFour = element(by.css('tbody > .ng-scope:nth-child(4) > .ng-binding:nth-child(1)')); var KnowledgeDataFour = element(by.css('.ng-scope:nth-child(4) > .text-color-7a')); var KnowledgeTitleFive = element(by.css('tbody > .ng-scope:nth-child(5) > .ng-binding:nth-child(1)')); var KnowledgeDataFive = element(by.css('.ng-scope:nth-child(5) > .text-color-7a')); var KnowledgeTitleSix = element(by.css('tbody > .ng-scope:nth-child(6) > .ng-binding:nth-child(1)')); var KnowledgeDataSix = element(by.css('.ng-scope:nth-child(6) > .text-color-7a')); var KnowledgeTitleSeven = element(by.css('tbody > .ng-scope:nth-child(7) > .ng-binding:nth-child(1)')); var KnowledgeDataSeven = element(by.css('.ng-scope:nth-child(7) > .text-color-7a')); var KnowledgeTitleEight = element(by.css('tbody > .ng-scope:nth-child(8) > .ng-binding:nth-child(1)')); var KnowledgeDataEight = element(by.css('.ng-scope:nth-child(8) > .text-color-7a')); var KnowledgeTitleNine = element(by.css('tbody > .ng-scope:nth-child(9) > .ng-binding:nth-child(1)')); var KnowledgeDataNine = element(by.css('.ng-scope:nth-child(9) > .text-color-7a')); var KnowledgeTitleTen = element(by.css('tbody > .ng-scope:nth-child(10) > .ng-binding:nth-child(1)')); var KnowledgeDataTen = element(by.css('.ng-scope:nth-child(10) > .text-color-7a')); var KnowledgeTitleEleven = element(by.css('tbody > .ng-scope:nth-child(11) > .ng-binding:nth-child(1)')); var KnowledgeDataEleven = element(by.css('.ng-scope:nth-child(11) > .text-color-7a')); var XCloseLink = element(by.css('.close')); await KnowledgeLink.click().then(function() { browser.sleep(2500); }); expect(await WidgetTitle.getText()).toEqual('Knowledge'); expect(await ImportanceHeader.getText()).toEqual('Importance'); expect(await KnowledgeTitleOne.getText()).toEqual('Computers and Electronics'); expect(await KnowledgeDataOne.getText()).toEqual('90%'); expect(await KnowledgeTitleTwo.getText()).toEqual('Mathematics'); expect(await KnowledgeDataTwo.getText()).toEqual('82%'); expect(await KnowledgeTitleThree.getText()).toEqual('English Language'); expect(await KnowledgeDataThree.getText()).toEqual('79%'); expect(await KnowledgeTitleFour.getText()).toEqual('Education and Training'); expect(await KnowledgeDataFour.getText()).toEqual('73%'); expect(await KnowledgeTitleFive.getText()).toEqual('Telecommunications'); expect(await KnowledgeDataFive.getText()).toEqual('62%'); expect(await KnowledgeTitleSix.getText()).toEqual('Design'); expect(await KnowledgeDataSix.getText()).toEqual('59%'); expect(await KnowledgeTitleSeven.getText()).toEqual('Administration and Management'); expect(await KnowledgeDataSeven.getText()).toEqual('58%'); expect(await KnowledgeTitleEight.getText()).toEqual('Engineering and Technology'); expect(await KnowledgeDataEight.getText()).toEqual('58%'); expect(await KnowledgeTitleNine.getText()).toEqual('Customer and Personal Service'); expect(await KnowledgeDataNine.getText()).toEqual('55%'); expect(await KnowledgeTitleTen.getText()).toEqual('Communications and Media'); expect(await KnowledgeDataTen.getText()).toEqual('52%'); expect(await KnowledgeTitleEleven.getText()).toEqual('Clerical'); expect(await KnowledgeDataEleven.getText()).toEqual('50%'); browser.waitForAngular(); await XCloseLink.click().then(function() { browser.sleep(1000); }); browser.waitForAngular(); browser.getCurrentUrl(); }); } function Skills() { it(': Skills, should click Skills link and validate data', async function () { var SkillsLink = element(by.css('tr:nth-child(4) > td:nth-child(5) > .text-color-7a')); var WidgetTitle = element(by.css('h6 > .ng-binding')); var ImportanceHeader = element(by.css('.text-right > .text-color-7a')); var SkillsTitleOne = element(by.css('tbody:nth-child(2) > .ng-scope:nth-child(1) > .ng-binding:nth-child(1)')); var SkillsDataOne = element(by.css('.ng-scope:nth-child(1) > .text-color-7a')); var SkillsTitleTwo = element(by.css('.ng-scope:nth-child(2) > .ng-binding:nth-child(1)')); var SkillsDataTwo = element(by.css('.ng-scope:nth-child(2) > .text-color-7a:nth-child(2)')); var SkillsTitleThree = element(by.css('tbody > .ng-scope:nth-child(3) > .ng-binding:nth-child(1)')); var SkillsDataThree = element(by.css('.ng-scope:nth-child(3) > .text-color-7a')); var SkillsTitleFour = element(by.css('tbody > .ng-scope:nth-child(4) > .ng-binding:nth-child(1)')); var SkillsDataFour = element(by.css('.ng-scope:nth-child(4) > .text-color-7a')); var SkillsTitleFive = element(by.css('tbody > .ng-scope:nth-child(5) > .ng-binding:nth-child(1)')); var SkillsDataFive = element(by.css('.ng-scope:nth-child(5) > .text-color-7a')); var SkillsTitleSix = element(by.css('tbody > .ng-scope:nth-child(6) > .ng-binding:nth-child(1)')); var SkillsDataSix = element(by.css('.ng-scope:nth-child(6) > .text-color-7a')); var SkillsTitleSeven = element(by.css('tbody > .ng-scope:nth-child(7) > .ng-binding:nth-child(1)')); var SkillsDataSeven = element(by.css('.ng-scope:nth-child(7) > .text-color-7a')); var SkillsTitleEight = element(by.css('tbody > .ng-scope:nth-child(8) > .ng-binding:nth-child(1)')); var SkillsDataEight = element(by.css('.ng-scope:nth-child(8) > .text-color-7a')); var SkillsTitleNine = element(by.css('tbody > .ng-scope:nth-child(9) > .ng-binding:nth-child(1)')); var SkillsDataNine = element(by.css('.ng-scope:nth-child(9) > .text-color-7a')); var SkillsTitleTen = element(by.css('tbody > .ng-scope:nth-child(10) > .ng-binding:nth-child(1)')); var SkillsDataTen = element(by.css('.ng-scope:nth-child(10) > .text-color-7a')); var SkillsTitleEleven = element(by.css('tbody > .ng-scope:nth-child(11) > .ng-binding:nth-child(1)')); var SkillsDataEleven = element(by.css('.ng-scope:nth-child(11) > .text-color-7a')); var SkillsTitleTwelve = element(by.css('tbody > .ng-scope:nth-child(12) > .ng-binding:nth-child(1)')); var SkillsDataTwelve = element(by.css('.ng-scope:nth-child(12) > .text-color-7a')); var SkillsTitleThirteen = element(by.css('tbody > .ng-scope:nth-child(13) > .ng-binding:nth-child(1)')); var SkillsDataThirteen = element(by.css('.ng-scope:nth-child(13) > .text-color-7a')); var SkillsTitleFourteen = element(by.css('tbody > .ng-scope:nth-child(14) > .ng-binding:nth-child(1)')); var SkillsDataFourteen = element(by.css('.ng-scope:nth-child(14) > .text-color-7a')); var SkillsTitleFifteen = element(by.css('tbody > .ng-scope:nth-child(15) > .ng-binding:nth-child(1)')); var SkillsDataFifteen = element(by.css('.ng-scope:nth-child(15) > .text-color-7a')); var SkillsTitleSixteen = element(by.css('tbody > .ng-scope:nth-child(16) > .ng-binding:nth-child(1)')); var SkillsDataSixteen = element(by.css('.ng-scope:nth-child(16) > .text-color-7a')); var SkillsTitleSeventeen = element(by.css('tbody > .ng-scope:nth-child(17) > .ng-binding:nth-child(1)')); var SkillsDataSeventeen = element(by.css('.ng-scope:nth-child(17) > .text-color-7a')); var SkillsTitleEighteen = element(by.css('tbody > .ng-scope:nth-child(18) > .ng-binding:nth-child(1)')); var SkillsDataEighteen = element(by.css('.ng-scope:nth-child(18) > .text-color-7a')); var SkillsTitleNineteen = element(by.css('tbody > .ng-scope:nth-child(19) > .ng-binding:nth-child(1)')); var SkillsDataNineteen = element(by.css('.ng-scope:nth-child(19) > .text-color-7a')); var XCloseLink = element(by.css('.close')); await SkillsLink.click().then(function() { browser.sleep(2500); }); expect(await WidgetTitle.getText()).toEqual('Skills'); expect(await ImportanceHeader.getText()).toEqual('Importance'); expect(await SkillsTitleOne.getText()).toEqual('Complex Problem Solving'); expect(await SkillsDataOne.getText()).toEqual('72%'); expect(await SkillsTitleTwo.getText()).toEqual('Critical Thinking'); expect(await SkillsDataTwo.getText()).toEqual('69%'); expect(await SkillsTitleThree.getText()).toEqual('Systems Analysis'); expect(await SkillsDataThree.getText()).toEqual('69%'); expect(await SkillsTitleFour.getText()).toEqual('Systems Evaluation'); expect(await SkillsDataFour.getText()).toEqual('69%'); expect(await SkillsTitleFive.getText()).toEqual('Judgment and Decision Making'); expect(await SkillsDataFive.getText()).toEqual('66%'); expect(await SkillsTitleSix.getText()).toEqual('Active Listening'); expect(await SkillsDataSix.getText()).toEqual('63%'); expect(await SkillsTitleSeven.getText()).toEqual('Programming'); expect(await SkillsDataSeven.getText()).toEqual('63%'); expect(await SkillsTitleEight.getText()).toEqual('Reading Comprehension'); expect(await SkillsDataEight.getText()).toEqual('63%'); expect(await SkillsTitleNine.getText()).toEqual('Time Management'); expect(await SkillsDataNine.getText()).toEqual('63%'); expect(await SkillsTitleTen.getText()).toEqual('Active Learning'); expect(await SkillsDataTen.getText()).toEqual('60%'); expect(await SkillsTitleEleven.getText()).toEqual('Speaking'); expect(await SkillsDataEleven.getText()).toEqual('60%'); expect(await SkillsTitleTwelve.getText()).toEqual('Writing'); expect(await SkillsDataTwelve.getText()).toEqual('60%'); expect(await SkillsTitleThirteen.getText()).toEqual('Operations Analysis'); expect(await SkillsDataThirteen.getText()).toEqual('56%'); expect(await SkillsTitleFourteen.getText()).toEqual('Mathematics'); expect(await SkillsDataFourteen.getText()).toEqual('53%'); expect(await SkillsTitleFifteen.getText()).toEqual('Monitoring'); expect(await SkillsDataFifteen.getText()).toEqual('53%'); expect(await SkillsTitleSixteen.getText()).toEqual('Science'); expect(await SkillsDataSixteen.getText()).toEqual('53%'); expect(await SkillsTitleSeventeen.getText()).toEqual('Coordination'); expect(await SkillsDataSeventeen.getText()).toEqual('50%'); expect(await SkillsTitleEighteen.getText()).toEqual('Management of Personnel Resources'); expect(await SkillsDataEighteen.getText()).toEqual('50%'); expect(await SkillsTitleNineteen.getText()).toEqual('Social Perceptiveness'); expect(await SkillsDataNineteen.getText()).toEqual('50%'); browser.waitForAngular(); await XCloseLink.click().then(function() { browser.sleep(1000); }); browser.waitForAngular(); browser.getCurrentUrl(); }); } function WorkActivities() { it(': WorkActivities, should click Work Activities link and validate data', async function () { var WorkActivitiesLink = element(by.css('tr:nth-child(5) > td:nth-child(5) > .text-color-7a')); var WidgetTitle = element(by.css('h6 > .ng-binding')); var ImportanceHeader = element(by.css('.text-right > .text-color-7a')); var WorkActivitiesTitleOne = element(by.css('tbody:nth-child(2) > .ng-scope:nth-child(1) > .ng-binding:nth-child(1)')); var WorkActivitiesDataOne = element(by.css('.ng-scope:nth-child(1) > .text-color-7a')); var WorkActivitiesTitleTwo = element(by.css('.ng-scope:nth-child(2) > .ng-binding:nth-child(1)')); var WorkActivitiesDataTwo = element(by.css('.ng-scope:nth-child(2) > .text-color-7a:nth-child(2)')); var WorkActivitiesTitleThree = element(by.css('.ng-scope:nth-child(3) > .ng-binding:nth-child(1)')); var WorkActivitiesDataThree = element(by.css('.ng-scope:nth-child(3) > .text-center')); var WorkActivitiesTitleFour = element(by.css('.ng-scope:nth-child(4) > .ng-binding:nth-child(1)')); var WorkActivitiesDataFour = element(by.css('.ng-scope:nth-child(4) > .text-color-7a')); var WorkActivitiesTitleFive = element(by.css('.ng-scope:nth-child(5) > .ng-binding:nth-child(1)')); var WorkActivitiesDataFive = element(by.css('.ng-scope:nth-child(5) > .text-center')); var WorkActivitiesTitleSix = element(by.css('.ng-scope:nth-child(6) > .ng-binding:nth-child(1)')); var WorkActivitiesDataSix = element(by.css('.ng-scope:nth-child(6) > .text-center')); var WorkActivitiesTitleSeven = element(by.css('.ng-scope:nth-child(7) > .ng-binding:nth-child(1)')); var WorkActivitiesDataSeven = element(by.css('.ng-scope:nth-child(7) > .text-center')); var WorkActivitiesTitleEight = element(by.css('.ng-scope:nth-child(8) > .ng-binding:nth-child(1)')); var WorkActivitiesDataEight = element(by.css('.ng-scope:nth-child(8) > .text-center')); var WorkActivitiesTitleNine = element(by.css('.ng-scope:nth-child(9) > .ng-binding:nth-child(1)')); var WorkActivitiesDataNine = element(by.css('.ng-scope:nth-child(9) > .text-center')); var WorkActivitiesTitleTen = element(by.css('.ng-scope:nth-child(10) > .ng-binding:nth-child(1)')); var WorkActivitiesDataTen = element(by.css('.ng-scope:nth-child(10) > .text-center')); var WorkActivitiesTitleEleven = element(by.css('.ng-scope:nth-child(11) > .ng-binding:nth-child(1)')); var WorkActivitiesDataEleven = element(by.css('.ng-scope:nth-child(11) > .text-center')); var WorkActivitiesTitleTwelve = element(by.css('.ng-scope:nth-child(12) > .ng-binding:nth-child(1)')); var WorkActivitiesDataTwelve = element(by.css('.ng-scope:nth-child(12) > .text-center')); var WorkActivitiesTitleThirteen = element(by.css('.ng-scope:nth-child(13) > .ng-binding:nth-child(1)')); var WorkActivitiesDataThirteen = element(by.css('.ng-scope:nth-child(13) > .text-center')); var WorkActivitiesTitleFourteen = element(by.css('.ng-scope:nth-child(14) > .ng-binding:nth-child(1)')); var WorkActivitiesDataFourteen = element(by.css('.ng-scope:nth-child(14) > .text-center')); var WorkActivitiesTitleFifteen = element(by.css('.ng-scope:nth-child(15) > .ng-binding:nth-child(1)')); var WorkActivitiesDataFifteen = element(by.css('.ng-scope:nth-child(15) > .text-center')); var WorkActivitiesTitleSixteen = element(by.css('.ng-scope:nth-child(16) > .ng-binding:nth-child(1)')); var WorkActivitiesDataSixteen = element(by.css('.ng-scope:nth-child(16) > .text-center')); var WorkActivitiesTitleSeventeen = element(by.css('.ng-scope:nth-child(17) > .ng-binding:nth-child(1)')); var WorkActivitiesDataSeventeen = element(by.css('.ng-scope:nth-child(17) > .text-center')); var WorkActivitiesTitleEighteen = element(by.css('.ng-scope:nth-child(18) > .ng-binding:nth-child(1)')); var WorkActivitiesDataEighteen = element(by.css('.ng-scope:nth-child(18) > .text-center')); var WorkActivitiesTitleNineteen = element(by.css('.ng-scope:nth-child(19) > .ng-binding:nth-child(1)')); var WorkActivitiesDataNineteen = element(by.css('.ng-scope:nth-child(19) > .text-center')); var WorkActivitiesTitleTwenty = element(by.css('.ng-scope:nth-child(20) > .ng-binding:nth-child(1)')); var WorkActivitiesDataTwenty = element(by.css('.ng-scope:nth-child(20) > .text-center')); var WorkActivitiesTitleTwentyOne = element(by.css('.ng-scope:nth-child(21) > .ng-binding:nth-child(1)')); var WorkActivitiesDataTwentyOne = element(by.css('.ng-scope:nth-child(21) > .text-center')); var WorkActivitiesTitleTwentyTwo = element(by.css('.ng-scope:nth-child(22) > .ng-binding:nth-child(1)')); var WorkActivitiesDataTwentyTwo = element(by.css('.ng-scope:nth-child(22) > .text-center')); var WorkActivitiesTitleTwentyThree = element(by.css('.ng-scope:nth-child(23) > .ng-binding:nth-child(1)')); var WorkActivitiesDataTwentyThree = element(by.css('.ng-scope:nth-child(23) > .text-center')); var XCloseLink = element(by.css('.close')); await WorkActivitiesLink.click().then(function() { browser.sleep(2500); }); expect(await WidgetTitle.getText()).toEqual('Work Activities'); expect(await ImportanceHeader.getText()).toEqual('Importance'); expect(await WorkActivitiesTitleOne.getText()).toEqual('Interacting With Computers'); expect(await WorkActivitiesDataOne.getText()).toEqual('92%'); expect(await WorkActivitiesTitleTwo.getText()).toEqual('Getting Information'); expect(await WorkActivitiesDataTwo.getText()).toEqual('90%'); expect(await WorkActivitiesTitleThree.getText()).toEqual('Processing Information'); expect(await WorkActivitiesDataThree.getText()).toEqual('87%'); expect(await WorkActivitiesTitleFour.getText()).toEqual('Thinking Creatively'); expect(await WorkActivitiesDataFour.getText()).toEqual('86%'); expect(await WorkActivitiesTitleFive.getText()).toEqual('Making Decisions and Solving Problems'); expect(await WorkActivitiesDataFive.getText()).toEqual('84%'); expect(await WorkActivitiesTitleSix.getText()).toEqual('Updating and Using Relevant Knowledge'); expect(await WorkActivitiesDataSix.getText()).toEqual('84%'); expect(await WorkActivitiesTitleSeven.getText()).toEqual('Identifying Objects, Actions, and Events'); expect(await WorkActivitiesDataSeven.getText()).toEqual('82%'); expect(await WorkActivitiesTitleEight.getText()).toEqual('Documenting/Recording Information'); expect(await WorkActivitiesDataEight.getText()).toEqual('80%'); expect(await WorkActivitiesTitleNine.getText()).toEqual('Communicating with Supervisors, Peers, or Subordinates'); expect(await WorkActivitiesDataNine.getText()).toEqual('79%'); expect(await WorkActivitiesTitleTen.getText()).toEqual('Interpreting the Meaning of Information for Others'); expect(await WorkActivitiesDataTen.getText()).toEqual('77%'); expect(await WorkActivitiesTitleEleven.getText()).toEqual('Organizing, Planning, and Prioritizing Work'); expect(await WorkActivitiesDataEleven.getText()).toEqual('76%'); expect(await WorkActivitiesTitleTwelve.getText()).toEqual('Establishing and Maintaining Interpersonal Relationships'); expect(await WorkActivitiesDataTwelve.getText()).toEqual('72%'); expect(await WorkActivitiesTitleThirteen.getText()).toEqual('Analyzing Data or Information'); expect(await WorkActivitiesDataThirteen.getText()).toEqual('71%'); expect(await WorkActivitiesTitleFourteen.getText()).toEqual('Communicating with Persons Outside Organization'); expect(await WorkActivitiesDataFourteen.getText()).toEqual('69%'); expect(await WorkActivitiesTitleFifteen.getText()).toEqual('Developing Objectives and Strategies'); expect(await WorkActivitiesDataFifteen.getText()).toEqual('69%'); expect(await WorkActivitiesTitleSixteen.getText()).toEqual('Judging the Qualities of Things, Services, or People'); expect(await WorkActivitiesDataSixteen.getText()).toEqual('66%'); expect(await WorkActivitiesTitleSeventeen.getText()).toEqual('Scheduling Work and Activities'); expect(await WorkActivitiesDataSeventeen.getText()).toEqual('65%'); expect(await WorkActivitiesTitleEighteen.getText()).toEqual('Provide Consultation and Advice to Others'); expect(await WorkActivitiesDataEighteen.getText()).toEqual('64%'); expect(await WorkActivitiesTitleNineteen.getText()).toEqual('Evaluating Information to Determine Compliance with Standards'); expect(await WorkActivitiesDataNineteen.getText()).toEqual('62%'); expect(await WorkActivitiesTitleTwenty.getText()).toEqual('Coordinating the Work and Activities of Others'); expect(await WorkActivitiesDataTwenty.getText()).toEqual('61%'); expect(await WorkActivitiesTitleTwentyOne.getText()).toEqual('Estimating the Quantifiable Characteristics of Products, Events, or Information'); expect(await WorkActivitiesDataTwentyOne.getText()).toEqual('61%'); expect(await WorkActivitiesTitleTwentyTwo.getText()).toEqual('Developing and Building Teams'); expect(await WorkActivitiesDataTwentyTwo.getText()).toEqual('52%'); expect(await WorkActivitiesTitleTwentyThree.getText()).toEqual('Training and Teaching Others'); expect(await WorkActivitiesDataTwentyThree.getText()).toEqual('52%'); browser.waitForAngular(); await XCloseLink.click().then(function() { browser.sleep(1000); }); browser.waitForAngular(); browser.getCurrentUrl(); }); } function Ability() { it(': Ability, should click Ability link and validate data', async function () { var AbilityLink = element(by.css('td:nth-child(6) > .text-color-7a')); var WidgetTitle = element(by.css('h6 > .ng-binding')); var ImportanceHeader = element(by.css('.text-right > .text-color-7a')); var AbilityTitleOne = element(by.css('tbody:nth-child(2) > .ng-scope:nth-child(1) > .ng-binding:nth-child(1)')); var AbilityDataOne = element(by.css('.ng-scope:nth-child(1) > .text-color-7a')); var AbilityTitleTwo = element(by.css('.ng-scope:nth-child(2) > .ng-binding:nth-child(1)')); var AbilityDataTwo = element(by.css('.ng-scope:nth-child(2) > .text-color-7a:nth-child(2)')); var AbilityTitleThree = element(by.css('.ng-scope:nth-child(3) > .ng-binding:nth-child(1)')); var AbilityDataThree = element(by.css('.ng-scope:nth-child(3) > .text-center')); var AbilityTitleFour = element(by.css('.ng-scope:nth-child(4) > .ng-binding:nth-child(1)')); var AbilityDataFour = element(by.css('.ng-scope:nth-child(4) > .text-color-7a')); var AbilityTitleFive = element(by.css('.ng-scope:nth-child(5) > .ng-binding:nth-child(1)')); var AbilityDataFive = element(by.css('.ng-scope:nth-child(5) > .text-center')); var AbilityTitleSix = element(by.css('.ng-scope:nth-child(6) > .ng-binding:nth-child(1)')); var AbilityDataSix = element(by.css('.ng-scope:nth-child(6) > .text-center')); var AbilityTitleSeven = element(by.css('.ng-scope:nth-child(7) > .ng-binding:nth-child(1)')); var AbilityDataSeven = element(by.css('.ng-scope:nth-child(7) > .text-center')); var AbilityTitleEight = element(by.css('.ng-scope:nth-child(8) > .ng-binding:nth-child(1)')); var AbilityDataEight = element(by.css('.ng-scope:nth-child(8) > .text-center')); var AbilityTitleNine = element(by.css('.ng-scope:nth-child(9) > .ng-binding:nth-child(1)')); var AbilityDataNine = element(by.css('.ng-scope:nth-child(9) > .text-center')); var AbilityTitleTen = element(by.css('.ng-scope:nth-child(10) > .ng-binding:nth-child(1)')); var AbilityDataTen = element(by.css('.ng-scope:nth-child(10) > .text-center')); var AbilityTitleEleven = element(by.css('.ng-scope:nth-child(11) > .ng-binding:nth-child(1)')); var AbilityDataEleven = element(by.css('.ng-scope:nth-child(11) > .text-center')); var AbilityTitleTwelve = element(by.css('.ng-scope:nth-child(12) > .ng-binding:nth-child(1)')); var AbilityDataTwelve = element(by.css('.ng-scope:nth-child(12) > .text-center')); var AbilityTitleThirteen = element(by.css('.ng-scope:nth-child(13) > .ng-binding:nth-child(1)')); var AbilityDataThirteen = element(by.css('.ng-scope:nth-child(13) > .text-center')); var AbilityTitleFourteen = element(by.css('.ng-scope:nth-child(14) > .ng-binding:nth-child(1)')); var AbilityDataFourteen = element(by.css('.ng-scope:nth-child(14) > .text-center')); var AbilityTitleFifteen = element(by.css('.ng-scope:nth-child(15) > .ng-binding:nth-child(1)')); var AbilityDataFifteen = element(by.css('.ng-scope:nth-child(15) > .text-center')); var AbilityTitleSixteen = element(by.css('.ng-scope:nth-child(16) > .ng-binding:nth-child(1)')); var AbilityDataSixteen = element(by.css('.ng-scope:nth-child(16) > .text-center')); var AbilityTitleSeventeen = element(by.css('.ng-scope:nth-child(17) > .ng-binding:nth-child(1)')); var AbilityDataSeventeen = element(by.css('.ng-scope:nth-child(17) > .text-center')); var AbilityTitleEighteen = element(by.css('.ng-scope:nth-child(18) > .ng-binding:nth-child(1)')); var AbilityDataEighteen = element(by.css('.ng-scope:nth-child(18) > .text-center')); var XCloseLink = element(by.css('.close')); await AbilityLink.click().then(function() { browser.sleep(2500); }); expect(await WidgetTitle.getText()).toEqual('Ability'); expect(await ImportanceHeader.getText()).toEqual('Importance'); expect(await AbilityTitleOne.getText()).toEqual('Deductive Reasoning'); expect(await AbilityDataOne.getText()).toEqual('72%'); expect(await AbilityTitleTwo.getText()).toEqual('Inductive Reasoning'); expect(await AbilityDataTwo.getText()).toEqual('72%'); expect(await AbilityTitleThree.getText()).toEqual('Problem Sensitivity'); expect(await AbilityDataThree.getText()).toEqual('69%'); expect(await AbilityTitleFour.getText()).toEqual('Fluency of Ideas'); expect(await AbilityDataFour.getText()).toEqual('66%'); expect(await AbilityTitleFive.getText()).toEqual('Information Ordering'); expect(await AbilityDataFive.getText()).toEqual('66%'); expect(await AbilityTitleSix.getText()).toEqual('Near Vision'); expect(await AbilityDataSix.getText()).toEqual('66%'); expect(await AbilityTitleSeven.getText()).toEqual('Oral Comprehension'); expect(await AbilityDataSeven.getText()).toEqual('66%'); expect(await AbilityTitleEight.getText()).toEqual('Oral Expression'); expect(await AbilityDataEight.getText()).toEqual('66%'); expect(await AbilityTitleNine.getText()).toEqual('Written Comprehension'); expect(await AbilityDataNine.getText()).toEqual('66%'); expect(await AbilityTitleTen.getText()).toEqual('Category Flexibility'); expect(await AbilityDataTen.getText()).toEqual('63%'); expect(await AbilityTitleEleven.getText()).toEqual('Speech Clarity'); expect(await AbilityDataEleven.getText()).toEqual('60%'); expect(await AbilityTitleTwelve.getText()).toEqual('Speech Recognition'); expect(await AbilityDataTwelve.getText()).toEqual('60%'); expect(await AbilityTitleThirteen.getText()).toEqual('Written Expression'); expect(await AbilityDataThirteen.getText()).toEqual('60%'); expect(await AbilityTitleFourteen.getText()).toEqual('Originality'); expect(await AbilityDataFourteen.getText()).toEqual('56%'); expect(await AbilityTitleFifteen.getText()).toEqual('Selective Attention'); expect(await AbilityDataFifteen.getText()).toEqual('56%'); expect(await AbilityTitleSixteen.getText()).toEqual('Mathematical Reasoning'); expect(await AbilityDataSixteen.getText()).toEqual('53%'); expect(await AbilityTitleSeventeen.getText()).toEqual('Number Facility'); expect(await AbilityDataSeventeen.getText()).toEqual('50%'); expect(await AbilityTitleEighteen.getText()).toEqual('Perceptual Speed'); expect(await AbilityDataEighteen.getText()).toEqual('50%'); browser.waitForAngular(); await XCloseLink.click().then(function() { browser.sleep(1000); }); browser.waitForAngular(); browser.getCurrentUrl(); }); } function MyResourcesCarousel() { it(': MyResourcesCarousel, should click My Resources carousel View All link, expand and collapse resources and remove latest resource', async function () { var WidgetTitle = element(by.css('#id > .ng-scope > .jrnys_lead-body-copy')); var TopResources1stCardHeader = element(by.css('.col-xs-4:nth-child(1) tr:nth-child(2) > .hotTitles')); var TopResources1stCardSaveIcon = element(by.css('.col-xs-4:nth-child(1) .journey-save:nth-child(1)')); var ViewAllLink = element(by.css('#id > .ng-scope .text-color-7a')); var WidgetDivTitle = element(by.css('.col-sm-12 > .ng-binding')); var MyResourceTitle = element(by.css('.col-xs-9 > .ng-binding')); var EllipsisMyResources = element(by.css('.glyphicon-option-vertical')); var XCloseLink = element(by.css('.close')); /*browser.actions().mouseMove(element(by.css('#myInstitutionsCollapsed #id .jrnys_lead-body-copy'))).perform().then(function() { browser.sleep(1000); });*/ browser.executeScript('window.scrollTo(0, 1990);').then(function() { browser.sleep(5000); }); expect(await WidgetTitle.getText()).toEqual('My Resources View All'); expect(await TopResources1stCardHeader.getText()).toEqual('Computer and Information Research Scientists'); await TopResources1stCardSaveIcon.click().then(function() { browser.sleep(5000); }); await ViewAllLink.click(); browser.waitForAngular(); browser.getCurrentUrl(); expect(await WidgetDivTitle.getText()).toEqual('My Resources'); expect(await MyResourceTitle.getText()).toEqual('Test Doc'); await MyResourceTitle.click(); browser.sleep(1000); await EllipsisMyResources.click(); browser.sleep(1000); await XCloseLink.click().then(function() { browser.sleep(1000); }); browser.waitForAngular(); browser.getCurrentUrl(); }); } function InstitutionsCarousel() { it(': InstitutionsCarousel, should click Institution carousel View All link', async function () { var WidgetTitle = element(by.css('#myInstitutionsCollapsed #id .jrnys_lead-body-copy')); var ViewAllLink = element(by.css('#myInstitutionsCollapsed .text-color-7a')); var EditSearchWidgetTitle = element(by.css('.panel-with-page > .row > b')); var BackLink = element(by.css('.btn-primary-back-mod')); /*browser.actions().mouseMove(element(by.css('#myjourneys > .jrnys_lead-body-copy > span:nth-child(1)'))).perform().then(function() { browser.sleep(1000); });*/ browser.executeScript('window.scrollTo(0, 2465);').then(function() { browser.sleep(2500); }); expect(await WidgetTitle.getText()).toEqual('Institutions View All'); await ViewAllLink.click(); browser.waitForAngular(); browser.getCurrentUrl(); expect(await EditSearchWidgetTitle.getText()).toEqual('Edit Search'); browser.sleep(2500); browser.executeScript('window.scrollTo(0, 0);').then(function() { browser.sleep(2500); }); await BackLink.click(); browser.waitForAngular(); browser.getCurrentUrl(); }); } function MyJourneys() { it(': MyJourneys, should scroll to My Journeys widget on dashboard select 4th journey, view, then validate journey', async function () { var WidgetTitle = element(by.css('#myjourneys > .jrnys_lead-body-copy > span:nth-child(1)')); var JourneySteps = element(by.css('.journeyListWidgetJourneyContainer:nth-child(4) > div')); var LearnMoreLink = element(by.css('.journeyListWidgetJourneyContainer:nth-child(4) #appendHere > .jrnys_support-text')); var JourneyLearnMoreTitle = element(by.css('.col-md-12 > .ng-binding')); var JourneyWayPoint = element(by.css('.select-waypointTitle')); var JourneyResource = element(by.css('.relatedResourceTitleRow')); var JourneyNoResource = element(by.css('.col-md-12 > .col-md-12')); var RightScroll = element(by.css('.glyphicon-menu-right')); var BackLink = element(by.css('.btn-primary-back-mod')); /*browser.actions().mouseMove(element(by.id('journeyListWidget'))).perform(); browser.sleep(5000);*/ browser.executeScript('window.scrollTo(0, 3315);').then(function() { browser.sleep(2500); }); expect(await WidgetTitle.getText()).toEqual('My Journeys'); expect(await JourneySteps.getText()).toContain('10 to Computer and Information Systems Managers through Computer Security Graduate Certificate'); expect(await JourneySteps.getText()).toContain('Learn More'); expect(await JourneySteps.getText()).toContain('5 steps (0 Complete)'); await LearnMoreLink.click(); browser.sleep(5000); expect(await JourneyLearnMoreTitle.getText()).toEqual('10 to Computer and Information Systems Managers through Computer Security Graduate Certificate'); expect(await JourneyWayPoint.getText()).toEqual('10'); expect(await JourneyResource.getText()).toEqual('cnn'); await RightScroll.click(); browser.sleep(5000); expect(await JourneyWayPoint.getText()).toEqual('11'); expect(await JourneyResource.getText()).toEqual('This is CNN'); await RightScroll.click(); browser.sleep(5000); expect(await JourneyWayPoint.getText()).toEqual('12'); expect(await JourneyResource.getText()).toEqual('cnn'); await RightScroll.click(); browser.sleep(5000); expect(await JourneyWayPoint.getText()).toEqual('Computer Security Graduate Certificate'); expect(await JourneyNoResource.getText()).toEqual('Sorry, no related resources!'); await RightScroll.click(); browser.sleep(5000); expect(await JourneyWayPoint.getText()).toEqual('Computer and Information Systems Managers'); expect(await JourneyResource.getText()).toEqual('Computer and Information Systems Managers (Business, Management and Administration)'); //await BackLink.click(); browser.waitForAngular(); browser.getCurrentUrl(); }); } function MyJourneysPage() { it(': MyJourneysPage, should navigate to My Journeys page view and delete 1st journey', async function () { var MyJourneysHeaderLink = element(by.css('#nbMyJourneys .span-navbar-hover')); var PageTitle = element(by.css('.jrnys_lead-body-copy')); var PageSubTitle = element(by.css('.col-md-10 .ng-scope:nth-child(1)')); var Select1stJourneyTitle = element(by.xpath('//span[contains(.,"6 to Administrative Services Managers through Business Administration B.A./B.S.")]')); var SelectedJourneyBubbleOne = element(by.css('#mCSB_1_container > .firstWaypoint .lblClass')); var SelectedJourneyBubbleTwo = element(by.css('#mCSB_1_container > .fullSize-Journey:nth-child(2) .lblClass')); var SelectedJourneyBubbleThree = element(by.css('#mCSB_1_container > .fullSize-Journey:nth-child(3) .lblClass')); var SelectedJourneyBubbleFour = element(by.css('#mCSB_1_container > .fullSize-Journey:nth-child(4) .lblClass')); var SelectedJourneyBubbleFive = element(by.css('#mCSB_1_container > .fullSize-Journey:nth-child(5) .lblClass')); var SelectedJourneyBubbleSix = element(by.css('#mCSB_1_container > .fullSize-Journey:nth-child(6) .lblClass')); var SelectedJourneyBubbleSeven = element(by.css('#mCSB_1_container > .fullSize-Journey:nth-child(7) .lblClass')); var SelectedJourneyBubbleEightOne = element(by.css('.fullSize-Journey:nth-child(8) .triple-line > .lblClass:nth-child(1)')); var SelectedJourneyBubbleEightTwo = element(by.css('.fullSize-Journey:nth-child(8) .lblClass:nth-child(2)')); var SelectedJourneyBubbleEightThree = element(by.css('.fullSize-Journey:nth-child(8) .lblClass:nth-child(3)')); var SelectedJourneyBubbleNineOne = element(by.css('.fullSize-Journey:nth-child(9) .triple-line > .lblClass:nth-child(1)')); var SelectedJourneyBubbleNineTwo = element(by.css('.fullSize-Journey:nth-child(9) .lblClass:nth-child(2)')); var SelectedJourneyBubbleNineThree = element(by.css('.fullSize-Journey:nth-child(9) .lblClass:nth-child(3)')); var SelectedJourneyBubbleTenOne = element(by.css('.fullSize-Journey:nth-child(10) .triple-line > .lblClass:nth-child(1)')); var SelectedJourneyBubbleTenTwo = element(by.css('.fullSize-Journey:nth-child(10) .lblClass:nth-child(2)')); var SelectedJourneyBubbleTenThree = element(by.css('.fullSize-Journey:nth-child(10) .lblClass:nth-child(3)')); var SelectedJourneyTitle = element(by.css('.col-md-12 > .ng-binding')); var SelectedJourneySubTitle = element(by.css('.select-waypointTitle')); var SelectedJourneyRightArrow = element(by.css('.glyphicon-menu-right')); var JourneyLearnMoreSubTitle = element(by.css('.details-resourceRowTitle')); var ViewOnMapButton = element(by.css('.col-md-4 > .btn-info')); var JourneyViewOnMapTitle = element(by.css('.ng-binding:nth-child(2)')); var JourneyTitleOnMap = element(by.css('#journey-view-single > .side-bar-child-text')); var HowAmIDoingButton = element(by.css('.btn-success')); var DivTitle = element(by.css('h2')); var DivSubTitle = element(by.css('p:nth-child(7)')); var DivOkButton = element(by.css('.confirm')); var RemoveJourneyButton = element(by.css('#saveJourneyButton')); var EC = protractor.ExpectedConditions; var BackLink = element(by.css('.btn-primary-back-mod')); var PersistOnMapRadioButton = element(by.name('#e0049880-9613-4fd5-9ed2-eb468cdc2e55 input')); await MyJourneysHeaderLink.click().then(function() { browser.sleep(5000); }); await expect(PageTitle.getText()).toEqual('My Saved Journeys'); expect(await PageSubTitle.getText()).toEqual('Select a Journey to show it on the map'); expect(await Select1stJourneyTitle.getText()).toEqual('6 to Administrative Services Managers through Business Administration B.A./B.S.'); expect(await SelectedJourneyBubbleOne.getText()).toEqual('6'); expect(await SelectedJourneyBubbleTwo.getText()).toEqual('7'); expect(await SelectedJourneyBubbleThree.getText()).toEqual('8'); expect(await SelectedJourneyBubbleFour.getText()).toEqual('9'); expect(await SelectedJourneyBubbleFive.getText()).toEqual('10'); expect(await SelectedJourneyBubbleSix.getText()).toEqual('11'); expect(await SelectedJourneyBubbleSeven.getText()).toEqual('12'); expect(await SelectedJourneyBubbleEightOne.getText()).toEqual('Business'); expect(await SelectedJourneyBubbleEightTwo.getText()).toEqual('Administratio'); expect(await SelectedJourneyBubbleEightThree.getText()).toEqual('n B.A./B.S.'); expect(await SelectedJourneyBubbleNineOne.getText()).toEqual('National'); expect(await SelectedJourneyBubbleNineTwo.getText()).toEqual('Chief'); expect(await SelectedJourneyBubbleNineThree.getText()).toEqual('Engineer/Assi...'); expect(await SelectedJourneyBubbleTenOne.getText()).toEqual('Administrativ'); expect(await SelectedJourneyBubbleTenTwo.getText()).toEqual('e Services'); expect(await SelectedJourneyBubbleTenThree.getText()).toEqual('Managers'); await Select1stJourneyTitle.click().then(function() { browser.sleep(5000); }); expect(await SelectedJourneyTitle.getText()).toEqual('6 to Administrative Services Managers through Business Administration B.A./B.S.'); expect(await SelectedJourneySubTitle.getText()).toEqual('6'); await SelectedJourneyRightArrow.click().then(function() { browser.sleep(2500); }); expect(await SelectedJourneySubTitle.getText()).toEqual('7'); await SelectedJourneyRightArrow.click().then(function() { browser.sleep(2500); }); expect(await SelectedJourneySubTitle.getText()).toEqual('8'); await SelectedJourneyRightArrow.click().then(function() { browser.sleep(2500); }); expect(await SelectedJourneySubTitle.getText()).toEqual('9'); await SelectedJourneyRightArrow.click().then(function() { browser.sleep(2500); }); expect(await SelectedJourneySubTitle.getText()).toEqual('10'); await SelectedJourneyRightArrow.click().then(function() { browser.sleep(2500); }); expect(await SelectedJourneySubTitle.getText()).toEqual('11'); await SelectedJourneyRightArrow.click().then(function() { browser.sleep(2500); }); expect(await SelectedJourneySubTitle.getText()).toEqual('12'); await SelectedJourneyRightArrow.click().then(function() { browser.sleep(2500); }); expect(await SelectedJourneySubTitle.getText()).toEqual('Business Administration B.A./B.S.'); await SelectedJourneyRightArrow.click().then(function() { browser.sleep(2500); }); expect(await SelectedJourneySubTitle.getText()).toEqual('National Chief Engineer/Assistant Engineer UFIV'); await SelectedJourneyRightArrow.click().then(function() { browser.sleep(2500); }); expect(await SelectedJourneySubTitle.getText()).toEqual('Administrative Services Managers'); await SelectedJourneyRightArrow.click().then(function() { browser.sleep(2500); }); expect(await JourneyLearnMoreSubTitle.getText()).toEqual('Try these resources'); await ViewOnMapButton.click().then(function() { browser.sleep(5000); }); expect(await JourneyViewOnMapTitle.getText()).toEqual('Journey View'); expect(await JourneyTitleOnMap.getText()).toEqual('6 to Administrative Services Managers through Business Administration B.A./B.S.'); await MyJourneysHeaderLink.click().then(function() { browser.sleep(5000); }); await Select1stJourneyTitle.click().then(function() { browser.sleep(5000); }); await HowAmIDoingButton.click().then(function() { browser.sleep(5000); }); expect(await DivTitle.getText()).toEqual('Oops!'); expect(await DivSubTitle.getText()).toEqual("Sorry, we can't give you a quiz for this."); await DivOkButton.click().then(function() { browser.sleep(2500); }); await RemoveJourneyButton.click().then(function() { browser.sleep(2500); }); expect(await DivTitle.getText()).toEqual('Are you sure?'); expect(await DivSubTitle.getText()).toEqual('You will not be able to recover this journey!'); await DivOkButton.click().then(function() { browser.sleep(2500); }); expect(await DivTitle.getText()).toEqual('Deleted!'); expect(await DivSubTitle.getText()).toEqual('Your journey has been deleted.'); await DivOkButton.click(); browser.wait(EC.invisibilityOf(ViewOnMapButton)); browser.waitForAngular(); await BackLink.click().then(function() { browser.sleep(5000); }); await PersistOnMapRadioButton.click().then(function() { browser.sleep(2500); }); browser.waitForAngular(); browser.wait(EC.visibilityOf(Select1stJourneyTitle)); browser.waitForAngular(); browser.getCurrentUrl(); }); } function MapInteraction() { it(': MapInteraction, should navigate to map and interact with it', async function () { var MapHeaderLink = element(by.css('.ng-scope:nth-child(2) .span-navbar-hover')); var MapSearchTextBox = element(by.css('#searchBox')); var MapSearchIcon = element(by.css('.glyphicon-search')); var SearchCareerOne = element(by.css('#searchitem0 .side-bar-child-text')); var ItemPath = element(by.css('#searchitem0 .ng-scope > div > .side-bar-ancestory-txt')); var ItemTitle = element(by.css('#searchitem0 .side-bar-child-text')); var ItemDescription = element(by.css('.sidebarDescription')); var ItemDegreeHeader = element(by.css('.ng-scope > .panel-heading')); var ItemDegree = element(by.css('.panel-body > .ng-scope:nth-child(1) > .ng-binding:nth-child(1)')); var ItemDegreeOneStat = element(by.css('.ng-scope > .panel-body > .ng-scope:nth-child(1) > .ng-binding:nth-child(2)')); var ItemDegreeTwo = element(by.css('.panel-body > .ng-scope:nth-child(2) > .ng-binding:nth-child(1)')); var ItemDegreeTwoStat = element(by.css('.ng-scope:nth-child(2) > .ng-binding:nth-child(2)')); var ItemDegreeThree = element(by.css('.panel-body > .ng-scope:nth-child(3) > .ng-binding:nth-child(1)')); var ItemDegreeThreeStat = element(by.css('.ng-scope:nth-child(3) > .ng-binding:nth-child(2)')); var ItemSalaryHeader = element(by.css('.ng-scope:nth-child(2) > .panel > .sidebarPanelHeading')); var ItemSalaryStat = element(by.css('.ng-scope:nth-child(2) > .panel > .panel-body > .ng-binding')); var ItemGrowthHeader = element(by.css('.ng-scope:nth-child(3) > .panel > .sidebarPanelHeading')); var ItemGrowthStat = element(by.css('.panel-body > .ng-binding:nth-child(2)')); var ItemGrowthStatTwo = element(by.css('.ng-scope > .panel > .panel-body > .ng-scope:nth-child(3)')); var ItemJobOpeningsHeader = element(by.css('.ng-scope:nth-child(4) > .panel > .sidebarPanelHeading')); var ItemJobOpeningsStat = element(by.css('.ng-scope:nth-child(4) > .panel > .panel-body > .ng-binding')); var ItemEmployedHeader = element(by.css('.ng-scope:nth-child(5) .sidebarPanelHeading')); var ItemEmployedStat = element(by.css('.ng-scope:nth-child(5) .panel-body > .ng-binding')); var SearchCareerOneViewOnMapIcon = element(by.css('#searchitem0 .fas')); var ObjectPath = element(by.css('.sidebarDescriptionAncestorTxt:nth-child(1)')); var ObjectTitle = element(by.css('.side-bar-child-text:nth-child(2)')); var BackToResultsLink = element(by.css('div:nth-child(2) > .sidebarBackTxt')); var CollegeTabLink = element(by.css('#tab-item-1 > .ng-binding')); var CollegePath = element(by.css('#tab-content-1 #searchitem0 .ng-scope > div > .side-bar-ancestory-txt')); var CollegeTitle = element(by.css('#tab-content-1 #searchitem0 .side-bar-child-text:nth-child(2)')); var CollegeDescription = element(by.css('#tab-content-1 #searchitem0 .sidebarDescription')); var CertificationTabLink = element(by.css('#tab-item-2 > .ng-binding')); var CertificationPath = element(by.css('#tab-content-2 #searchitem0 .side-bar-ancestory-txt:nth-child(1)')); var CertificationTitle = element(by.css('#tab-content-2 #searchitem0 .side-bar-child-text:nth-child(2)')); var CertificationDescription = element(by.css('#tab-content-2 #searchitem0 .sidebarDescription')); var K12TabLink = element(by.css('#tab-item-3 > .ng-binding')); var K12Path = element(by.css('#tab-content-3 #searchitem0 .side-bar-ancestory-txt:nth-child(1)')); var K12Title = element(by.css('#tab-content-3 #searchitem0 .side-bar-child-text:nth-child(2)')); var K12Description = element(by.css('#tab-content-3 #searchitem0 .sidebarDescription')); var MilitaryTabLink = element(by.css('#tab-item-4 > .ng-binding')); var MilitaryPath = element(by.css('#tab-content-4 #searchitem0 .side-bar-ancestory-txt:nth-child(1)')); var MilitaryTitle = element(by.css('#tab-content-4 #searchitem0 .side-bar-child-text:nth-child(2)')); var MilitaryDescription = element(by.css('#tab-content-4 #searchitem0 > div > div.panel-collapse.in > div > div > military-map-details > div > div:nth-child(3) > div')); var CTETabLlink = element(by.css('#tab-item-5 > .ng-binding')); var CTEPath = element(by.css('#tab-content-5 #searchitem0 .side-bar-ancestory-txt:nth-child(1)')); var CTETitle = element(by.css('#tab-content-5 #searchitem0 .side-bar-child-text:nth-child(2)')); var CTEDescription = element(by.css('#tab-content-5 #searchitem0 .sidebarDescription')); var ArrowTabLink = element(by.css('.ng-scope:nth-child(2) > md-icon')); var CareerTabLink = element(by.css('#tab-item-0 > .ng-binding')); var SearchCareerFour = element(by.css('#searchitem3 .side-bar-child-text')); var ItemReadMoreLink = element(by.css('.sidebarLinkTxt')); var ItemTitleReadMore = element(by.css('.col-lg-12 > .ng-binding')); var ItemDescriptionReadMore = element(by.css('.col-lg-12:nth-child(3)')); var ItemDetailCloseLink = element(by.css('.fa-times')); var CareerChoicesHeader = element(by.css('.ng-scope:nth-child(1) > .panel > .sidebarPanelHeading')); var CareerChoicesStat = element(by.css('.ng-scope:nth-child(1) > .panel > .panel-body > .ng-binding')); var SkillsHeader = element(by.css('.ng-scope:nth-child(2) > .panel > .sidebarPanelHeading')); var SkillsStat = element(by.css('.ng-scope:nth-child(2) > .panel > .panel-body > .ng-binding')); var AbilitiesHeader = element(by.css('.ng-scope:nth-child(3) > .panel > .sidebarPanelHeading')); var AbilitiesStat = element(by.css('.ng-scope:nth-child(3) > .panel > .panel-body > .ng-binding')); var KnowledgeChoicesHeader = element(by.css('.ng-scope:nth-child(4) > .panel > .sidebarPanelHeading')); var KnowledgeChoicesStat = element(by.css('.ng-scope:nth-child(4) > .panel > .panel-body > .ng-binding')); var SearchCareerFourViewOnMapIcon = element(by.css('#searchitem3 .fas')); var CollapseIcon = element(by.css('div > .fa-angle-left')); var MapZoomOutIcon = element(by.css('.glyphicon-minus')); var HideJourneyButton = element(by.css('#persistJourneyButton > .ng-binding')); var MapZoomInIcon = element(by.css('.glyphicon-plus')); var ExpandIcon = element(by.css('div:nth-child(2) > .back-btn-mod')); var MapSearchClearIcon = element(by.css('.glyphicon-remove')); var DashboardHeaderLink = element(by.css('.ng-scope:nth-child(1) > a > .span-navbar-hover')); MapHeaderLink.click().then(function() { browser.sleep(5000); }); await MapSearchTextBox.sendKeys('Software Quality Assurance Analyst'); await MapSearchIcon.click(); browser.sleep(5000); /*await SearchCareerOne.click(); browser.sleep(2500); expect(await ItemPath.getText()).toEqual('IT > Programming & Software Development >'); expect(await ItemTitle.getText()).toEqual('Software Quality Assurance Engineers and Testers'); expect(await ItemDescription.getText()).toEqual('Develop and execute software test plans in order to identify software problems and their causes.'); expect(await ItemDegreeHeader.getText()).toEqual('TYPICAL DEGREE'); expect(await ItemDegree.getText()).toEqual('College (4 Year)'); expect(await ItemDegreeOneStat.getText()).toEqual('70%'); expect(await ItemDegreeTwo.getText()).toEqual("Associate's degree"); expect(await ItemDegreeTwoStat.getText()).toEqual('15%'); expect(await ItemDegreeThree.getText()).toEqual('Professional degree certificate'); expect(await ItemDegreeThreeStat.getText()).toEqual('7%'); expect(await ItemSalaryHeader.getText()).toEqual('AVERAGE ANNUAL SALARY'); expect(await ItemSalaryStat.getText()).toEqual('$88,510'); expect(await ItemGrowthHeader.getText()).toEqual('PROJECTED GROWTH'); expect(await ItemGrowthStat.getText()).toEqual('9.3'); expect(await ItemGrowthStatTwo.getText()).toEqual('%'); expect(await ItemJobOpeningsHeader.getText()).toEqual('PROJECTED JOB OPENINGS'); expect(await ItemJobOpeningsStat.getText()).toEqual('22,400'); browser.actions().mouseMove(SearchCareerOneViewOnMapIcon).perform().then(function() { browser.sleep(2500); }); expect(await ItemEmployedHeader.getText()).toEqual('CURRENTLY EMPLOYED'); expect(await ItemEmployedStat.getText()).toEqual('287,200');*/ await CollegeTabLink.click(); browser.sleep(2500); await CollegePath.click(); browser.sleep(2500); await MapZoomInIcon.click(); browser.sleep(2500); await MapZoomInIcon.click(); browser.sleep(2500); expect(await CollegePath.getText()).toEqual('Arts > Comics Studies Postbaccalaureate Certificate >'); expect(await CollegeTitle.getText()).toEqual('Publishing Software'); expect(await CollegeDescription.getText()).toEqual('See department for course description. (Credit to be arranged.)'); browser.sleep(2500); await CertificationTabLink.click(); browser.sleep(2500); await CertificationPath.click(); browser.sleep(2500); expect(await CertificationPath.getText()).toEqual('Core > International Software Certification Board >'); expect(await CertificationTitle.getText()).toEqual('Certified Software Quality Analyst'); expect(await CertificationDescription.getText()).toEqual('Acquiring the designation of Certified Software Quality Analyst (CSQA) indicates a professional level of competence in the principles and practices of quality assurance in the IT profession.'); await K12TabLink.click(); browser.sleep(2500); await K12Path.click(); browser.sleep(2500); expect(await K12Path.getText()).toEqual('Ethics and Legal Responsibilities > Practice professional, ethical, and legal behavior, responding thoughtfully to diverse perspectives and resolving contradictions when possible, consistent with applicable laws, regulations, and organizational norms. (Direct alignment with SLS 11-12.1d) >'); expect(await K12Title.getText()).toEqual('Access, analyze, and implement quality assurance standards of practice.'); expect(await K12Description.getText()).toEqual('Access, analyze, and implement quality assurance standards of practice.'); await MilitaryTabLink.click(); browser.sleep(2500); await MilitaryPath.click(); browser.sleep(2500); expect(await MilitaryPath.getText()).toEqual('Aircraft Hydraulic Systems > Administration >'); expect(await MilitaryTitle.getText()).toEqual('Quality Control Systems Managers'); expect(await MilitaryDescription.getText()).toEqual('No details for this location.'); await CTETabLlink.click(); browser.sleep(2500); await CTEPath.click(); browser.sleep(2500); expect(await CTEPath.getText()).toEqual('Programming & Software Development > Quality Assurance >'); expect(await CTETitle.getText()).toEqual('Summarize software quality assurance (QA) procedures.'); expect(await CTEDescription.getText()).toEqual('Performance Element 1: Summarize software quality assurance (QA) procedures.'); await ArrowTabLink.click(); browser.sleep(2500); await CareerTabLink.click(); browser.sleep(2500); await SearchCareerFour.click(); browser.sleep(2500); expect(await ItemDescription.getText()).toEqual('"Develops and writes/codes new (or modifies existing) computer applications, software, or specialized utility programs following software assurance best practices."'); /*await ItemReadMoreLink.click(); browser.sleep(2500); expect(await ItemTitleReadMore.getText()).toEqual('Computer Systems Analysts'); expect(await ItemDescriptionReadMore.getText()).toEqual('Analyze science, engineering, business, and other data processing problems to implement and improve computer systems. Analyze user requirements, procedures, and problems to automate or improve existing systems and review computer system capabilities, workflow, and scheduling limitations. May analyze or recommend commercially available software.'); await ItemDetailCloseLink.click().then(function() { browser.sleep(1000); });*/ expect(await CareerChoicesHeader.getText()).toEqual('CAREER CHOICES'); expect(await CareerChoicesStat.getText()).toEqual('2'); expect(await SkillsHeader.getText()).toEqual('SKILLS'); expect(await SkillsStat.getText()).toEqual('35'); expect(await AbilitiesHeader.getText()).toEqual('ABILITIES'); expect(await AbilitiesStat.getText()).toEqual('52'); expect(await KnowledgeChoicesHeader.getText()).toEqual('KNOWLEDGE CHOICES'); expect(await KnowledgeChoicesStat.getText()).toEqual('33'); browser.actions().mouseMove(SearchCareerFourViewOnMapIcon).perform().then(function() { browser.sleep(2500); }); await SearchCareerFourViewOnMapIcon.click(); browser.sleep(2500); expect(await ObjectPath.getText()).toEqual('Career > Cyber Security >'); expect(await ObjectTitle.getText()).toEqual('Software Development (DEV)'); expect(await ItemDescription.getText()).toEqual('"Develops and writes/codes new (or modifies existing) computer applications, software, or specialized utility programs following software assurance best practices."'); expect(await CareerChoicesHeader.getText()).toEqual('CAREER CHOICES'); expect(await CareerChoicesStat.getText()).toEqual('2'); expect(await SkillsHeader.getText()).toEqual('SKILLS'); expect(await SkillsStat.getText()).toEqual('35'); expect(await AbilitiesHeader.getText()).toEqual('ABILITIES'); expect(await AbilitiesStat.getText()).toEqual('52'); expect(await KnowledgeChoicesHeader.getText()).toEqual('KNOWLEDGE CHOICES'); expect(await KnowledgeChoicesStat.getText()).toEqual('33'); await CollapseIcon.click(); browser.sleep(2500); await MapZoomOutIcon.click(); browser.sleep(1000); await MapZoomOutIcon.click(); browser.sleep(1000); await MapZoomOutIcon.click(); browser.sleep(1000); await HideJourneyButton.click(); browser.sleep(2500); await MapZoomOutIcon.click(); browser.sleep(1000); await MapZoomInIcon.click(); browser.sleep(1000); await MapZoomInIcon.click(); browser.sleep(1000); await HideJourneyButton.click(); browser.sleep(2500); await ExpandIcon.click(); browser.sleep(5000); await BackToResultsLink.click(); browser.sleep(2500); /*expect(await ItemPath.getText()).toEqual('IT > Programming & Software Development >'); expect(await ItemTitle.getText()).toEqual('Software Quality Assurance Engineers and Testers');*/ await SearchCareerOne.click(); browser.sleep(2500); expect(await ItemPath.getText()).toEqual('IT > Programming & Software Development >'); expect(await ItemTitle.getText()).toEqual('Software Quality Assurance Engineers and Testers'); expect(await ItemDescription.getText()).toEqual('Develop and execute software test plans in order to identify software problems and their causes.'); expect(await ItemDegreeHeader.getText()).toEqual('TYPICAL DEGREE'); expect(await ItemDegree.getText()).toEqual('College (4 Year)'); expect(await ItemDegreeOneStat.getText()).toEqual('70%'); expect(await ItemDegreeTwo.getText()).toEqual("Associate's degree"); expect(await ItemDegreeTwoStat.getText()).toEqual('15%'); expect(await ItemDegreeThree.getText()).toEqual('Professional degree certificate'); expect(await ItemDegreeThreeStat.getText()).toEqual('7%'); expect(await ItemSalaryHeader.getText()).toEqual('AVERAGE ANNUAL SALARY'); expect(await ItemSalaryStat.getText()).toEqual('$88,510'); expect(await ItemGrowthHeader.getText()).toEqual('PROJECTED GROWTH'); expect(await ItemGrowthStat.getText()).toEqual('9.3'); expect(await ItemGrowthStatTwo.getText()).toEqual('%'); expect(await ItemJobOpeningsHeader.getText()).toEqual('PROJECTED JOB OPENINGS'); expect(await ItemJobOpeningsStat.getText()).toEqual('22,400'); browser.actions().mouseMove(SearchCareerOneViewOnMapIcon).perform().then(function() { browser.sleep(2500); }); expect(await ItemEmployedHeader.getText()).toEqual('CURRENTLY EMPLOYED'); expect(await ItemEmployedStat.getText()).toEqual('287,200'); await MapSearchClearIcon.click(); await DashboardHeaderLink.click().then(function() { browser.sleep(5000); }); browser.waitForAngular(); browser.getCurrentUrl(); }); } function MyActivityJourneys() { it(': MyActivityJourneys, should validate My Journeys widget under the My Activity Dashboard', async function () { var MyDashboardLink = element(by.linkText('My Dashboards')); var MyActivityLink = element(by.linkText('My Activity')); var WidgetTitle = element(by.css('#myjourneys > .jrnys_lead-body-copy > span:nth-child(1)')); var ViewAllLink = element(by.css('.hover-color:nth-child(3)')); var MySavedJourneysTitle = element(by.css('.jrnys_lead-body-copy')); var ViewOnMapText = element(by.css('.col-md-10 .ng-scope:nth-child(1)')); var MySavedJourneyOne = element(by.css('#ee7b663d-2f15-43cc-867c-556c7fc493a5 .cursorPointer')); var MySavedJourneyTwo = element(by.css('#\\30 ac99d25-0cc4-4d8e-b8e4-785f8129d85e .cursorPointer')); var MySavedJourneyThree = element(by.css('#e0049880-9613-4fd5-9ed2-eb468cdc2e55 .cursorPointer')); var MySavedJournyeFour = element(by.css('#\\30 9731631-9cb7-449b-8a51-58d7e730e31b .cursorPointer')); var JourneyTitleOne = element(by.css('.borderTop .jrnys_body-copy')); var JourneyLearnMoreLinkOne = element(by.css('.borderTop > #appendHere > .jrnys_support-text')); var JourneyLearnMoreTitle = element(by.css('.col-md-12 > .ng-binding')); var BackLink = element(by.css('.btn-primary-back-mod')); var JourneyProgressStepsOne = element(by.css('.borderTop')); var JourneyTitleTwo = element(by.css('#appendHere > div.journeyListWidgetDisabled.ng-hide')); var JourneyLearnMoreLinkTwo = element(by.css('.hideSmallRange #appendHere > .jrnys_support-text')); var JourneyProgressStepsTwo = element(by.css('.hideSmallRange > div')); var JourneyTitleThree = element(by.css('#appendHere > div.jrnys_body-copy.ellipsis-on-desktop-sm-view.ng-binding')); var JourneyLearnMoreLinkThree = element(by.css('.hideMidRange #appendHere > .jrnys_support-text')); var JourneyProgressStepsThree = element(by.css('.hideMidRange > div')); var JourneyTitleFour = element(by.css('#appendHere > div.jrnys_body-copy.ellipsis-on-desktop-sm-view.ng-binding')); var JourneyLearnMoreLinkFour = element(by.css('.journeyListWidgetJourneyContainer:nth-child(4) #appendHere > .jrnys_support-text')); var JourneyProgressStepsFour = element(by.css('.journeyListWidgetJourneyContainer:nth-child(4) > div')); var CreateAJourneyButton = element(by.css('.text-right > .btn')); browser.actions().mouseMove(element(by.css('.dashTitleBlock > .jrnys_lead-body-copy'))).perform().then(function() { browser.sleep(1500); }); await MyDashboardLink.click().then(function() { browser.sleep(1500); }); browser.actions().mouseMove(element(by.css('.dashboard-menu > .dropDownFAEdits:nth-child(3) > a'))).perform().then(function() { browser.sleep(1000); }); await MyActivityLink.click().then(function() { browser.sleep(5000); }); expect(await WidgetTitle.getText()).toEqual('My Journeys'); await ViewAllLink.click().then(function() { browser.sleep(5000); }); expect(await MySavedJourneysTitle.getText()).toEqual('My Saved Journeys'); expect(await ViewOnMapText.getText()).toEqual('Select a Journey to show it on the map'); expect(await MySavedJourneyOne.getText()).toEqual('11 to Fitness and Wellness Coordinators through M.U.R.P.'); expect(await MySavedJourneyTwo.getText()).toEqual('8 to Airfield Operations Specialists through College'); expect(await MySavedJourneyThree.getText()).toEqual('10 to Computer and Information Systems Managers through Computer Security Graduate Certificate'); expect(await MySavedJournyeFour.getText()).toEqual('2 to Natural Sciences Managers through Geology M.A.T./M.S.T.'); await BackLink.click().then(function() { browser.sleep(5000); }); expect(await JourneyTitleOne.getText()).toEqual('11 to Fitness and Wellness Coordinators through M.U.R.P.'); await JourneyLearnMoreLinkOne.click().then(function() { browser.sleep(5000); }); expect(await JourneyLearnMoreTitle.getText()).toEqual('11 to Fitness and Wellness Coordinators through M.U.R.P.'); await BackLink.click().then(function() { browser.sleep(5000); }); expect(await JourneyProgressStepsOne.getText()).toContain('4 steps (0 Complete)'); //expect(await JourneyTitleTwo.getText()).toEqual(''); expect(await JourneyLearnMoreLinkTwo.getText()).toEqual('Learn More'); expect(await JourneyProgressStepsTwo.getText()).toContain('7 steps (0 Complete)'); //expect(await JourneyTitleThree.getText()).toEqual(''); expect(await JourneyLearnMoreLinkThree.getText()).toEqual('Learn More'); expect(await JourneyProgressStepsThree.getText()).toContain('5 steps (0 Complete)'); //expect(await JourneyTitleFour.getText()).toEqual(''); expect(await JourneyLearnMoreLinkFour.getText()).toEqual('Learn More'); expect(await JourneyProgressStepsFour.getText()).toContain('13 steps (0 Complete)'); browser.executeScript('window.scrollTo(0, 235);').then(function() { browser.sleep(1000); }); expect(await CreateAJourneyButton.getText()).toContain('Create a Journey'); browser.waitForAngular(); browser.getCurrentUrl(); }); } function SurveyMetrics() { it(': SurveyMetrics, should navigate to My Activity Dashboard and interact with Survey Metrics widget and validate data of 07/30/2019', async function () { var SurveyMetricsTitle = element(by.css('.widget-round-corners:nth-child(2) .fullHeight > .jrnys_lead-body-copy')); var MostRecentResultsTitle = element(by.css('.inner-content-padding:nth-child(1) > .col-sm-4')); var MostRecentResultsStat = element(by.css('.inner-content-padding:nth-child(1) > .col-sm-9')); var SurveyHistoryTitle = element(by.css('.inner-content-padding:nth-child(2) > .col-sm-4')); var SurveyHistoryStat = element(by.css('.jrnys_support-text:nth-child(2) > .ng-binding')); var TimesTakenTitle = element(by.css('.inner-content-padding:nth-child(3) > .col-sm-4')); var TimesTakenStat = element(by.css('.inner-content-padding:nth-child(3) > .col-sm-9')); var NumberOfManualChangesTitle = element(by.css('.inner-content-padding:nth-child(4) > .col-sm-4')); var NumberOfManualChangesStat = element(by.css('.inner-content-padding:nth-child(4) > .col-sm-9')); var SurveyResultsViewAll = element(by.linkText('View All')); var SurveyResultsDivTitle = element(by.css('.col-sm-12 > .ng-binding')); var SurveyResultsDivTop3 = element(by.css('.jrnys_main-headline')); var SurveyResultsDivSubTitle = element(by.css('.jrnys_lead-body-copy:nth-child(4)')); var SurveyResultsDivSubTitleTwo = element(by.css('.jrnys_lead-body-copy:nth-child(6)')); var SurveyResultsDivSubText = element(by.css('.col-sm-8:nth-child(1)')); var SurveyResultsDivRealistic = element(by.css('.col-sm-6:nth-child(1) > .jrnys_lead-body-copy')); var SurveyResultsDivRealisticReadMore = element(by.css('.text-center:nth-child(1) > .text-color-7a')); var SurveyResultsReadMoreTitle = element(by.css('.col-lg-12 > .ng-binding')); var SurveyResultsReadMoreDivDescription = element(by.css('.col-lg-12:nth-child(3)')); var SurveyResultsDivXCloseLink = element(by.css('.default-color4a')); var SurveyResultsDivInvestigative = element(by.css('.col-sm-6:nth-child(2) > .jrnys_lead-body-copy')); var SurveyResultsDivInvestigativeReadMore = element(by.css('.text-center:nth-child(2) > .text-color-7a')); var SurveyResultsDivArtistic = element(by.css('.text-center:nth-child(3) > .jrnys_lead-body-copy')); var SurveyResultsDivArtisticReadMore = element(by.css('.text-center:nth-child(3) > .text-color-7a')); var SurveyResultsDivSocial = element(by.css('.text-center:nth-child(4) > .jrnys_lead-body-copy')); var SurveyResultsDivSocialReadMore = element(by.css('.text-center:nth-child(4) > .text-color-7a')); var SurveyResultsDivEnterprising = element(by.css('.text-center:nth-child(5) > .jrnys_lead-body-copy')); var SurveyResultsDivEnterprisingReadMore = element(by.css('.text-center:nth-child(5) > .text-color-7a')); var SurveyResultsDivConventional = element(by.css('.text-center:nth-child(6) > .jrnys_lead-body-copy')); var SurveyResultsDivConventionalReadMore = element(by.css('.text-center:nth-child(6) > .text-color-7a')); var SurveyResultsReadMoreXCloseLink = element(by.css('.close > .fa')); browser.executeScript('window.scrollTo(0, 0);').then(function() { browser.sleep(2500); }); expect(await SurveyMetricsTitle.getText()).toEqual('Survey Metrics View All'); expect(await MostRecentResultsTitle.getText()).toEqual('Most Recent Result'); expect(await MostRecentResultsStat.getText()).toEqual('Enterprising, Investigative, and Conventional'); expect(await SurveyHistoryTitle.getText()).toEqual('Survey History'); expect(await SurveyHistoryStat.getText()).toContain('Last Taken 2020-'); expect(await TimesTakenTitle.getText()).toEqual('Times Taken'); expect(await NumberOfManualChangesTitle.getText()).toEqual('Number of Manual Changes'); await SurveyResultsViewAll.click().then(function() { browser.sleep(1000); }); expect(await SurveyResultsDivTitle.getText()).toContain('Survey Results for Automated Regression'); element(by.cssContainingText('option', '2019-07-30 | 15:48:30')).click().then(function() { browser.sleep(1000); }); expect(await SurveyResultsDivSubTitle.getText()).toContain("Automated's top strengths are:"); expect(await SurveyResultsDivTop3.getText()).toContain('Artistic, Realistic, and Investigative'); expect(await SurveyResultsDivSubTitleTwo.getText()).toContain('What does this mean?'); expect(await SurveyResultsDivSubText.getText()).toContain('Artistic personality types are creative, intuitive, sensitive, articulate, expressive, unstructured, original, nonconforming, and innovative. Realistic personality types are independent, stable, persistent, genuine, practical, and thrifty.'); expect(await SurveyResultsDivRealistic.getText()).toContain('Realistic'); await SurveyResultsDivRealisticReadMore.click(); browser.sleep(1000); expect(await SurveyResultsReadMoreTitle.getText()).toContain('Realistic'); expect(await SurveyResultsReadMoreDivDescription.getText()).toContain('People who are independent, stable, persistent, genuine, practical, and thrifty. They tend to be no-nonsense and down-to-earth while enjoying physical, athletic, or mechanical activity. They prefer things rather than ideas or people such as being outdoors, using tools, operating machines, interacting with animals, and working with their hands. They also value the natural, concrete, and tangible.'); await SurveyResultsReadMoreXCloseLink.click().then(function() { browser.sleep(1000); }); expect(await SurveyResultsDivInvestigative.getText()).toContain('Investigative'); await SurveyResultsDivInvestigativeReadMore.click(); browser.sleep(1000); expect(await SurveyResultsReadMoreTitle.getText()).toContain('Investigative'); expect(await SurveyResultsReadMoreDivDescription.getText()).toContain('People who are intellectual, introspective, inquisitive, curious, methodical, rational, analytical, and logical. They prefer tasks that are scholarly, scientific, technical, or medical and activities that involve thought, observation, investigation, exploration, and discovery. They like to solve problems, perform experiments, and conduct research.'); await SurveyResultsReadMoreXCloseLink.click().then(function() { browser.sleep(1000); }); expect(await SurveyResultsDivArtistic.getText()).toContain('Artistic'); await SurveyResultsDivArtisticReadMore.click(); browser.sleep(1000); expect(await SurveyResultsReadMoreTitle.getText()).toContain('Artistic'); expect(await SurveyResultsReadMoreDivDescription.getText()).toContain('People who are creative, intuitive, sensitive, articulate, expressive, unstructured, original, nonconforming, and innovative who rely on feelings, imagination, inspiration and who are spontaneous and open-minded. They prefer to work with ideas, abstractions, and concepts. They also enjoy work that is literary, verbal, visual and aesthetic. They typically excel in art, music, dance, drawing, painting, sculpting, drafting, writing, drama, communicating, design, fashion.'); await SurveyResultsReadMoreXCloseLink.click().then(function() { browser.sleep(1000); }); expect(await SurveyResultsDivSocial.getText()).toContain('Social'); await SurveyResultsDivSocialReadMore.click(); browser.sleep(1000); expect(await SurveyResultsReadMoreTitle.getText()).toContain('Social'); expect(await SurveyResultsReadMoreDivDescription.getText()).toContain('People who are kind, generous, cooperative, patient, caring, helpful, empathetic, tactful, and friendly. They prefer tasks that involve socializing, helping others, teaching, teamwork, social interaction, relationship building, humanitarian, educational, philanthropic, interpersonal, and service-oriented work.'); await SurveyResultsReadMoreXCloseLink.click().then(function() { browser.sleep(1000); }); expect(await SurveyResultsDivEnterprising.getText()).toContain('Enterprising'); await SurveyResultsDivEnterprisingReadMore.click(); browser.sleep(1000); expect(await SurveyResultsReadMoreTitle.getText()).toContain('Enterprising'); expect(await SurveyResultsReadMoreDivDescription.getText()).toContain('People who are adventurous, ambitious, assertive, extroverted, energetic, enthusiastic, confident, optimistic, dominant, persuasive, and motivational. They prefer work that involves leadership, business, politics, and public speaking. They enjoy being in charge, taking risks, debating and competing.'); await SurveyResultsReadMoreXCloseLink.click().then(function() { browser.sleep(1000); }); expect(await SurveyResultsDivConventional.getText()).toContain('Conventional'); await SurveyResultsDivConventionalReadMore.click(); browser.sleep(1000); expect(await SurveyResultsReadMoreTitle.getText()).toContain('Conventional'); expect(await SurveyResultsReadMoreDivDescription.getText()).toContain('People who are conscientious and conservative, logical, efficient, orderly, organized, thorough, and detail-oriented. They are individuals who value precision and accuracy. They excel in practical tasks, quantitative measurements, structured environments and people who follow the rules. They prefer work that involves accounting, statistics, mathematics, numerical activities, and office settings.'); await SurveyResultsReadMoreXCloseLink.click().then(function() { browser.sleep(1000); }); await SurveyResultsDivXCloseLink.click().then(function() { browser.sleep(5000); }); browser.waitForAngular(); browser.getCurrentUrl(); }); } function Logins() { it(': Logins, should validate Logins widget under the My Activity Dashboard', async function () { var LoginsWidgetTitle = element(by.css('.jrnys_lead-body-copy .col-lg-4')); var LastLoggedInHeader = element(by.css('.login-display-row:nth-child(1) > .col-lg-4')); var MonthOfHeader = element(by.css('.month-picker-lbl')); var TotalLoginsHeader = element(by.css('.row:nth-child(3) > .col-lg-4')); var TotalLoginsData = element(by.css('.row:nth-child(3) > .col-lg-8')); var WeeklyCeilingLogin = element(by.css('text:nth-child(19)')); var SundayHeader = element(by.css('text:nth-child(8)')); var MondayHeader = element(by.css('text:nth-child(9)')); var MondayData = element(by.css('rect:nth-child(2)')); var TuesdayHeader = element(by.css('text:nth-child(10)')); var TuesdayData = element(by.css('rect:nth-child(3)')); var WednesdayHeader = element(by.css('text:nth-child(11)')); var WednesdayData = element(by.css('rect:nth-child(4)')); var ThursdayHeader = element(by.css('text:nth-child(12)')); var ThursdayData = element(by.css('rect:nth-child(5)')); var FridayHeader = element(by.css('text:nth-child(13)')); var FridayData = element(by.css('rect:nth-child(6)')); var SaturdayHeader = element(by.css('text:nth-child(14)')); var CalendarIcon = element(by.css('.fa-calendar')); var CalendarLeftIcon = element(by.css('.glyphicon-chevron-left')); var MonthOfNovember = element(by.xpath('//span[contains(.,"November")]')); var ViewAllLink = element(by.css('.col-lg-4 > .text-color-7a')); var LoginsDivTitle = element(by.css('.modalTitle')); var November2019 = element(by.css('#loginMonthPicker > .month-picker-lbl')); var LastLoggedInDivHeader = element(by.css('.row:nth-child(2) > .col-lg-3')); var TotalLoginsDivHeader = element(by.css('.row:nth-child(3) > .col-lg-3')); var FrequencyOfLoginsDivHeader = element(by.css('.login-display-row:nth-child(4) > .col-xs-12')); var FavoriteDaysToLoginDivHeader = element(by.css('.col-md-8 > div:nth-child(1)')); var FavoriteDayDivHeaderOne = element(by.css('.col-md-8 > .ng-scope:nth-child(2) > .ng-binding')); var FavoriteDayDivHeaderTwo = element(by.css('.ng-scope:nth-child(3) > .ng-binding')); var FavoriteDayDivHeaderThree = element(by.css('.ng-scope:nth-child(4) > .ng-binding')); var MonthLoginCeiling = element(by.css('text:nth-child(65)')); var November1Header = element(by.css('#monthChart > text:nth-child(31)')); var November2Header = element(by.css('#monthChart > text:nth-child(32)')); var November3Header = element(by.css('#monthChart > text:nth-child(33)')); var November4Header = element(by.css('#monthChart > text:nth-child(34)')); var November5Header = element(by.css('#monthChart > text:nth-child(35)')); var November6Header = element(by.css('#monthChart > text:nth-child(36)')); var November7Header = element(by.css('#monthChart > text:nth-child(37)')); var November8Header = element(by.css('#monthChart > text:nth-child(38)')); var November9Header = element(by.css('#monthChart > text:nth-child(39)')); var November10Header = element(by.css('#monthChart > text:nth-child(40)')); var November11Header = element(by.css('#monthChart > text:nth-child(41)')); var November12Header = element(by.css('#monthChart > text:nth-child(42)')); var November13Header = element(by.css('#monthChart > text:nth-child(43)')); var November14Header = element(by.css('#monthChart > text:nth-child(44)')); var November15Header = element(by.css('#monthChart > text:nth-child(45)')); var November16Header = element(by.css('#monthChart > text:nth-child(46)')); var November17Header = element(by.css('#monthChart > text:nth-child(47)')); var November18Header = element(by.css('#monthChart > text:nth-child(48)')); var November18Data = element(by.css('#monthChart > rect:nth-child(18)')); var November19Header = element(by.css('text:nth-child(49)')); var November19Data = element(by.css('#monthChart > rect:nth-child(19)')); var November20Header = element(by.css('text:nth-child(50)')); var November21Header = element(by.css('text:nth-child(51)')); var November22Header = element(by.css('text:nth-child(52)')); var November23Header = element(by.css('#monthChart > text:nth-child(53)')); var November24Header = element(by.css('text:nth-child(54)')); var November25Header = element(by.css('text:nth-child(55)')); var November26Header = element(by.css('text:nth-child(56)')); var November27Header = element(by.css('text:nth-child(57)')); var November28Header = element(by.css('text:nth-child(58)')); var November29Header = element(by.css('text:nth-child(59)')); var November30Header = element(by.css('text:nth-child(60)')); var MonthlyTuesdayHeader = element(by.css('.day-selecter-container')); var MonthlyTuesdayCeiling = element(by.css('#hourChart > text:nth-child(53)')); var MonthlyTuesday12amHeader = element(by.css('text:nth-child(25)')); var MonthlyTuesday3amHeader = element(by.css('text:nth-child(28)')); var MonthlyTuesday6amHeader = element(by.css('#hourChart > text:nth-child(31)')); var MonthlyTuesday9amHeader = element(by.css('#hourChart > text:nth-child(34)')); var MonthlyTuesday12pmHeader = element(by.css('#hourChart > text:nth-child(37)')); var MonthlyTuesday3pmHeader = element(by.css('#hourChart > text:nth-child(40)')); var MonthlyTuesday3pmData = element(by.css('#hourChart > rect:nth-child(16)')); var MonthlyTuesday6pmHeader = element(by.css('#hourChart > text:nth-child(43)')); var MonthlyTuesday9pmHeader = element(by.css('#hourChart > text:nth-child(46)')); var LoginsDivXCloseLink = element(by.css('.close')); browser.executeScript('window.scrollTo(0, 235);').then(function() { browser.sleep(2500); }); expect(await LoginsWidgetTitle.getText()).toEqual('Logins View All'); expect(await LastLoggedInHeader.getText()).toEqual('Last Logged In:'); expect(await MonthOfHeader.getText()).not.toEqual('Month of November, 2019'); expect(await TotalLoginsHeader.getText()).toEqual('Total Logins:'); expect(await WeeklyCeilingLogin.getText()).toEqual('35'); expect(await SundayHeader.getText()).toEqual('S'); expect(await MondayHeader.getText()).toEqual('M'); browser.actions().mouseMove(MondayData).perform().then(function() { browser.sleep(2500); }); expect(await TuesdayHeader.getText()).toEqual('T'); browser.actions().mouseMove(TuesdayData).perform().then(function() { browser.sleep(2500); }); expect(await WednesdayHeader.getText()).toEqual('W'); browser.actions().mouseMove(WednesdayData).perform().then(function() { browser.sleep(2500); }); expect(await ThursdayHeader.getText()).toEqual('T'); browser.actions().mouseMove(ThursdayData).perform().then(function() { browser.sleep(2500); }); expect(await FridayHeader.getText()).toEqual('F'); expect(await SaturdayHeader.getText()).toEqual('S'); await CalendarIcon.click().then(function() { browser.sleep(2500); }); await CalendarLeftIcon.click().then(function() { browser.sleep(2500); }); await MonthOfNovember.click().then(function() { browser.sleep(2500); }); expect(await LoginsWidgetTitle.getText()).toEqual('Logins View All'); expect(await LastLoggedInHeader.getText()).toEqual('Last Logged In:'); expect(await MonthOfHeader.getText()).not.toEqual('Month of November, 2019'); expect(await TotalLoginsHeader.getText()).toEqual('Total Logins:'); expect(await TotalLoginsData.getText()).toEqual('404'); expect(await MondayHeader.getText()).toEqual('M'); browser.actions().mouseMove(MondayData).perform().then(function() { browser.sleep(2500); }); expect(await TuesdayHeader.getText()).toEqual('T'); browser.actions().mouseMove(TuesdayData).perform().then(function() { browser.sleep(2500); }); expect(await WednesdayHeader.getText()).toEqual('W'); browser.actions().mouseMove(WednesdayData).perform().then(function() { browser.sleep(2500); }); expect(await ThursdayHeader.getText()).toEqual('T'); browser.actions().mouseMove(ThursdayData).perform().then(function() { browser.sleep(2500); }); await ViewAllLink.click().then(function() { browser.sleep(5000); }); expect(await LoginsDivTitle.getText()).toEqual('Login Results for Automated Regression'); expect(await November2019.getText()).toEqual('11/2019'); expect(await LastLoggedInDivHeader.getText()).toEqual('Last Logged In:'); expect(await TotalLoginsDivHeader.getText()).toEqual('Total Logins:'); expect(await FrequencyOfLoginsDivHeader.getText()).toEqual('Frequency of logins for the month of November 2019:'); expect(await FavoriteDaysToLoginDivHeader.getText()).toEqual('Favorite days to login'); expect(await FavoriteDayDivHeaderOne.getText()).toEqual('Tuesday - 132'); expect(await FavoriteDayDivHeaderTwo.getText()).toEqual('Monday - 110'); expect(await FavoriteDayDivHeaderThree.getText()).toEqual('Thursday - 101'); expect(await MonthLoginCeiling.getText()).toEqual('60'); expect(await November1Header.getText()).toEqual('1'); expect(await November2Header.getText()).toEqual('2'); expect(await November3Header.getText()).toEqual('3'); expect(await November4Header.getText()).toEqual('4'); expect(await November5Header.getText()).toEqual('5'); expect(await November6Header.getText()).toEqual('6'); expect(await November7Header.getText()).toEqual('7'); expect(await November8Header.getText()).toEqual('8'); expect(await November9Header.getText()).toEqual('9'); expect(await November10Header.getText()).toEqual('10'); expect(await November11Header.getText()).toEqual('11'); expect(await November12Header.getText()).toEqual('12'); expect(await November13Header.getText()).toEqual('13'); expect(await November14Header.getText()).toEqual('14'); expect(await November15Header.getText()).toEqual('15'); expect(await November16Header.getText()).toEqual('16'); expect(await November17Header.getText()).toEqual('17'); expect(await November18Header.getText()).toEqual('18'); browser.actions().mouseMove(November18Data).perform().then(function() { browser.sleep(2500); }); expect(await November19Header.getText()).toEqual('19'); browser.actions().mouseMove(November19Data).perform().then(function() { browser.sleep(2500); }); expect(await November20Header.getText()).toEqual('20'); expect(await November21Header.getText()).toEqual('21'); expect(await November22Header.getText()).toEqual('22'); expect(await November23Header.getText()).toEqual('23'); expect(await November24Header.getText()).toEqual('24'); expect(await November25Header.getText()).toEqual('25'); expect(await November26Header.getText()).toEqual('26'); expect(await November27Header.getText()).toEqual('27'); expect(await November28Header.getText()).toEqual('28'); expect(await November29Header.getText()).toEqual('29'); expect(await November30Header.getText()).toEqual('30'); expect(await MonthlyTuesdayHeader.getText()).toContain('Wednesday'); expect(await MonthlyTuesdayCeiling.getText()).toEqual('10'); expect(await MonthlyTuesday12amHeader.getText()).toEqual('12a'); expect(await MonthlyTuesday3amHeader.getText()).toEqual('3a'); expect(await MonthlyTuesday6amHeader.getText()).toEqual('6a'); expect(await MonthlyTuesday9amHeader.getText()).toEqual('9a'); expect(await MonthlyTuesday12pmHeader.getText()).toEqual('12p'); expect(await MonthlyTuesday3pmHeader.getText()).toEqual('3p'); browser.actions().mouseMove(MonthlyTuesday3pmData).perform().then(function() { browser.sleep(2500); }); expect(await MonthlyTuesday6pmHeader.getText()).toEqual('6p'); expect(await MonthlyTuesday9pmHeader.getText()).toEqual('9p'); await LoginsDivXCloseLink.click().then(function() { browser.sleep(2500); }); browser.waitForAngular(); browser.getCurrentUrl(); }); } function InstitutionMetrics() { it(': InstitutionMetrics, should validate Institution Metrics widget data', async function () { var InstitutionMetricsWidgetTitle = element(by.css('.widget-round-corners:nth-child(4) .widget-padding > .jrnys_lead-body-copy')); var InstitutionsOfInterestTitle = element(by.css('.fullHeight:nth-child(1) > .widget-padding .text-center:nth-child(1) > .td-metrics-data-width:nth-child(2) .jrnys_body-copy')); var InstitutionsOfInterestStat = element(by.css('.fullHeight:nth-child(1) > .widget-padding .td-metrics-data-width:nth-child(2) .jrnys_stand-out-text')); var AverageCostTitle = element(by.css('.fullHeight:nth-child(1) > .widget-padding .text-center:nth-child(1) > .td-metrics-data-width:nth-child(4) .jrnys_body-copy')); var AverageCostStat = element(by.css('.fullHeight:nth-child(1) > .widget-padding .td-metrics-data-width:nth-child(4) .jrnys_stand-out-text')); var AverageSATACTScoresTitle = element(by.css('.fullHeight:nth-child(1) > .widget-padding .text-center:nth-child(1) > .td-metrics-data-width:nth-child(6) .jrnys_body-copy')); var AverageSATSubTitle = element(by.css('.text-left > .col-sm-3:nth-child(2)')); var AverageSATReadingWritingStat = element(by.css('.col-md-9:nth-child(3) > div:nth-child(1)')); var AverageSATMathStat = element(by.css('.col-md-9:nth-child(3) > div:nth-child(2)')); var AverageACTSubTitle = element(by.css('.jrnys_stand-out-text:nth-child(4)')); var AverageACTEnglishStat = element(by.css('.col-md-9 > .ng-binding:nth-child(1)')); var AverageACTMathStat = element(by.css('.col-md-9 > .ng-binding:nth-child(2)')); var AverageACTCumulativeStat = element(by.css('.col-md-9 > .ng-binding:nth-child(3)')); var TopThreeLocationsTitle = element(by.css('.fullHeight:nth-child(1) > .widget-padding .text-center:nth-child(2) > .td-metrics-data-width:nth-child(2) .jrnys_body-copy:nth-child(1)')); var TopThreeLocationsStat = element(by.css('.td-metrics-data-width:nth-child(2) .jrnys_body-copy:nth-child(2)')); var TypeOfInstitutionTitle = element(by.css('.fullHeight:nth-child(1) > .widget-padding .text-center:nth-child(2) > .td-metrics-data-width:nth-child(4) .jrnys_body-copy:nth-child(1)')); var TypeOfInstitutionStatOne = element(by.css('.td-metrics-data-width:nth-child(4) .jrnys_body-copy:nth-child(2)')); var TypeOfInstitutionStatTwo = element(by.css('.td-metrics-data-width:nth-child(4) .jrnys_body-copy:nth-child(3)')); var AverageGraduationRateTitle = element(by.css('.fullHeight:nth-child(1) > .widget-padding .text-center:nth-child(2) > .td-metrics-data-width:nth-child(6) .jrnys_body-copy:nth-child(1)')); var AverageGraduationRateStat = element(by.css('.col-sm-4:nth-child(2)')); /*browser.actions().mouseMove(element(by.css('#id > .jrnys_lead-body-copy'))).perform().then(function() { browser.sleep(1000); });*/ browser.executeScript('window.scrollTo(0, 720);').then(function() { browser.sleep(2500); }); expect(await InstitutionMetricsWidgetTitle.getText()).toEqual('Institution Metrics'); expect(await InstitutionsOfInterestTitle.getText()).toEqual('Institutions Of Interest'); expect(await InstitutionsOfInterestStat.getText()).toContain('3'); expect(await AverageCostTitle.getText()).toContain('Average Cost'); expect(await AverageCostStat.getText()).toContain('24,391/year'); expect(await AverageSATACTScoresTitle.getText()).toContain('Average SAT/ACT Scores'); expect(await AverageSATSubTitle.getText()).toContain('SAT'); expect(await AverageSATReadingWritingStat.getText()).toContain('Reading & Writing - 612'); expect(await AverageSATMathStat.getText()).toContain('Math - 615'); expect(await AverageACTSubTitle.getText()).toContain('ACT'); expect(await AverageACTEnglishStat.getText()).toContain('English - 27'); expect(await AverageACTMathStat.getText()).toContain('Math - 26'); expect(await AverageACTCumulativeStat.getText()).toContain('Cumulative - 27'); expect(await TopThreeLocationsTitle.getText()).toContain('Top 3 Locations'); expect(await TopThreeLocationsStat.getText()).toContain('CA'); expect(await TypeOfInstitutionTitle.getText()).toContain('Type of Institution'); expect(await TypeOfInstitutionStatOne.getText()).toContain('Public - 33%'); expect(await TypeOfInstitutionStatTwo.getText()).toContain('Private nonprofit - 67%'); expect(await AverageGraduationRateTitle.getText()).toContain('Average Graduation Rate'); expect(await AverageGraduationRateStat.getText()).toContain('77%'); browser.waitForAngular(); browser.getCurrentUrl(); }); } function InstitutionsOfInterest() { it(': InstitutionsOfInterest, should validate Institutions Of Interest widget data', async function () { var InstitutionsOfInterestWidgetTitle = element(by.css('#id > .jrnys_lead-body-copy')); var InstitutionsCardTitleOne = element(by.css('.col-xs-4:nth-child(1) .jrnys_body-copy')); var InstitutionsUnfollowIconOne = element(by.css('.iconSpacing .journey-follow-selected')); var InstitutionCardTitleTwo = element(by.css('.col-xs-4:nth-child(2) .jrnys_body-copy')); var InstitutionCardTitleThree = element(by.css('.col-xs-4:nth-child(3) .jrnys_body-copy')); var InstitutionOfInterestViewAllLink = element(by.css('.jrnys_lead-body-copy:nth-child(1) > .ng-binding')); var InstitutionOfInterestDivTitle = element(by.css('.col-sm-12 > .ng-binding')); var EllipsisInstitutions = element(by.css('.glyphicon-option-vertical:nth-child(1)')); var InstitutionLearnMoreLink = element(by.css('.row:nth-child(1) > .col-xs-9 > span')); var InstitutionDetailsLink = element(by.css('.row:nth-child(2) > .col-xs-9 > span')); var UndergraduateStudentsTitle = element(by.css('.ng-scope:nth-child(1) > td > .item-title')); var UndergraduateStudentsStat = element(by.css('.ng-scope:nth-child(1) > td > .item-body')); var TuitionTitle = element(by.css('.ng-scope:nth-child(2) > td > .item-title')); var TuitionStat = element(by.css('.ng-scope:nth-child(2) > td > .item-body')); var GraduationRateTitle = element(by.css('.ng-scope:nth-child(3) > td > .item-title')); var GraduationRateStat = element(by.css('.ng-scope:nth-child(3) > td > .item-body')); var EarningsAfterSchoolTitle = element(by.css('.ng-scope:nth-child(4) > td > .item-title')); var EarningsAfterSchoolStat = element(by.css('.ng-scope:nth-child(4) > td > .item-body')); var InstitutionOfInterestDivXCloseLink = element(by.css('.default-color4a')); var InstitutionCardLearnMoreButton = element(by.css('.in > .panel-body .row:nth-child(1) span')); /*browser.actions().mouseMove(element(by.css('.widget-round-corners:nth-child(6) .fullHeight .jrnys_lead-body-copy'))).perform().then(function() { browser.sleep(1000); });*/ browser.executeScript('window.scrollTo(0, 1200);').then(function() { browser.sleep(2500); }); expect(await InstitutionsOfInterestWidgetTitle.getText()).toEqual('Institutions Of Interest View All'); expect(await InstitutionsCardTitleOne.getText()).toEqual('Golden Gate University-San Francisco'); await InstitutionsUnfollowIconOne.click().then(function() { browser.sleep(2500); }); expect(await InstitutionCardTitleTwo.getText()).toEqual('San Diego State University'); expect(await InstitutionCardTitleThree.getText()).toEqual('University of San Diego'); await InstitutionOfInterestViewAllLink.click(); expect(await InstitutionOfInterestDivTitle.getText()).toEqual('Institutions visited by Automated Regression'); await EllipsisInstitutions.click().then(function() { browser.sleep(2500); }); expect(await InstitutionLearnMoreLink.getText()).toContain('Learn More'); expect(await InstitutionDetailsLink.getText()).toContain('Details'); expect(await UndergraduateStudentsTitle.getText()).toContain('Undergraduate Students'); expect(await UndergraduateStudentsStat.getText()).toContain('29,781'); expect(await TuitionTitle.getText()).toContain('Tuition'); expect(await TuitionStat.getText()).toContain('$14,030'); expect(await GraduationRateTitle.getText()).toContain('Graduation Rate'); expect(await GraduationRateStat.getText()).toContain('0.7381'); expect(await EarningsAfterSchoolTitle.getText()).toContain('Earnings After School'); expect(await EarningsAfterSchoolStat.getText()).toContain('$51,000'); browser.sleep(1000); await InstitutionCardLearnMoreButton.click().then(function() { browser.sleep(2500); }) browser.getAllWindowHandles().then(function (handles) { var AtAGlanceWidgetTitle = element(by.css('#atAGlanceWidget .jrnys_lead-body-copy')); var FourYearTitle = element(by.css('.row-height:nth-child(1) .jrnys_support-text')); var FourYearStat = element(by.css('.row-height:nth-child(1) .ellipsis')); var UndergraduateStudentsTitle = element(by.css('.row-height:nth-child(2) .jrnys_support-text')); var UndergraduateStudentsStat = element(by.css('.row-height:nth-child(2) .col-sm-offset-4 > div')); var LocationTitle = element(by.css('.row-height:nth-child(3) .jrnys_support-text')); var LocationStat = element(by.css('.row-height:nth-child(3) .col-sm-offset-4 > div')); var ClassroomsTitle = element(by.css('.row-height:nth-child(4) .jrnys_support-text')); var ClassroomsStat = element(by.css('.row-height:nth-child(4) .col-sm-offset-4 > div')); var CostTitle = element(by.css('.row-height:nth-child(5) .jrnys_support-text')); var CostStat = element(by.css('.row-height:nth-child(5) .ellipsis')); var GraduationRateTitle = element(by.css('.row-height:nth-child(6) .jrnys_support-text')); var GraduationRateStat = element(by.css('.row-height:nth-child(6) .ellipsis')); var ReturningStudentsTitle = element(by.css('.row-height:nth-child(7) .jrnys_support-text')); var ReturningStudentsStat = element(by.css('.row-height:nth-child(7) .ellipsis')); var AfterSchoolEarningsTitle = element(by.css('.row-height:nth-child(8) .jrnys_support-text')); var AfterSchoolEarningsStat = element(by.css('.row-height:nth-child(8) .ellipsis')); var PayingDownDebtTitle = element(by.css('.row-height:nth-child(9) .jrnys_support-text')); var PayingDownDebtStat = element(by.css('.row-height:nth-child(9) .ellipsis')); var LearnMoreTitle = element(by.css('td > div:nth-child(1) > .jrnys_lead-body-copy')); var LearnMoreInfoIcon = element(by.css('.info-icon:nth-child(2) > .journey-info-circle')); var DivTitle = element(by.css('.col-lg-12 > .ng-binding')); var LearnMoreInfoDescription = element(by.linkText('http://www.sdsu.edu')); var DivXCloseLink = element(by.css('.close > .fa')); var LocationAndContactWidgetTitle = element(by.css('.widget-round-corners > .fullHeight > .widgetHeaderContainer > .jrnys_lead-body-copy')); var SchoolMapName = element(by.css('.col-xs-4:nth-child(1) > .ng-binding:nth-child(1)')); var MapAddress = element(by.css('.col-xs-4 > .ng-binding:nth-child(2)')); var AcademicProgramsWidgetTitle = element(by.css('#acadProgramsid > .jrnys_lead-body-copy')); var AcademicProgramsInfoIcon = element(by.css('.header-carousel-icon')); var DivDescription = element(by.css('.col-lg-12:nth-child(3)')); var AcademicProgramsCardOne = element(by.css('.item:nth-child(1) > .col-xs-4:nth-child(1) .jrnys_body-copy')); var AcademicProgramsCardTwo = element(by.css('.item:nth-child(1) > .col-xs-4:nth-child(2) .jrnys_body-copy')); var AcademicProgramsCardThree = element(by.css('.item:nth-child(1) > .col-xs-4:nth-child(3) .jrnys_body-copy')); var TestScoresWidgetTitle = element(by.css('#TestScoresID .jrnys_lead-body-copy')); var TestScoresWidgetInfoIcon = element(by.css('.header-icon:nth-child(2)')); var TestScoresWidgetDescription = element(by.css('#TestScoresID > div:nth-child(2)')); var TestScoresStatTitle = element(by.css('div:nth-child(3) > .ng-scope:nth-child(1) > .ng-binding')); var TestScoresCriticalReading = element(by.css('.ng-scope:nth-child(1) > figure > .ng-binding')); var CriticalReadingRangeStart = element(by.css('.ng-scope:nth-child(1) > figure .picc-range-label-min > .ng-binding')); var CriticalReadingRangeOne = element(by.css('.ng-scope:nth-child(1) > figure .picc-range-label-lower > .ng-binding')); var CriticalReadingRangeTwo = element(by.css('.ng-scope:nth-child(1) > figure .picc-range-label-middle > .ng-binding')); var CriticalReadingRangeThree = element(by.css('.ng-scope:nth-child(1) > figure .picc-range-label-upper > .ng-binding')); var CriticalReadingRangeEnd = element(by.css('.ng-scope:nth-child(1) > figure .picc-range-label-max > .ng-binding')); var TestScoresMath = element(by.css('.ng-scope:nth-child(2) > figure > .ng-binding')); var MathRangeStart = element(by.css('.ng-scope:nth-child(2) > figure .picc-range-label-min > .ng-binding')); var MathRangeOne = element(by.css('.ng-scope:nth-child(2) > figure .picc-range-label-lower > .ng-binding')); var MathRangeTwo = element(by.css('.ng-scope:nth-child(2) > figure .picc-range-label-middle > .ng-binding')); var MathRangeThree = element(by.css('.ng-scope:nth-child(2) > figure .picc-range-label-upper > .ng-binding')); var MathRangeEnd = element(by.css('.ng-scope:nth-child(2) > figure .picc-range-label-max > .ng-binding')); var TestScoresWriting = element(by.css('.ng-scope:nth-child(3) > figure > .ng-binding')); var WritingRangeStart = element(by.css('.ng-scope:nth-child(3) > figure .picc-range-label-min > .ng-binding')); var WritingRangeEnd = element(by.css('.ng-scope:nth-child(3) > figure .picc-range-label-max > .ng-binding')); var TestScoresACT = element(by.css('.ng-scope:nth-child(4) > .ng-binding')); var ACTRangeStart = element(by.css('.ng-scope:nth-child(4) > figure .picc-range-label-min > .ng-binding')); var ACTRangeOne = element(by.css('.ng-scope:nth-child(4) > figure .picc-range-label-lower > .ng-binding')); var ACTRangeTwo = element(by.css('.ng-scope:nth-child(4) > figure .picc-range-label-middle > .ng-binding')); var ACTRangeThree = element(by.css('.ng-scope:nth-child(4) > figure .picc-range-label-upper > .ng-binding')); var ACTRangeEnd = element(by.css('.ng-scope:nth-child(4) > figure .picc-range-label-max > .ng-binding')); var GraduationAndRetentionWidgetTitle = element(by.css('#GraduationRetentionID .jrnys_lead-body-copy')); var GraduationRateTitleTwo = element(by.css('#GraduationRetentionID .col-xs-6:nth-child(1) > .section-heading-wrapper > span')); var GraduationRateInfoIcon = element(by.css('#GraduationRetentionID .col-xs-6:nth-child(1) .fa')); var GraduationRateStatOne = element(by.css('#GraduationRetentionID .col-xs-6:nth-child(1) .label')); var GraduationRateStatTwo = element(by.css('#GraduationRetentionID .col-xs-6:nth-child(1) figcaption > .ng-binding')); var StudentsWhoReturnTitle = element(by.css('#GraduationRetentionID .col-xs-6:nth-child(2) > .section-heading-wrapper > span')); var StudentsWhoReturnInfoIcon = element(by.css('#GraduationRetentionID .col-xs-6:nth-child(2) .fa')); var StudentsWhoReturnStatOne = element(by.css('#GraduationRetentionID .col-xs-6:nth-child(2) .label')); var StudentsWhoReturnStatTwo = element(by.css('#GraduationRetentionID .col-xs-6:nth-child(2) figcaption > .ng-binding')); var GraduationRetentionNationalAvg = element(by.css('#GraduationRetentionID > .row div:nth-child(3)')); var CostWidgetTitle = element(by.css('#CostID .jrnys_lead-body-copy')); var AverageAnnualCostTitle = element(by.css('#CostID .col-xs-6 > div > span')); var AverageAnnualCostInfoIcon = element(by.css('#CostID > .row .fa')); var AverageAnnualCostStatOne = element(by.css('.picc-meter-line > .font-size')); var AverageAnnualCostStatTwo = element(by.css('figcaption > .font-size')); var CostNationalAvg = element(by.css('.font-size:nth-child(3)')); var CostWidgetHeader = element(by.css('.spacer-bottom-small')); var CostWidgetDescription = element(by.css('.family-income-align')); var CostByFamilyIncome = element(by.css('#CostID .col-xs-6:nth-child(2) > div:nth-child(3)')); var FamilyIncomeHeader = element(by.css('.family-income-header > .col-xs-6:nth-child(1)')); var FamilyIncomeStatOne = element(by.css('.family-income-row:nth-child(5) > .col-xs-6:nth-child(1)')); var FamilyIncomeStatTwo = element(by.css('.family-income-row:nth-child(6) > .col-xs-6:nth-child(1)')); var FamilyIncomeStatThree = element(by.css('.family-income-row:nth-child(7) > .col-xs-6:nth-child(1)')); var FamilyIncomeStatFour = element(by.css('.family-income-row:nth-child(8) > .col-xs-6:nth-child(1)')); var FamilyIncomeStatFive = element(by.css('.family-income-row:nth-child(9) > .col-xs-6:nth-child(1)')); var AverageCostHeader = element(by.css('.font-size:nth-child(2)')); var AverageCostStatOne = element(by.css('.family-income-row:nth-child(5) > .text-center')); var AverageCostStatTwo = element(by.css('.family-income-row:nth-child(6) > .text-center')); var AverageCostStatThree = element(by.css('.family-income-row:nth-child(7) > .text-center')); var AverageCostStatFour = element(by.css('.family-income-row:nth-child(8) > .text-center')); var AverageCostStatFive = element(by.css('.family-income-row:nth-child(9) > .text-center')); var FinancialAidAndDebtWidgetTitle = element(by.css('#FinancialAidDebtID .jrnys_lead-body-copy')); var FinancialAidAndDebtInfoIcon = element(by.css('.header-icon:nth-child(1)')); var TypicalTotalDebtTitle = element(by.css('.col-xs-5:nth-child(1) > div:nth-child(1)')); var TypicalTotalDebtInfoIcon = element(by.css('.col-xs-5:nth-child(1) .fa')); var TypicalTotalDebtStat = element(by.css('.col-xs-5:nth-child(1) > .ng-binding')); var StudentLoansStat = element(by.css('.col-xs-6 tr:nth-child(1) > .ng-binding')); var StudentLoansTitle = element(by.css('tr:nth-child(1) > .pie-label')); var NoStudentLoansStat = element(by.css('tr:nth-child(2) > .ng-binding')); var NoStudentLoansTitle = element(by.css('tr:nth-child(2) > .pie-label')); var StudentsPayingDownDebtTitle = element(by.css('.spacer-bottom > .section-heading')); var StudentsPayingDownDebtInfoIcon = element(by.css('.spacer-bottom > .fa')); var PayingDownDebtStatOne = element(by.css('.debt-meter .label')); var PayingDownDebtStatTwo = element(by.css('.debt-meter > figcaption > .ng-binding')); var PayingDownDebtNationalAvg = element(by.css('.row:nth-child(3) > .col-xs-6 > div:nth-child(3)')); var TypicalMonthlyLoanPaymentTitle = element(by.css('.col-xs-offset-1:nth-child(2) > div:nth-child(1)')); var TypicalMonthlyLoanPaymentInfoIcon = element(by.css('.col-xs-5:nth-child(2) .fa')); var TypicalMonthlyLoanPaymentStat = element(by.css('.col-xs-5:nth-child(2) > .ng-binding')); var EarningsAfterSchoolWidgetTitle = element(by.css('#EarningsAfterSchoolID .jrnys_lead-body-copy')); var PercentageEarningTitle = element(by.css('.col-xs-6:nth-child(1) > .earn-section-wrapper > span')); var PercentageEarningInfoIcon = element(by.css('.col-xs-6:nth-child(1) > .earn-section-wrapper > .fa')); var PercentageEarningStat = element(by.css('.col-xs-6 > .ng-binding:nth-child(2)')); var PercentageEarningDescription = element(by.css('#EarningsAfterSchoolID .col-xs-6:nth-child(1) > div:nth-child(3)')); var SalaryAfterAttendingTitle = element(by.css('.section-heading-wrapper > .section-heading')); var SalaryAfterAttendingInfoIcon = element(by.css('.col-xs-6:nth-child(2) > .earn-section-wrapper > .fa')); var SalaryAfterAttendingStatOne = element(by.css('#EarningsAfterSchoolID .label')); var SalaryAfterAttendingStatTwo = element(by.css('#EarningsAfterSchoolID figcaption > .ng-binding')); var SalaryAfterAttendingNationalAvg = element(by.css('#EarningsAfterSchoolID .col-xs-6:nth-child(2) > div:nth-child(3)')); browser.switchTo().window(handles[1]).then(async function () { browser.sleep(5000); expect(await browser.driver.getCurrentUrl()).toContain("/CSC/School/122409"); expect(await AtAGlanceWidgetTitle.getText()).toEqual('At A Glance'); expect(await FourYearTitle.getText()).toEqual('4 year'); expect(await FourYearStat.getText()).toEqual('Public'); expect(await UndergraduateStudentsTitle.getText()).toEqual('Undergraduate Students'); expect(await UndergraduateStudentsStat.getText()).toEqual('29,781'); expect(await LocationTitle.getText()).toEqual('Location'); expect(await LocationStat.getText()).toEqual('City'); expect(await ClassroomsTitle.getText()).toEqual('Classrooms'); expect(await ClassroomsStat.getText()).toEqual('Large'); expect(await CostTitle.getText()).toEqual('Cost'); expect(await CostStat.getText()).toEqual('Lower Than Average'); expect(await GraduationRateTitle.getText()).toEqual('Graduation Rate'); expect(await GraduationRateStat.getText()).toEqual('Above Average'); expect(await ReturningStudentsTitle.getText()).toEqual('Returning students'); expect(await ReturningStudentsStat.getText()).toEqual('Above Average'); expect(await AfterSchoolEarningsTitle.getText()).toEqual('After School Earnings'); expect(await AfterSchoolEarningsStat.getText()).toEqual('Above Average'); expect(await PayingDownDebtTitle.getText()).toEqual('Paying Down Debt'); expect(await PayingDownDebtStat.getText()).toEqual('Above Average'); expect(await LearnMoreTitle.getText()).toEqual('San Diego State University'); await LearnMoreInfoIcon.click(); browser.sleep(2500); expect(await DivTitle.getText()).toEqual('San Diego State University'); expect(await LearnMoreInfoDescription.getText()).toEqual('http://www.sdsu.edu'); await DivXCloseLink.click().then(function() { browser.sleep(1000); }); browser.executeScript('window.scrollTo(0, 165);').then(function() { browser.sleep(1000); }); expect(await LocationAndContactWidgetTitle.getText()).toEqual('Location & Contact'); expect(await SchoolMapName.getText()).toEqual('San Diego State University'); expect(await MapAddress.getText()).toEqual('San Diego, CA 92182-0001'); browser.sleep(2500); browser.executeScript('window.scrollTo(0, 480);').then(function() { browser.sleep(1000); }); expect(await AcademicProgramsWidgetTitle.getText()).toEqual('Academic Programs'); await AcademicProgramsInfoIcon.click().then(function() { browser.sleep(1000); }); expect(await DivTitle.getText()).toEqual('Academic Programs'); expect(await DivDescription.getText()).toEqual('The five largest programs of study, as measured as the share of degrees awarded.'); await DivXCloseLink.click().then(function() { browser.sleep(1000); }); expect(await AcademicProgramsCardOne.getText()).toEqual('Business, Management, Marketing, and Related Support Services'); expect(await AcademicProgramsCardTwo.getText()).toEqual('Social Sciences'); expect(await AcademicProgramsCardThree.getText()).toEqual('Health Professions and Related Programs'); browser.executeScript('window.scrollTo(0, 1330);').then(function() { browser.sleep(1000); }); expect(await TestScoresWidgetTitle.getText()).toEqual('Test Scores'); await TestScoresWidgetInfoIcon.click().then(function() { browser.sleep(1000); }); expect(await DivTitle.getText()).toEqual('Test Scores'); expect(await DivDescription.getText()).toEqual('At schools that report their test scores, 50 percent had scores within this range. Of the remaining 50 percent, half were above the range and half were below. Not all schools require test scores.'); await DivXCloseLink.click().then(function() { browser.sleep(1000); }); expect(await TestScoresWidgetDescription.getText()).toEqual('Students who were admitted and enrolled typically has standardized test scores in these ranges.'); expect(await TestScoresStatTitle.getText()).toEqual('SAT'); expect(await TestScoresCriticalReading.getText()).toEqual('Critical Reading'); expect(await CriticalReadingRangeStart.getText()).toEqual('0'); expect(await CriticalReadingRangeOne.getText()).toEqual('550'); expect(await CriticalReadingRangeTwo.getText()).toEqual('595'); expect(await CriticalReadingRangeThree.getText()).toEqual('640'); expect(await CriticalReadingRangeEnd.getText()).toEqual('800'); expect(await TestScoresMath.getText()).toEqual('Math'); expect(await MathRangeStart.getText()).toEqual('0'); expect(await MathRangeOne.getText()).toEqual('540'); expect(await MathRangeTwo.getText()).toEqual('595'); expect(await MathRangeThree.getText()).toEqual('650'); expect(await MathRangeEnd.getText()).toEqual('800'); expect(await TestScoresWriting.getText()).toEqual('Writing(Data not available)'); expect(await WritingRangeStart.getText()).toEqual('0'); expect(await WritingRangeEnd.getText()).toEqual('800'); expect(await TestScoresACT.getText()).toEqual('ACT'); expect(await ACTRangeStart.getText()).toEqual('0'); expect(await ACTRangeOne.getText()).toEqual('23'); expect(await ACTRangeTwo.getText()).toEqual('26'); expect(await ACTRangeThree.getText()).toEqual('28'); expect(await ACTRangeEnd.getText()).toEqual('36'); expect(await GraduationAndRetentionWidgetTitle.getText()).toEqual('Graduation & Retention'); expect(await GraduationRateTitleTwo.getText()).toEqual('Graduation Rate'); await GraduationRateInfoIcon.click().then(function() { browser.sleep(1000); }); expect(await DivTitle.getText()).toEqual('Graduation Rate'); expect(await DivDescription.getText()).toEqual('The graduation rate within 150 percent of the expected time to completion (typically six years for schools that award predominantly four-year degrees and three years for schools that award predominantly two-year degrees). These rates are only for full-time students enrolled for the first time.'); await DivXCloseLink.click().then(function() { browser.sleep(1000); }); expect(await GraduationRateStatOne.getText()).toEqual('42%'); expect(await GraduationRateStatTwo.getText()).toEqual('74%'); expect(await StudentsWhoReturnTitle.getText()).toEqual('Students Who Return After Their First Year'); await StudentsWhoReturnInfoIcon.click().then(function() { browser.sleep(1000); }); expect(await DivTitle.getText()).toEqual('Students Who Return After Their First Year'); expect(await DivDescription.getText()).toEqual('The share of first-time, full-time undergraduates who returned to the institution after their freshman year.'); await DivXCloseLink.click().then(function() { browser.sleep(1000); }); expect(await StudentsWhoReturnStatOne.getText()).toEqual('68%'); expect(await StudentsWhoReturnStatTwo.getText()).toEqual('89%'); expect(await GraduationRetentionNationalAvg.getText()).toEqual('---- National Average'); expect(await CostWidgetTitle.getText()).toEqual('Cost'); expect(await AverageAnnualCostTitle.getText()).toEqual('Average Annual Cost'); await AverageAnnualCostInfoIcon.click().then(function() { browser.sleep(1000); }); expect(await DivTitle.getText()).toEqual('Average Annual Cost'); expect(await DivDescription.getText()).toEqual('The average annual net price for federal financial aid recipients, after aid from the school, state, or federal government. For public schools, this is only the average cost for in-state students.'); await DivXCloseLink.click().then(function() { browser.sleep(1000); }); expect(await AverageAnnualCostStatOne.getText()).toEqual('$16,127'); expect(await AverageAnnualCostStatTwo.getText()).toEqual('$14,030'); expect(await CostNationalAvg.getText()).toEqual('---- National Average'); expect(await CostWidgetHeader.getText()).toEqual('By Family Income'); expect(await CostWidgetDescription.getText()).toEqual('Depending on the federal, state, or institutional grant aid available, students in your income bracket may pay more or less than the overall average costs.'); expect(await CostByFamilyIncome.getText()).toEqual('Average cost by family income'); expect(await FamilyIncomeHeader.getText()).toEqual('Family Income'); expect(await FamilyIncomeStatOne.getText()).toEqual('$0-$30,000'); expect(await FamilyIncomeStatTwo.getText()).toEqual('$30,001-$48,000'); expect(await FamilyIncomeStatThree.getText()).toEqual('$48,001-$75,000'); expect(await FamilyIncomeStatFour.getText()).toEqual('$75,001-$110,000'); expect(await FamilyIncomeStatFive.getText()).toEqual('$110,001+'); expect(await AverageCostHeader.getText()).toEqual('Average Cost'); expect(await AverageCostStatOne.getText()).toEqual('$8,182'); expect(await AverageCostStatTwo.getText()).toEqual('$10,145'); expect(await AverageCostStatThree.getText()).toEqual('$14,311'); expect(await AverageCostStatFour.getText()).toEqual('$18,262'); expect(await AverageCostStatFive.getText()).toEqual('$20,547'); browser.executeScript('window.scrollTo(0, document.body.scrollHeight);').then(function() { browser.sleep(1000); }); expect(await FinancialAidAndDebtWidgetTitle.getText()).toEqual('Financial Aid & Debt'); await FinancialAidAndDebtInfoIcon.click().then(function() { browser.sleep(1000); }); expect(await DivTitle.getText()).toEqual('Students Receiving Federal Loans'); expect(await DivDescription.getText()).toEqual('The share of undergraduate students who borrowed federal loans to help pay for college. Excludes Parent PLUS loans.'); await DivXCloseLink.click().then(function() { browser.sleep(1000); }); expect(await TypicalTotalDebtTitle.getText()).toEqual('Typical Total Debt'); await TypicalTotalDebtInfoIcon.click().then(function() { browser.sleep(1000); }); expect(await DivTitle.getText()).toEqual('Typical Total Debt'); expect(await DivDescription.getText()).toEqual('The median federal debt of undergraduate borrowers who completed. This figure includes only federal loans; it excludes private student loans and Parent PLUS loans.'); await DivXCloseLink.click().then(function() { browser.sleep(1000); }); expect(await TypicalTotalDebtStat.getText()).toEqual('$15,340'); expect(await StudentLoansStat.getText()).toEqual('31%'); expect(await StudentLoansTitle.getText()).toEqual('Students Receiving Federal Loans'); expect(await NoStudentLoansStat.getText()).toEqual('69%'); expect(await NoStudentLoansTitle.getText()).toEqual('Not Receiving Student Loans'); expect(await StudentsPayingDownDebtTitle.getText()).toEqual('Students Paying Down Debt'); await StudentsPayingDownDebtInfoIcon.click().then(function() { browser.sleep(1000); }); expect(await DivTitle.getText()).toEqual('Students Paying Down Debt'); expect(await DivDescription.getText()).toEqual('The share of students who have repaid at least $1 of the principal balance on their federal loans within 3 years of leaving school.'); await DivXCloseLink.click().then(function() { browser.sleep(1000); }); expect(await PayingDownDebtStatOne.getText()).toEqual('46%'); expect(await PayingDownDebtStatTwo.getText()).toEqual('66%'); expect(await PayingDownDebtNationalAvg.getText()).toEqual('---- National Average'); expect(await TypicalMonthlyLoanPaymentTitle.getText()).toEqual('Typical Monthly Loan Payment'); await TypicalMonthlyLoanPaymentInfoIcon.click().then(function() { browser.sleep(1000); }); expect(await DivTitle.getText()).toEqual('Typical Monthly Loan Payment'); expect(await DivDescription.getText()).toEqual('The median monthly load payment for students who completed, if it were repaid over 10 years at a 4.29 percent interest rate.'); await DivXCloseLink.click().then(function() { browser.sleep(1000); }); expect(await TypicalMonthlyLoanPaymentStat.getText()).toEqual('$159/mo'); expect(await PercentageEarningTitle.getText()).toEqual('Percentage Earning Above High School Grad'); expect(await EarningsAfterSchoolWidgetTitle.getText()).toEqual('Earnings After School'); await PercentageEarningInfoIcon.click().then(function() { browser.sleep(1000); }); expect(await DivTitle.getText()).toEqual('Percentage Earning Above High School Grad'); expect(await DivDescription.getText()).toEqual('The share of former students earning more than $25,000, or about the average earnings of a high school graduate aged 25-34, 6 years after they first enroll.'); await DivXCloseLink.click().then(function() { browser.sleep(1000); }); expect(await PercentageEarningStat.getText()).toEqual('70%'); expect(await PercentageEarningDescription.getText()).toEqual('of students who attend this school earned, on average, more than those with only a high school diploma.'); expect(await SalaryAfterAttendingTitle.getText()).toEqual('Salary After Attending'); await SalaryAfterAttendingInfoIcon.click().then(function() { browser.sleep(1000); }); expect(await DivTitle.getText()).toEqual('Salary After Attending'); expect(await DivDescription.getText()).toEqual('The median earnings of former students who received federal financial aid, at 10 years after entering the school.'); await DivXCloseLink.click().then(function() { browser.sleep(1000); }); expect(await SalaryAfterAttendingStatOne.getText()).toEqual('$33,500'); expect(await SalaryAfterAttendingStatTwo.getText()).toEqual('$51,000'); expect(await SalaryAfterAttendingNationalAvg.getText()).toEqual('---- National Average'); browser.driver.close(); browser.switchTo().window(handles[0]); browser.sleep(5000); expect(browser.driver.getCurrentUrl()).toContain("/activityDashboard"); expect(InstitutionsOfInterestWidgetTitle.getText()).toEqual('Institutions Of Interest View All'); await InstitutionOfInterestDivXCloseLink.click().then(function() { browser.sleep(2500); }) }); }); browser.waitForAngular(); browser.getCurrentUrl(); }); } function OccupationMetrics() { it(': OccupationMetrics, should validate Occupation Metrics widget data', async function () { var OccupationMetricsWidgetTitle = element(by.css('.widget-round-corners:nth-child(6) .fullHeight .jrnys_lead-body-copy')); var OccupationsOfInterestTitle = element(by.css('.fullHeight:nth-child(2) > .widget-padding .text-center:nth-child(1) > .td-metrics-data-width:nth-child(2) .jrnys_body-copy')); var OccupationsOfInterestStat = element(by.css('.fullHeight:nth-child(2) > .widget-padding .td-metrics-data-width:nth-child(2) .jrnys_stand-out-text')); var AverageAnnualSalaryTitle = element(by.css('.fullHeight:nth-child(2) > .widget-padding .text-center:nth-child(1) > .td-metrics-data-width:nth-child(4) .jrnys_body-copy')); var AverageAnnualSalaryStat = element(by.css('.fullHeight:nth-child(2) > .widget-padding .td-metrics-data-width:nth-child(4) .jrnys_stand-out-text')); var AverageProjectedJobOpeningsTitle = element(by.css('.fullHeight:nth-child(2) > .widget-padding .text-center:nth-child(1) > .td-metrics-data-width:nth-child(6) .jrnys_body-copy')); var AverageProjectedJobOpeningsStat = element(by.css('.text-center:nth-child(1) > .td-metrics-data-width:nth-child(6) > .text-left > .ng-binding')); var TopClustersTitle = element(by.css('.fullHeight:nth-child(2) > .widget-padding .text-center:nth-child(2) > .td-metrics-data-width:nth-child(2) .jrnys_body-copy:nth-child(1)')); var TopClustersStatOne = element(by.css('.td-metrics-data-width:nth-child(2) .ng-scope:nth-child(2)')); var TopClustersStatTwo = element(by.css('.td-metrics-data-width:nth-child(2) .ng-scope:nth-child(3)')); var TopClustersStatThree = element(by.css('.td-metrics-data-width:nth-child(2) .ng-scope:nth-child(4)')); var AverageProjectedGrowthTitle = element(by.css('.fullHeight:nth-child(2) > .widget-padding .text-center:nth-child(2) > .td-metrics-data-width:nth-child(4) .jrnys_body-copy:nth-child(1)')); var AverageProjectedGrowthStat = element(by.css('.jrnys_body-copy:nth-child(2) > .ng-binding')); var TypicalDegreesTitle = element(by.css('.fullHeight:nth-child(2) > .widget-padding .text-center:nth-child(2) > .td-metrics-data-width:nth-child(6) .jrnys_body-copy:nth-child(1)')); var TypicalDegreesStatOne = element(by.css('.td-metrics-data-width:nth-child(6) .ng-scope:nth-child(2)')); var TypicalDegreesStatTwo = element(by.css('.td-metrics-data-width:nth-child(6) .jrnys_body-copy:nth-child(3)')); var TypicalDegreesStatThree = element(by.css('.td-metrics-data-width:nth-child(6) .jrnys_body-copy:nth-child(4)')); /*browser.actions().mouseMove(element(by.css('#occupationVisitedId .jrnys_lead-body-copy'))).perform().then(function() { browser.sleep(1000); });*/ browser.executeScript('window.scrollTo(0, 2050);').then(function() { browser.sleep(10000); }); expect(await OccupationMetricsWidgetTitle.getText()).toEqual('Occupation Metrics'); expect(await OccupationsOfInterestTitle.getText()).toEqual('Occupations Of Interest'); expect(await OccupationsOfInterestStat.getText()).toContain('80'); expect(await AverageAnnualSalaryTitle.getText()).toContain('Average Annual Salary'); expect(await AverageAnnualSalaryStat.getText()).toContain('$70,840'); expect(await AverageProjectedJobOpeningsTitle.getText()).toContain('Average Projected Job Openings'); expect(await AverageProjectedJobOpeningsStat.getText()).toContain('23,453'); expect(await TopClustersTitle.getText()).toContain('Top Clusters'); expect(await TopClustersStatOne.getText()).toContain('Information Technology'); expect(await TopClustersStatTwo.getText()).toContain('Health Science'); expect(await TopClustersStatThree.getText()).toContain('Education & Training'); expect(await AverageProjectedGrowthTitle.getText()).toContain('Average Projected Growth'); expect(await AverageProjectedGrowthStat.getText()).toContain('LOWER THAN AVERAGE'); expect(await TypicalDegreesTitle.getText()).toContain('Typical Degrees'); expect(await TypicalDegreesStatOne.getText()).toContain('27% College (4 Year)'); expect(await TypicalDegreesStatTwo.getText()).toContain("17% Master's degree"); expect(await TypicalDegreesStatThree.getText()).toContain('11% High school'); browser.waitForAngular(); browser.getCurrentUrl(); }); } function OccupationsOfInterest() { it(': OccupationsOfInterest, should verify Occupations Of Interest widget data', async function () { var OccupationsOfInterestWidgetTitle = element(by.css('#occupationVisitedId .jrnys_lead-body-copy')); var AtAGlanceHeaderRowIcon = element(by.xpath('//territory-card/div/div/div/div/div/div[2]')); var AtAGlanceBackOfCardXCloseLink = element(by.xpath('//territory-card/div/div[2]/div/div[2]/span')); var OccupationsOfInterestViewAllLink = element(by.css('#occupationVisitedId .text-color-7a')); var OccupationsOfInterestTitle = element(by.css('.col-sm-12 > .ng-binding')); var OccupationsOfInterestFirstCard = element(by.id('territoryCardMobileTitle')); var FirstOccupationCardDescription = element(by.css('#\\32 26a35d5-9f4d-4f3e-8327-bce9c771d0e6 > div > table > tbody > tr:nth-child(3) > td > div > div:nth-child(2) > territory-card-at-a-glance-back > div > div.territoryCardDescriptionText.ng-binding')); var OccupationsOfInterestXCloseLink = element(by.css('.default-color4a')); browser.executeScript('window.scrollTo(0, document.body.scrollHeight);').then(function() { browser.sleep(1000); }); browser.waitForAngular(); /*browser.executeScript('window.scrollTo(0, 2350);').then(function() { browser.sleep(2500); });*/ expect(await OccupationsOfInterestWidgetTitle.getText()).toEqual('Occupations Of Interest View All'); await AtAGlanceHeaderRowIcon.click().then(function() { browser.sleep(1000); }); await AtAGlanceBackOfCardXCloseLink.click().then(function() { browser.sleep(1000); }); await OccupationsOfInterestViewAllLink.click().then(function() { browser.sleep(5000); }); expect(await OccupationsOfInterestTitle.getText()).toEqual('Occupations visited by Automated Regression'); expect(await OccupationsOfInterestFirstCard.getText()).toEqual('Software Developers, Applications'); await OccupationsOfInterestFirstCard.click().then(function() { browser.sleep(2500); }); expect(await FirstOccupationCardDescription.getText()).toEqual('Develop, create, and modify general computer applications software or specialized utility programs. Analyze user needs and develop software solutions. Design software or customize software for client use with the aim of optimizing operational efficiency. May analyze and design databases within an application area, working individually or coordinating database development as part of a team. May supervise computer programmers.'); await OccupationsOfInterestXCloseLink.click().then(function() { browser.sleep(2500); }); browser.waitForAngular(); browser.getCurrentUrl(); }); } function AccountProfile() { it(': AccountProfile, should navigate to Account Profile and validate data', async function () { var ProfileImage = element(by.css('.roundCenterBackgroundImage')); var ProfileLink = element(by.linkText('Profile')); var PageTitle = element(by.css('.view-title')); var UserName = element(by.css('.only-bottom-margin')); var EmailHandle = element(by.css('.col-md-8 > .text-muted:nth-child(1)')); var BirthdayHandle = element(by.css('.text-muted:nth-child(3)')); var ActiveRoleHandle = element(by.css('.text-muted:nth-child(5)')); var ZipCodeHandle = element(by.css('.text-muted:nth-child(7)')); var UserInfo = element(by.css('.col-md-8')); var EditAccount = element(by.css('.btn:nth-child(12)')); var EditPageTitle = element(by.css('.view-title')); var FirstNameTextBox = element(by.xpath('//input[@name="first"]')); var LastNameTextBox = element(by.xpath('//input[@name="lastname"]')); var EmailAddressTextBox = element(by.xpath('//input[@name="email"]')); var ZipCodeTextBox = element(by.xpath('//input[@name="zip"]')); var BirthdayTextBox = element(by.css('#datepicker')); var ChangePasswordButton = element(by.css('.btn-lg:nth-child(1)')); var ChangePageTitle = element(by.css('h3')); var ChangePasswordValidation = element(by.css('.requiredMark')); var OldPasswordTextBox = element(by.xpath('//input[@name="password"]')); var NewPasswordTextBox = element(by.css('.form-control:nth-child(6)')); var ConfirmPasswordTextBox = element(by.css('.form-control:nth-child(9)')); var ChangePasswordSaveButton = element(by.css('.modal-footer > .btn')); var SaveButton = element(by.name('submit')); var ManageSecurityQuestions = element(by.css('.btn:nth-child(15)')); var ManageSecurityTitle = element(by.css('.security-question-header')); var ManageSecuritySubTitle = element(by.css('.col-md-9:nth-child(2)')); var SecurityValidationOne = element(by.css('.ng-scope:nth-child(1) > .row:nth-child(2) > .col-md-12')); var SecurityValidationTwo = element(by.css('.ng-scope:nth-child(1) > .row:nth-child(5) > .col-md-12')); var SecurityQuestionOne = element(by.css('#secQuestion0')); var SecuritySelectionOne = element(by.css('#secQuestion0 > option:nth-child(2)')); var SecurityAnswerOne = element(by.css('.ng-scope:nth-child(1) > .row .ng-pristine')); var SecurityQuestionTwo = element(by.css('#secQuestion1')); var SecuritySelectionTwo = element(by.css('#secQuestion1 > option:nth-child(3)')); var SecurityAnswerTwo = element(by.css('.ng-scope:nth-child(2) .ng-pristine')); var SecurityQuestionThree = element(by.css('#secQuestion2')); var SecuritySelectionThree = element(by.css('#secQuestion2 > option:nth-child(5)')); var SecurityAnswerThree = element(by.css('.ng-pristine')); var SecurityQuestionSave = element(by.css('.col-lg-4 > #photoBtn')); var ManageSecurityValidation = element(by.css('.row:nth-child(11) > .col-lg-9')); await ProfileImage.click().then(function() { browser.sleep(1000); }); browser.actions().mouseMove(ProfileLink).perform().then(function() { browser.sleep(1500); }); await ProfileLink.click().then(function() { browser.sleep(1000); }); expect(await PageTitle.getText()).toEqual('Account Information'); expect(await UserName.getText()).toEqual('Automated Regression'); expect(await EmailHandle.getText()).toEqual('Email:'); //expect(await UserInfo.getText()).toContain('jhuerta@edmin.com'); expect(await BirthdayHandle.getText()).toEqual('Birthday:'); expect(await UserInfo.getText()).toContain('2000-02-15'); expect(await ActiveRoleHandle.getText()).toEqual('Active Role:'); expect(await ZipCodeHandle.getText()).toEqual('ZIP Code:'); expect(await UserInfo.getText()).toContain('92123'); await EditAccount.click(); browser.sleep(1000); expect(await EditPageTitle.getText()).toEqual('Edit Account Information'); expect(await FirstNameTextBox.getAttribute('value')).toEqual('Automated'); expect(await LastNameTextBox.getAttribute('value')).toEqual('Regression'); expect(await EmailAddressTextBox.getAttribute('value')).toEqual(''); expect(await ZipCodeTextBox.getAttribute('value')).toEqual('92123'); expect(await BirthdayTextBox.getAttribute('value')).toEqual('2000-02-15'); await ChangePasswordButton.click(); browser.sleep(1000); expect(await ChangePageTitle.getText()).toEqual('Change your password...'); await ChangePasswordSaveButton.click(); browser.sleep(1000); expect(await ChangePasswordValidation.getText()).toEqual('Please provide Old Password and ensure two New Passwords are matched.'); await OldPasswordTextBox.sendKeys('123Auto123'); await NewPasswordTextBox.sendKeys('3Dm1nAuto'); await ConfirmPasswordTextBox.sendKeys('3Dm1nAuto'); await ChangePasswordSaveButton.click(); browser.sleep(1000); expect(await ChangePasswordValidation.getText()).toEqual('Your old password was incorrect. Try again.'); await OldPasswordTextBox.sendKeys('3Dm1nAuto'); await NewPasswordTextBox.sendKeys('EDminAuto'); await ConfirmPasswordTextBox.sendKeys('3Dm1nAuto'); await ChangePasswordSaveButton.click(); browser.sleep(1000); expect(await ChangePasswordValidation.getText()).toEqual('Please provide Old Password and ensure two New Passwords are matched.'); await NewPasswordTextBox.sendKeys('3Dm1nAuto'); await ConfirmPasswordTextBox.sendKeys('3Dm1nAuto'); await ChangePasswordSaveButton.click(); browser.sleep(1000); await SaveButton.click(); browser.sleep(1000); await ManageSecurityQuestions.click(); browser.sleep(1000); expect(await ManageSecurityTitle.getText()).toEqual('We care about your security'); expect(await ManageSecuritySubTitle.getText()).toEqual('To help you recover your account in the future please provide additional recovery information.'); await SecurityQuestionSave.click(); browser.sleep(1000); expect(await SecurityValidationOne.getText()).toContain('Please select security question'); await SecurityQuestionOne.click(); await SecuritySelectionOne.click(); await SecurityQuestionSave.click(); browser.sleep(1000); expect(await SecurityValidationTwo.getText()).toContain('Missing security answer'); await SecurityAnswerOne.click(); await SecurityAnswerOne.sendKeys('6194222927'); await SecurityQuestionTwo.click(); await SecuritySelectionTwo.click(); await SecurityAnswerTwo.click(); await SecurityAnswerTwo.sendKeys('Rosario'); await SecurityQuestionThree.click(); await SecuritySelectionThree.click(); await SecurityAnswerThree.click(); await SecurityAnswerThree.sendKeys('Seamus'); await SecurityQuestionSave.click(); browser.sleep(1000); expect(await ManageSecurityValidation.getText()).toEqual('Security questions are updated'); browser.sleep(1000); browser.waitForAngular(); browser.getCurrentUrl(); }); } function AccountPortfolio() { it(': AccountPortfolio, should navigate to portfolio and validate resource', async function () { var ProfileImage = element(by.css('.roundCenterBackgroundImage')); var PortfolioLink = element(by.linkText('Portfolio')); var SubmittedResourcesTitle = element(by.css('.ng-scope > .jrnys_lead-body-copy')); var MyResourceTitle = element(by.css('.hotTitles')); var GoogleDriveTitle = element(by.css('.default-color:nth-child(2)')); var GoogleDriveSubTitle = element(by.css('.default-color:nth-child(3)')); var SignInToGoogleDriveButton = element(by.id('authorize-button')); browser.waitForAngular(); browser.sleep(1000); await ProfileImage.click(); browser.sleep(1000); browser.actions().mouseMove(PortfolioLink).perform().then(function() { browser.sleep(1500); }); await PortfolioLink.click(); browser.sleep(5000); expect(await SubmittedResourcesTitle.getText()).toEqual('My Submitted Resources View All'); expect(await MyResourceTitle.getText()).toEqual('Test Doc'); browser.executeScript('window.scrollTo(0, document.body.scrollHeight);').then(function() { browser.sleep(2500); }); expect(await GoogleDriveTitle.getText()).toEqual('Google Drive'); expect(await GoogleDriveSubTitle.getText()).toContain('Sign in to your Google Drive account to access all your files!'); expect(await SignInToGoogleDriveButton.getText()).toEqual('Sign in to Google Drive'); browser.waitForAngular(); browser.getCurrentUrl(); }); } function SignOut() { it(': SignOut, should log out of journeysmap', async function () { var ProfileImage = element(by.css('.roundCenterBackgroundImage')); var SignOutButton = element(by.css('.dropDownFAEdits:nth-child(5) > .btn')); browser.waitForAngular(); browser.sleep(1000); await ProfileImage.click(); browser.sleep(1000); browser.waitForAngular(); browser.getCurrentUrl(); await SignOutButton.click().then(function() { browser.sleep(2500); }); }); }