40 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			40 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
const locations = {
 | 
						|
  index:
 | 
						|
    'learn/back-end-development-and-apis/managing-packages-with-npm/' +
 | 
						|
    'how-to-use-package-json-the-core-of-any-node-js-project-or-npm-package'
 | 
						|
};
 | 
						|
 | 
						|
const selectors = {
 | 
						|
  defaultOutput: '.output-text',
 | 
						|
  input: 'input[name="solution"]'
 | 
						|
};
 | 
						|
 | 
						|
const unhandledErrorMessage = 'Something is not quite right';
 | 
						|
const runningOutput = '// running tests';
 | 
						|
const finishedOutput = '// tests completed';
 | 
						|
 | 
						|
describe('Backend challenge', function () {
 | 
						|
  it('renders', () => {
 | 
						|
    cy.visit(locations.index);
 | 
						|
 | 
						|
    cy.title().should(
 | 
						|
      'eq',
 | 
						|
      'Managing Packages with Npm - How to Use package.json, the Core of Any' +
 | 
						|
        ' Node.js Project or npm Package | Learn | freeCodeCamp.org'
 | 
						|
    );
 | 
						|
  });
 | 
						|
 | 
						|
  it('does not generate unhandled errors on submission', () => {
 | 
						|
    cy.visit(locations.index);
 | 
						|
    cy.get(selectors.input)
 | 
						|
      .type('https://example.com')
 | 
						|
      .type('{enter}')
 | 
						|
      .then(() => {
 | 
						|
        cy.get(selectors.defaultOutput)
 | 
						|
          .contains(runningOutput)
 | 
						|
          .contains(finishedOutput);
 | 
						|
        cy.contains(unhandledErrorMessage).should('not.exist');
 | 
						|
      });
 | 
						|
  });
 | 
						|
});
 |