webogram-i2p/test/test-init.js
Bart 82957f1b91 Added structure to test directory, Fully tested filters.js (#1393)
* added tests for filter.js, Added structure to test-directory

In the gulpfile I changed some of the karma execution to ensure templates.js exists before the tests
Also removed some StandardJS errors from filters.js

* added tests to create at least 50% coverage for filters.js

* Added test for full coverage of filters.js

* fixed 2 side-cases

* Removed duplicate test, improved test-titles and added outcome clarification for dateOrTimeFilter

* Added test-init

While running ``gulp test`` there were a lot of warnings concerning i18n: key not found
This was because init.js was not run.
Because some parts of init.js were not relevant, I created test-init.js, only containing the part concerning localization.
Now the log is a lot cleaner when running ``gulp test``

* added 'use strict' to testing files

* changed local vars to this.

* improved clarity of mistery numbers

* improved in-test structure

* Improved shortUrl tests

* removed unnecessary code

* added cleanup to single test
2017-04-29 11:54:46 +03:00

43 lines
1.2 KiB
JavaScript

'use strict'
/* global ConfigStorage, Config */
;(function initTestApplication () {
ConfigStorage.get('layout_selected', 'i18n_locale', function (params) {
var locale = params[1]
var defaultLocale = 'en-us'
var bootReady = {
dom: false,
i18n_ng: false,
i18n_messages: false,
i18n_fallback: false
}
if (!locale) {
locale = (navigator.language || '').toLowerCase()
locale = Config.I18n.aliases[locale] || locale
}
for (var i = 0; i < Config.I18n.supported.length; i++) {
if (Config.I18n.supported[i] === locale) {
Config.I18n.locale = locale
break
}
}
bootReady.i18n_ng = Config.I18n.locale === defaultLocale // Already included
$.getJSON('base/js/locales/' + Config.I18n.locale + '.json').success(function (json) {
Config.I18n.messages = json
bootReady.i18n_messages = true
if (Config.I18n.locale === defaultLocale) { // No fallback, leave empty object
bootReady.i18n_fallback = true
}
})
if (Config.I18n.locale !== defaultLocale) {
$.getJSON('base/js/locales/' + defaultLocale + '.json').success(function (json) {
Config.I18n.fallback_messages = json
bootReady.i18n_fallback = true
})
}
})
})()