/js-fp-workshop

Primary LanguageJavaScript

JS Functional Programming Master Class

14.11.2018, JS-Poland / NG-Poland

install

Run:

npm install

customize

edit karma.conf.js file and modify following properties:

  • browsers - define which browsers to run tests on
  • specReporter - uncomment lines to remove skipped tests in output (this is useful for development, but should NOT be committed to the repo)

changing karma.conf.js requires restarting karma.

run

single run (compile & test once, useful for CI):

npm test -- --single-run

development run (compile & test initially + for each file change, useful for development):

npm test

running single tests

You can temporarily adapt jasmine tests to run only few specific tests (one or more) to save time, not to execute all the tests you have. In order to do that, use focus and exclude:

  • replace it() with fit()/xit() and/or
  • replace describe() tiwh fdescribe()/xdescribe()

Important thing, however, is not to push these temporary changes (fit, xit, fdescribe, xdescribe) to the repository.

progress

In the beginning, most of the tests are failing:

  Something
    important
      ×can be used
      ×is useful
      ×works like a charm

Your task is to learn JavaScript and make tests pass. Eventually, tests should look more or less like the following:

  Something
    important
      √can be used
      √is useful
      √works like a charm