2019-10-05 23:38:38 +01:00
|
|
|
/* global cy expect */
|
|
|
|
|
|
|
|
const selectors = {
|
|
|
|
challengeMap: "[data-test-label='learn-curriculum-map']"
|
|
|
|
};
|
|
|
|
|
|
|
|
const locations = {
|
|
|
|
index: '/learn'
|
|
|
|
};
|
|
|
|
|
|
|
|
const superBlockNames = [
|
|
|
|
'Responsive Web Design',
|
|
|
|
'JavaScript Algorithms and Data Structures',
|
|
|
|
'Front End Libraries',
|
|
|
|
'Data Visualization',
|
|
|
|
'APIs and Microservices',
|
2020-05-22 03:24:17 +05:30
|
|
|
'Quality Assurance',
|
|
|
|
'Scientific Computing with Python',
|
|
|
|
'Data Analysis with Python',
|
|
|
|
'Information Security',
|
|
|
|
'Machine Learning with Python',
|
2019-10-05 23:38:38 +01:00
|
|
|
'Coding Interview Prep'
|
|
|
|
];
|
|
|
|
|
|
|
|
describe('Learn Landing page', function() {
|
|
|
|
it('renders', () => {
|
|
|
|
cy.visit(locations.index);
|
|
|
|
|
|
|
|
cy.title().should('eq', 'Learn to code at home | freeCodeCamp.org');
|
|
|
|
});
|
|
|
|
|
|
|
|
it('Has the correct heading for an unauthenticated User', () => {
|
|
|
|
cy.visit(locations.index);
|
|
|
|
|
|
|
|
cy.contains('h1', 'Welcome to freeCodeCamp.org');
|
|
|
|
});
|
|
|
|
|
|
|
|
it('renders a curriuculum map', () => {
|
|
|
|
cy.document().then(document => {
|
|
|
|
const superBlocks = document.querySelectorAll(
|
|
|
|
`${selectors.challengeMap} > ul > li`
|
|
|
|
);
|
2020-05-22 03:24:17 +05:30
|
|
|
expect(superBlocks).to.have.length(11);
|
2019-10-05 23:38:38 +01:00
|
|
|
|
|
|
|
superBlocks.forEach((superBlock, idx) => {
|
|
|
|
expect(superBlock.innerText).to.have.string(superBlockNames[idx]);
|
|
|
|
});
|
|
|
|
});
|
|
|
|
});
|
|
|
|
});
|