* Created `conditionalOrderBy` filter with a similar signature to `orderBy`,
using a single conditional argument that when false, causes the filter to
return the array unchanged
* Updated task view to use `conditionalOrderBy`
* Added karma specs for `conditionalOrderBy` filter
* Added build:test task to generate translation JS for tests.
* Removed test/spec/translations.js from the repository, added to .gitignore.
* Updated test/run_tests.sh to run build:test, and accept an optional argument
to run a particular test suite.
* Stubbed out User module to repair rootCtrlSpec
* Loaded RootCtrl in inventoryCtrlSpec, as it was missing shared functions.
Updated mock user to include a mounts hash.
As it turns out, the page reload behavior was not caused by $resource, but
exists somewhere within the User module. Stubbed out the User module as as done
in notificationServicesSpec
* Added a task to Gruntfile to use website/src/i18n.js to generate a small JS file to be loaded in Karma env which sets window.env.translations to the i18n.translations['en'].
* Added new Grunt task to build:dev
* Updated Karma specs to reenable testing where possible, updating comments where not.
This pends a lot of tests that are failing due to translations not being loaded in the environment, as well as some issues with the page reload in groupServicesSpec.
We removed the module declarations for habitrpg in each spec since that
has been moved to specHelper.
Both were trying to declare an angular mock module that did not exist.
The group service spec urls were also asserting a trailing `?` that
doesn't seem to be party of the actual request.
There were a few issues here:
1. Relying on globs meant that modules were loaded out of order. So
'habitrpgc' was undefined when we were trying to add services etc to it.
The short term solution is to list them in the same way we list them in manifest
json. The long term would be switching everything to browserify so as to
avoid ordering/listing nightmare by having a single bundle.
2. We were missing exeternal deps (like 'hello') so the tests were
breaking before they even started. Some of them still are
3. We were including services that don't seem to exist anymore (e.g. `habitrpgstatic`). We still are in certain places
The way the tests are written now, the habitrpg module definition in static.js
was clobbering the one in app.js. In other words, most of the tests weren't
testing what they thought they were testing.