- Babel: For transpiling ES6 code (http://babeljs.io)
- Gulp: Build tool (http://gulpjs.com)
- Mocha: Test runner (http://mochajs.org)
- Chai: Assertion Library (http://chaijs.com)
- Sinon: Mocking Library (http://sinonjs.org)
- PhantomJS: Headless webkit browser for testing (http://phantomjs.org)
- Mocha-phantomjs: Mocha wrapper for PhantomJs (https://github.com/metaskills/mocha-phantomjs)
- Bower/NPM: Package managers
├── bower.json
├── dist
│ ├── script.js
│ ├── script.js.map
│ └── tests
│ ├── spec
│ │ ├── exampleTest.js
│ │ └── testSuite.js
│ └── SpecRunner.js
├── gulpfile.js
├── package.json
├── src
│ ├── script.es6
│ └── tests
│ ├── spec
│ │ ├── exampleTest.es6
│ │ └── testSuite.es6
│ └── SpecRunner.es6
└── tests.html
Just wanted to say thanks for this. I had to do a couple things differently as im using grunt, but my setup is pretty much the same. Important note for others that look at this. Be sure to compile your source as AMD as well into the dist folder. I have src & tests separate, so that threw me off. Also avoid using extensions in your imports, requirejs wont use the baseUrl for them.