diff --git a/tests/configs/data/en.json b/tests/configs/data/en.json
new file mode 100644
index 00000000..5614b23c
--- /dev/null
+++ b/tests/configs/data/en.json
@@ -0,0 +1,32 @@
+{
+ "LOADING": "Loading …",
+
+ "TODAY": "Today",
+ "TOMORROW": "Tomorrow",
+ "DAYAFTERTOMORROW": "In 2 days",
+ "RUNNING": "Ends in",
+ "EMPTY": "No upcoming events.",
+
+ "WEEK": "Week {weekNumber}",
+
+ "N": "N",
+ "NNE": "NNE",
+ "NE": "NE",
+ "ENE": "ENE",
+ "E": "E",
+ "ESE": "ESE",
+ "SE": "SE",
+ "SSE": "SSE",
+ "S": "S",
+ "SSW": "SSW",
+ "SW": "SW",
+ "WSW": "WSW",
+ "W": "W",
+ "WNW": "WNW",
+ "NW": "NW",
+ "NNW": "NNW",
+
+ "UPDATE_NOTIFICATION": "MagicMirror² update available.",
+ "UPDATE_NOTIFICATION_MODULE": "Update available for MODULE_NAME module.",
+ "UPDATE_INFO": "The current installation is COMMIT_COUNT behind on the BRANCH_NAME branch."
+}
diff --git a/tests/unit/classes/translator_spec.js b/tests/unit/classes/translator_spec.js
index 6241928b..de3d95a7 100644
--- a/tests/unit/classes/translator_spec.js
+++ b/tests/unit/classes/translator_spec.js
@@ -5,48 +5,66 @@ const fs = require("fs");
const {JSDOM} = require("jsdom");
const express = require("express");
-const translations = {
- "MMM-Module": {
- "Hello": "Hallo",
- "Hello {username}": "Hallo {username}"
- }
-};
-
-const coreTranslations = {
- "Hello": "XXX",
- "Hello {username}": "XXX",
- "FOO": "Foo",
- "BAR {something}": "Bar {something}"
-};
-
-const translationsFallback = {
- "MMM-Module": {
- "Hello": "XXX",
- "Hello {username}": "XXX",
- "FOO": "XXX",
- "BAR {something}": "XXX",
- "A key": "A translation"
- }
-};
-
-const coreTranslationsFallback = {
- "FOO": "XXX",
- "BAR {something}": "XXX",
- "Hello": "XXX",
- "Hello {username}": "XXX",
- "A key": "XXX",
- "Fallback": "core fallback"
-};
-
-function setTranslations(Translator) {
- Translator.translations = translations;
- Translator.coreTranslations = coreTranslations;
- Translator.translationsFallback = translationsFallback;
- Translator.coreTranslationsFallback = coreTranslationsFallback;
-}
-
describe("Translator", function() {
+ let server;
+
+ before(function() {
+ const app = express();
+
+ app.get("/translations/:file", function(req, res) {
+ res.status(200)
+ .header("Access-Control-Allow-Origin", "*")
+ .json(require(path.join(__dirname, "..", "..", "..", "tests", "configs", "data", req.params.file)));
+ });
+
+ server = app.listen(3000);
+ });
+
+ after(function() {
+ server.close();
+ });
+
describe("translate", function() {
+ const translations = {
+ "MMM-Module": {
+ "Hello": "Hallo",
+ "Hello {username}": "Hallo {username}"
+ }
+ };
+
+ const coreTranslations = {
+ "Hello": "XXX",
+ "Hello {username}": "XXX",
+ "FOO": "Foo",
+ "BAR {something}": "Bar {something}"
+ };
+
+ const translationsFallback = {
+ "MMM-Module": {
+ "Hello": "XXX",
+ "Hello {username}": "XXX",
+ "FOO": "XXX",
+ "BAR {something}": "XXX",
+ "A key": "A translation"
+ }
+ };
+
+ const coreTranslationsFallback = {
+ "FOO": "XXX",
+ "BAR {something}": "XXX",
+ "Hello": "XXX",
+ "Hello {username}": "XXX",
+ "A key": "XXX",
+ "Fallback": "core fallback"
+ };
+
+ function setTranslations(Translator) {
+ Translator.translations = translations;
+ Translator.coreTranslations = coreTranslations;
+ Translator.translationsFallback = translationsFallback;
+ Translator.coreTranslationsFallback = coreTranslationsFallback;
+ }
+
it("should return custom module translation", function(done) {
const dom = new JSDOM(`\
+ \
+