deftjs / DeftJS

Extensions for Large-Scale Sencha Touch and Ext JS Applications
http://deftjs.org/
MIT License
285 stars 56 forks source link

Update the Test Suite dependencies (Mocha, Chai, Sinon, Promise/A+, etc.) #120

Open johnyanarella opened 10 years ago

johnyanarella commented 10 years ago

To the extent possible, it would be nice to remove these third party libraries from the repo and pull them in via package managers.

In a perfect world, we'd define these as devDependencies in package.json and pull them in via npm.

Unfortunately, we need the browser (rather than the node.js) versions of these libraries given the runtime environment required by the Sencha frameworks, Karma Test Runner and TestRunner.html. Another option might be to use Bower to manage these dependencies.

Automating management of our dependency on the latest Promises/A+ test suite is also problematic, since it is written to be run from the node.js environment rather than from the browser. Browserify would potentially be useful for resolving this situation, except it ends up pulling in another copy of Mocha and its own preferred browser version of assert -- both of which cause conflicts and break the test environment for the rest of our tests. Until browser support is added to Promises/A+ test suite, I think we'll have to continue to manually browser-ify it and include it in the repo as we have been.

I think we should press forward and use Bower for all of the other testing library dependencies. Managing one library dependency manually within our repo instead of eight is still a big win.