Commit 280a6482 authored by Johannes Bill's avatar Johannes Bill

added express test

parent 7771c628
var tmUtils = require('./timeUtils');
var Holidays = require('./holidays');
var now = new Date();
var holidaysGetter = new Holidays(now.getFullYear());
var holidaysGetter = {};
var epochSpan = testEpochSpan();
var startYear;
var endYear;
function setEpocheSpan(_epocheSpan) {
epochSpan = _epocheSpan;
startYear = epochSpan[0].getFullYear();
endYear = epochSpan[1].getFullYear();
for(var year = startYear; year <= endYear; year++) {
if(!holidaysGetter[year])
holidaysGetter[year] = new Holidays(year);
}
}
function testEpochSpan() {
......@@ -96,17 +104,21 @@ function parseTime(time) {
}
//TODO now.getFullYear muss verschwinden, Jahreswechsel!!!!
function parseDate(date, addOneDay) {
function parseDate(date, year, addOneDay) {
if (date.length == 0)
return null;
var year = now.getFullYear();
var _year;
var split = date.split(".");
var month = parseInt(split[1]) - 1;
var day = parseInt(split[0]) + (addOneDay ? 1 : 0);
if(split.length === 3) {
_year = parseInt(split[2]);
}
if(!_year)
_year = year;
return new Date(year, month, day);
return new Date(_year, month, day);
}
function getHolidays(data) {
......@@ -117,7 +129,11 @@ function getHolidays(data) {
var timeSpan = getTimeSpan(data);
var holidayId = data["holidayoption"][0];
var days = holidaysGetter.getHoliday(holidayId);
var days = [];
for(var year = startYear; year <= endYear; year++) {
days = days.concat(holidaysGetter[year].getHoliday(holidayId));
}
var intervals = days.map(function (date) {
return tmUtils.singleDay(date, timeSpan);
......@@ -127,7 +143,10 @@ function getHolidays(data) {
}
function getAllHolidays() {
var days = holidaysGetter.getHoliday(0);
var days = [];
for(var year = startYear; year <= endYear; year++) {
days = days.concat(holidaysGetter[year].getHoliday(0));
}
var intervals = days.map(function (date) {
return tmUtils.singleDay(date);
});
......@@ -136,9 +155,15 @@ function getAllHolidays() {
}
function getDateSpan(data) {
var startDate = parseDate(data["opening_day_from"]) || epochSpan[0];
var endDate = parseDate(data["opening_day_to"], true) || epochSpan[1];
//TODO start und enddate vertauschen, falls enddate < startdate
var startDate = parseDate(data["opening_day_from"], now.getFullYear());
var endDate = parseDate(data["opening_day_to"], now.getFullYear(), true);
if(!startDate)
startDate = epochSpan[0];
if(!endDate)
endDate = epochSpan[1];
//TODO: jahreswechsel beruecksichtigen
return [startDate, endDate];
}
......
var dateArray = require('dateArray');
var dateView = require('dateView');
......@@ -9,7 +9,8 @@
"chai": "^1.9.1",
"ejs": "^1.0.0",
"express": "*",
"mysql": "*"
"mysql": "*",
"v8-profiler": "^5.1.0"
},
"author": "",
"license": "ISC",
......
......@@ -39,4 +39,6 @@ openNow(json, now, regionalCode, lang, asString)
openingHoursView(json, now, regionalCode, lang)
-->html string
\ No newline at end of file
-->html string
openNow auch nach absprache, nur mit json incl
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment