2676-worker_time-control add timestamp url param #809
|
@ -27,7 +27,7 @@ export async function getBrowser() {
|
|||
args,
|
||||
defaultViewport: null,
|
||||
headless: headless,
|
||||
slowMo: 5, // slow down by ms
|
||||
slowMo: 1, // slow down by ms
|
||||
// ignoreDefaultArgs: ['--disable-extensions'],
|
||||
// executablePath: '/usr/bin/google-chrome-stable',
|
||||
// executablePath: '/usr/bin/firefox-developer-edition',
|
||||
|
|
|
@ -83,7 +83,7 @@
|
|||
"worker": "$ctrl.worker"
|
||||
}
|
||||
}, {
|
||||
"url": "/time-control",
|
||||
"url": "/time-control?timestamp",
|
||||
"state": "worker.card.timeControl",
|
||||
"component": "vn-worker-time-control",
|
||||
"description": "Time control",
|
||||
|
|
|
@ -91,6 +91,7 @@
|
|||
</vn-label-value>
|
||||
</div>
|
||||
<vn-calendar
|
||||
vn-id="calendar"
|
||||
class="vn-pt-md"
|
||||
ng-model="$ctrl.date"
|
||||
has-events="$ctrl.hasEvents($day)">
|
||||
|
|
|
@ -15,7 +15,15 @@ class Controller extends Section {
|
|||
}
|
||||
|
||||
$postLink() {
|
||||
this.date = new Date();
|
||||
const timestamp = this.$params.timestamp;
|
||||
let initialDate = new Date();
|
||||
|
||||
if (timestamp) {
|
||||
initialDate = new Date(timestamp * 1000);
|
||||
this.$.calendar.defaultDate = initialDate;
|
||||
}
|
||||
|
||||
this.date = initialDate;
|
||||
}
|
||||
|
||||
get worker() {
|
||||
|
|
|
@ -129,5 +129,28 @@ describe('Component vnWorkerTimeControl', () => {
|
|||
expect(controller.fetchHours).toHaveBeenCalledWith();
|
||||
});
|
||||
});
|
||||
|
||||
describe('$postLink() ', () => {
|
||||
it(`should set the controller date as today if no timestamp is defined`, () => {
|
||||
controller.$.model = {applyFilter: jest.fn().mockReturnValue(Promise.resolve())};
|
||||
controller.$params = {timestamp: undefined};
|
||||
controller.$postLink();
|
||||
|
||||
expect(controller.date).toEqual(jasmine.any(Date));
|
||||
});
|
||||
|
||||
it(`should set the controller date using the received timestamp`, () => {
|
||||
const timestamp = 1;
|
||||
const date = new Date(timestamp);
|
||||
|
||||
controller.$.model = {applyFilter: jest.fn().mockReturnValue(Promise.resolve())};
|
||||
controller.$.calendar = {};
|
||||
controller.$params = {timestamp: timestamp};
|
||||
|
||||
controller.$postLink();
|
||||
|
||||
expect(controller.date.toDateString()).toEqual(date.toDateString());
|
||||
});
|
||||
});
|
||||
});
|
||||
});
|
||||
|
|
Loading…
Reference in New Issue