Я пытаюсь использовать TimeShift.js, чтобы высмеять стандартную дату Javascript. Таким образом, я могу указать TimeZone вместо того, чтобы использовать системный.Использование TimeShift.js в конце концов Тесты укладчика
документация, кажется, очень ясно, просто require
библиотеки и использовать его как это:
Date = TimeShift.Date;
TimeShift.setTimezoneOffset(-300);
TimeShift.setTime(1275393600000);
new Date().toString();
// => "Tue Jun 01 2010 17:00:00 GMT+0500"
Однако я получаю TypeError «неопределенная не является функция». Что я здесь делаю неправильно? Это полный step.js
файл:
var chai = require('chai');
var chaiPromise = require("chai-as-promised");
var HttpBackend = require('http-backend-proxy');
var utils = require('../utils.js');
var timeshift = require('../TimeShift.js');
var expect = chai.expect;
chai.use(chaiPromise);
var fs = require('fs');
var steps = function() {
var proxy = null;
this.Before(function(scenario, callback) {
proxy = new HttpBackend(browser);
Date = timeshift.Date;
timeshift.setTimezoneOffset(-300);
timeshift.setTime(1275393600000);
callback();
});
this.After(function(scenario, callback) {
proxy.onLoad.reset();
callback();
});
}
module.exports = steps;
EDIT:
даже запустить простую tests.html сразу из свежей копии разработки дает мне неопределенную ошибку:
Ok спасибо! Итак, как я могу использовать вашу ветку в тестах e2e? –
Я имею в виду, где лучше всего разместить файл TimeShift.js? Как я могу использовать его в своем коде? –
У меня есть его в каталоге моих помощников: http://stackoverflow.com/a/32335796/2374517 Но я использую его внутри тестов E2E после шаблона объекта страницы, поэтому я не уверен в вашем случае. – cvakiitho