@webda/core
Version:
Expose API with Lambda
76 lines • 2.98 kB
JavaScript
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
return c > 3 && r && Object.defineProperty(target, key, r), r;
};
import { suite, test } from "@testdeck/mocha";
import * as assert from "assert";
import { Cron, CronDefinition, CronService, Service } from "...js";
import { WebdaTest } from "../test.js";
class MyService extends Service {
test() {
// Empty one
}
test2(myArg) { }
}
__decorate([
Cron("0/15 * * * *", "plop")
], MyService.prototype, "test", null);
__decorate([
Cron("0/25 * * * *", undefined, "myArg")
], MyService.prototype, "test2", null);
let CronServiceTest = class CronServiceTest extends WebdaTest {
async buildWebda() {
await super.buildWebda();
this.webda.getBeans = () => { };
}
annotations() {
this.registerService(new MyService(this.webda, "myService", {}));
let def = new CronDefinition("0/15 * * * *", [], "myService", "test", "plop");
let service = new CronService(this.webda, "cron", {});
service.schedule("* * * * *", () => { }, "mine");
assert.deepStrictEqual(service.getCrontab()[1], def);
// for cov
assert.deepStrictEqual(service.getCrontab()[1], def);
service.crontabSchedule = (cron, cb) => {
try {
cb();
}
catch (err) { }
};
try {
let promise = service.work();
promise.cancel();
service.enable = false;
service.schedule("* * * * *", () => { }, "mine");
service.crons[0].context = undefined;
promise = service.run();
promise.cancel();
promise = service.run(false);
promise.cancel();
}
finally {
}
}
};
__decorate([
test
], CronServiceTest.prototype, "annotations", null);
CronServiceTest = __decorate([
suite
], CronServiceTest);
let CronDefinitionTest = class CronDefinitionTest {
testString() {
assert.strictEqual(new CronDefinition("* * * * *").toString(), "* * * * *: .()");
assert.strictEqual(CronService.getCronId(new CronDefinition("* * * * *"), "plop"), "5e281c06");
assert.strictEqual(new CronDefinition("* * * * *", [{}, {}], "plop", "method", "desc").toString(), "* * * * *: plop.method([object Object],[object Object]) # desc");
}
};
__decorate([
test
], CronDefinitionTest.prototype, "testString", null);
CronDefinitionTest = __decorate([
suite
], CronDefinitionTest);
//# sourceMappingURL=cron.spec.js.map