Welcome to Sprint 2 !

In this sprint, you will be tasked with implementing some core utility functions for our Applicant Tracking System.

Topics

  • Algorithms, Data structures
  • Problem-solving
  • Core Javascript
  • Unit testing (with Jest )

Prerequisites

  • Node and npm need to be installed.
  • You can use your prefered IDE, or use Github workspaces to work on your project.

Getting started 🚀

  • Create a clone of this project
  • Install dependencies
  npm install
  • Run the unit tests
 npm run test

You will see that most tests will have failed. Your goal is to complete the challenges so that, by the end of the sprint, all tests will pass.

Project Structure

.
├── README.md
├── babel.config.cjs
├── challenges
│   ├── challenge.2.1.js
│   ├── challenge.2.2.js
│   ├── challenge.2.3.js
│   └── challenge.2.4.js
├── common
│   └── model.js
├── jest.config.mjs
├── package-lock.json
├── package.json
└── tests
    └── normalize.test.js
    └── ...other tests....
  • The model.js file contains implementations of the model classes that we will be using. It's important to carefully examine these classes before attempting the challenges.
  • The challenges/ folder contains the different challenges to complete during this sprint.

Challenges

  • Challenge 2.1: complete the functions in the challenge.2.1.js file. All unit tests must pass, and your solutions should be as optimal as possible.

  • Challenge 2.2: complete the functions in the challenge.2.2.js file. All unit tests must pass, and your solutions should be as optimal as possible.

  • Challenge 2.3: complete the functions in the challenge.2.3.js file. All unit tests must pass, and your solutions should be as optimal as possible.

  • Challenge 2.4: complete the functions in the challenge.2.4.js file. All unit tests must pass, and your solutions should be as optimal as possible.

  • Challenge 2.5: Examine the coverage report displayed when you run npm run test. The challenge is to create additional unit tests to improve your test coverage.