本文整理匯總了TypeScript中node-workhorse.Workhorse類的典型用法代碼示例。如果您正苦於以下問題:TypeScript Workhorse類的具體用法?TypeScript Workhorse怎麽用?TypeScript Workhorse使用的例子?那麽, 這裏精選的類代碼示例或許可以為您提供幫助。
在下文中一共展示了Workhorse類的4個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的TypeScript代碼示例。
示例1: describe
describe('#run', () => {
let subject: Workhorse;
before(function() {
let config = getConfig();
subject = new Workhorse(new Config({
stateManager: stateManager
}));
});
it('should add two numbers', function() {
this.timeout(20000);
return subject.run(`${baseWorkPath}calculator`, { x: 1, y: 2 })
.then((work: Work) => {
assert.isNotNull(work.result);
assert.equal(work.result.result, 3);
assert.isOk(work.created);
});
});
it('should recurse a few times', function() {
this.timeout(95000);
return subject.run(`${baseWorkPath}calculator`, { x: 1, y: 2, recurse: 3 })
.then((work: Work) => {
return subject.state.load(work.id)
.then((work) => {
return work.deep(subject);
});
})
.then((deep) => {
assert.isNotNull(deep.result);
assert.equal(deep.finalizerResult.result, 9);
assert.equal(deep.ancestorLevel, 0);
assert.equal(deep.children[0].ancestorLevel, 1);
assert.equal(deep.children[0].children[0].ancestorLevel, 2);
assert.equal(deep.children[0].children[0].children[0].ancestorLevel, 3);
assert.isTrue(deep.finalizerResult.ended >= deep.children[0].children[0].children[0].result.ended);
});
});
it('should spawn child work test', function() {
this.timeout(60000);
return subject.run(`${baseWorkPath}calculator`, { x: 1, y: 2, twice: true })
.then((work: Work) => {
return subject.state.load(work.id);
})
.then((work: Work) => {
assert.isNotNull(work.result);
assert.equal(work.result.result, 3);
assert.lengthOf(work.childrenIDs, 1);
assert.lengthOf(work.finishedChildrenIDs, 1);
assert.isNotNull(work.finalizerResult);
assert.equal(work.finalizerResult.result, 3);
});
});
});
示例2: describe
describe('DynamoDB', () => {
let subject : Workhorse;
let baseWorkPath = 'working://dist/test/test-work/';
function getAWSConfig() {
let jsonPath = path.resolve(__dirname, '../../aws-config.json');
if (!fs.existsSync(jsonPath)) {
throw new Error("Please create a 'aws-config.json' file in the root directory of this project to test with AWS resources")
}
let rawConfig = JSON.parse(fs.readFileSync(jsonPath));
return new AWSConfig(rawConfig);
}
before(function () {
let awsConfig = getAWSConfig();
subject = new Workhorse(new Config({
stateManager: new DynamoDBStateManager(awsConfig)
}));
});
describe('#run', () => {
it('should add two numbers', function(){
this.timeout(20000);
return subject.run(`${baseWorkPath}calculator`, { x: 1, y: 2 })
.then((work: Work) => {
assert.isNotNull(work.result);
assert.equal(work.result.result, 3);
});
});
it('should recurse a few times', function() {
this.timeout(95000);
return subject.run(`${baseWorkPath}calculator`, { x: 1, y: 2, recurse: 3 })
.then((work: Work) => {
return subject.state.load(work.id)
.then((work) => {
return work.deep(subject);
});
})
.then((deep) => {
assert.isNotNull(deep.result);
assert.equal(deep.finalizerResult.result, 9);
assert.equal(deep.ancestorLevel, 0);
assert.equal(deep.children[0].ancestorLevel, 1);
assert.equal(deep.children[0].children[0].ancestorLevel, 2);
assert.equal(deep.children[0].children[0].children[0].ancestorLevel, 3);
assert.isTrue(deep.finalizerResult.ended >= deep.children[0].children[0].children[0].result.ended);
});
});
it('should spawn child work test', function(){
this.timeout(60000);
return subject.run(`${baseWorkPath}calculator`, { x: 1, y: 2, twice: true })
.then((work: Work) => {
return subject.state.load(work.id);
})
.then((work: Work) => {
assert.isNotNull(work.result);
assert.equal(work.result.result, 3);
assert.lengthOf(work.childrenIDs, 1);
assert.lengthOf(work.finishedChildrenIDs, 1);
});
});
});
});
示例3:
.then((work: Work) => {
if (parsed.runFinalizer) {
return this.workhorse.runFinalizer(work);
}
else {
return this.workhorse.run(work);
}
})
示例4: it
it('should add two numbers', function(){
this.timeout(20000);
return subject.run(`${baseWorkPath}calculator`, { x: 1, y: 2 })
.then((work: Work) => {
assert.isNotNull(work.result);
assert.equal(work.result.result, 3);
});
});