Skip to content

suvelocity/AdvancedPromiseBoilerplate

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Advanced Promise Challenge

Story

  • The client comes from a religious background and isn't comfortable with the word "promise" being part of their software
  • The client wants a new class to replace the Promise, called... Declare
  • you can clone this boilerplate Repo or create a new one.
  • run npm i in the terminal to install jest test library in order for the tests to run.
  • Edit index.js to implement the Declare class.
  • run npm run test in the terminal to run the tests.

requirements from the Declare class

  1. is not implemented using the built-in Promise Class.
  2. can create an instance with an executor function using the new keyword
  3. has a then method which returns a Declare instance
  4. has a catch method which returns a Declare instance
  5. can use the return value of the executor with then method
  6. can handle error using the catch method
  7. can use multiple thens chained one after the other
  8. can use an asynchronous executor
  9. handles errors thrown by the executor function.
  • HOT TIP - add .skip to the end of a test in test.js to skip it in a run, and only test what you want to.
test.skip("Is not an instance of Promise", () => {
    const declare = new Declare(()=>{});
    return expect(declare instanceof Promise).toBe(false);
  });

About

ChallengeMe advanced promises assignment

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors