From 8d85d1aa2d40fe9831efab1ef26a437e3fd32e9c Mon Sep 17 00:00:00 2001 From: Felix Wiedenbach Date: Fri, 13 Sep 2019 13:53:15 +0200 Subject: [PATCH] move mocks to separate directory for better overview --- tests/e2e/modules/mocks/index.js | 4 + tests/e2e/modules/mocks/weather_current.js | 54 ++++++++++++ tests/e2e/modules/mocks/weather_forecast.js | 97 +++++++++++++++++++++ tests/e2e/modules/weather_spec.js | 58 +----------- 4 files changed, 159 insertions(+), 54 deletions(-) create mode 100644 tests/e2e/modules/mocks/index.js create mode 100644 tests/e2e/modules/mocks/weather_current.js create mode 100644 tests/e2e/modules/mocks/weather_forecast.js diff --git a/tests/e2e/modules/mocks/index.js b/tests/e2e/modules/mocks/index.js new file mode 100644 index 00000000..afd061c6 --- /dev/null +++ b/tests/e2e/modules/mocks/index.js @@ -0,0 +1,4 @@ +const generateWeather = require("./weather_current"); +const generateWeatherForecast = require("./weather_forecast"); + +module.exports = {generateWeather, generateWeatherForecast}; diff --git a/tests/e2e/modules/mocks/weather_current.js b/tests/e2e/modules/mocks/weather_current.js new file mode 100644 index 00000000..cd87aa11 --- /dev/null +++ b/tests/e2e/modules/mocks/weather_current.js @@ -0,0 +1,54 @@ +const _ = require('lodash'); + +function generateWeather(extendedData = {}) { + return JSON.stringify(_.merge({}, { + coord:{ + lon: 11.58, + lat: 48.14 + }, + weather:[ + { + id: 615, + main: "Snow", + description: "light rain and snow", + icon: "13d" + }, + { + id: 500, + main: "Rain", + description: "light rain", + icon: "10d" + } + ], + base: "stations", + main:{ + temp: 1.49, + pressure: 1005, + humidity: 93.7, + temp_min: 1, + temp_max: 2 + }, + visibility: 7000, + wind:{ + speed: 11.8, + deg: 250 + }, + clouds:{ + all: 75 + }, + dt: 1547387400, + sys:{ + type: 1, + id: 1267, + message: 0.0031, + country: "DE", + sunrise: 1547362817, + sunset: 1547394301 + }, + id: 2867714, + name: "Munich", + cod: 200 + }, extendedData)); +} + +module.exports = generateWeather; diff --git a/tests/e2e/modules/mocks/weather_forecast.js b/tests/e2e/modules/mocks/weather_forecast.js new file mode 100644 index 00000000..420367a0 --- /dev/null +++ b/tests/e2e/modules/mocks/weather_forecast.js @@ -0,0 +1,97 @@ +const _ = require('lodash'); + +function generateWeatherForecast(extendedData = {}) { + return JSON.stringify(_.merge({}, { + "city": { + "id": 2867714, + "name": "Munich", + "coord": {"lon": 11.5754, "lat": 48.1371}, + "country": "DE", + "population": 1260391, + "timezone": 7200 + }, + "cod": "200", + "message": 0.9653487, + "cnt": 7, + "list": [{ + "dt": 1568372400, + "sunrise": 1568350044, + "sunset": 1568395948, + "temp": {"day": 24.44, "min": 15.35, "max": 24.44, "night": 15.35, "eve": 18, "morn": 23.03}, + "pressure": 1031.65, + "humidity": 70, + "weather": [{"id": 801, "main": "Clouds", "description": "few clouds", "icon": "02d"}], + "speed": 3.35, + "deg": 314, + "clouds": 21 + }, { + "dt": 1568458800, + "sunrise": 1568436525, + "sunset": 1568482223, + "temp": {"day": 20.81, "min": 13.56, "max": 21.02, "night": 13.56, "eve": 16.6, "morn": 15.88}, + "pressure": 1028.81, + "humidity": 72, + "weather": [{"id": 500, "main": "Rain", "description": "light rain", "icon": "10d"}], + "speed": 2.21, + "deg": 81, + "clouds": 100 + }, { + "dt": 1568545200, + "sunrise": 1568523007, + "sunset": 1568568497, + "temp": {"day": 22.65, "min": 13.76, "max": 22.88, "night": 15.27, "eve": 17.45, "morn": 13.76}, + "pressure": 1023.75, + "humidity": 64, + "weather": [{"id": 800, "main": "Clear", "description": "sky is clear", "icon": "01d"}], + "speed": 1.15, + "deg": 7, + "clouds": 0 + }, { + "dt": 1568631600, + "sunrise": 1568609489, + "sunset": 1568654771, + "temp": {"day": 23.45, "min": 13.95, "max": 23.45, "night": 13.95, "eve": 17.75, "morn": 15.21}, + "pressure": 1020.41, + "humidity": 64, + "weather": [{"id": 800, "main": "Clear", "description": "sky is clear", "icon": "01d"}], + "speed": 3.07, + "deg": 298, + "clouds": 7 + }, { + "dt": 1568718000, + "sunrise": 1568695970, + "sunset": 1568741045, + "temp": {"day": 20.55, "min": 10.95, "max": 20.55, "night": 10.95, "eve": 14.82, "morn": 13.24}, + "pressure": 1019.4, + "humidity": 66, + "weather": [{"id": 800, "main": "Clear", "description": "sky is clear", "icon": "01d"}], + "speed": 2.8, + "deg": 333, + "clouds": 2 + }, { + "dt": 1568804400, + "sunrise": 1568782452, + "sunset": 1568827319, + "temp": {"day": 18.15, "min": 7.75, "max": 18.15, "night": 7.75, "eve": 12.45, "morn": 9.41}, + "pressure": 1017.56, + "humidity": 52, + "weather": [{"id": 800, "main": "Clear", "description": "sky is clear", "icon": "01d"}], + "speed": 2.92, + "deg": 34, + "clouds": 0 + }, { + "dt": 1568890800, + "sunrise": 1568868934, + "sunset": 1568913593, + "temp": {"day": 14.85, "min": 5.56, "max": 15.05, "night": 5.56, "eve": 9.56, "morn": 6.25}, + "pressure": 1022.7, + "humidity": 59, + "weather": [{"id": 800, "main": "Clear", "description": "sky is clear", "icon": "01d"}], + "speed": 2.89, + "deg": 51, + "clouds": 1 + }] + }, extendedData)); +} + +module.exports = generateWeatherForecast; diff --git a/tests/e2e/modules/weather_spec.js b/tests/e2e/modules/weather_spec.js index ffcab77b..5eba03ad 100644 --- a/tests/e2e/modules/weather_spec.js +++ b/tests/e2e/modules/weather_spec.js @@ -1,12 +1,15 @@ const expect = require("chai").expect; const fs = require("fs"); -const _ = require("lodash"); const moment = require("moment"); const path = require("path"); const wdajaxstub = require("webdriverajaxstub"); const helpers = require("../global-setup"); +const {generateWeather, generateWeatherForecast} = require("./mocks"); + +const wait = () => new Promise(res => setTimeout(res, 3000)); + describe("Weather module", function() { let app; @@ -27,57 +30,6 @@ describe("Weather module", function() { }); describe("Current weather", function() { - function generateWeather(extendedData = {}) { - return JSON.stringify(_.merge({}, { - coord:{ - lon: 11.58, - lat: 48.14 - }, - weather:[ - { - id: 615, - main: "Snow", - description: "light rain and snow", - icon: "13d" - }, - { - id: 500, - main: "Rain", - description: "light rain", - icon: "10d" - } - ], - base: "stations", - main:{ - temp: 1.49, - pressure: 1005, - humidity: 93.7, - temp_min: 1, - temp_max: 2 - }, - visibility: 7000, - wind:{ - speed: 11.8, - deg: 250 - }, - clouds:{ - all: 75 - }, - dt: 1547387400, - sys:{ - type: 1, - id: 1267, - message: 0.0031, - country: "DE", - sunrise: 1547362817, - sunset: 1547394301 - }, - id: 2867714, - name: "Munich", - cod: 200 - }, extendedData)); - } - let template; before(function() { @@ -137,8 +89,6 @@ describe("Weather module", function() { }); }); - const wait = () => new Promise(res => setTimeout(res, 3000)); - describe("Configuration Options", function() { before(function() { process.env.MM_CONFIG_FILE = "tests/configs/modules/weather/currentweather_options.js";