当前位置: 首页>>代码示例>>TypeScript>>正文


TypeScript node-workhorse.Workhorse类代码示例

本文整理汇总了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);
      });
    });
  });
开发者ID:colinmathews,项目名称:node-workhorse-mysql,代码行数:55,代码来源:mysql-state-spec.ts

示例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);
      });
    });
  });
});
开发者ID:colinmathews,项目名称:node-workhorse-aws,代码行数:66,代码来源:dynamodb-spec.ts

示例3:

 .then((work: Work) => {
   if (parsed.runFinalizer) {
     return this.workhorse.runFinalizer(work);
   }
   else {
     return this.workhorse.run(work);
   }
 })
开发者ID:colinmathews,项目名称:node-workhorse-aws,代码行数:8,代码来源:lambda-router.ts

示例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);
   });
 });
开发者ID:colinmathews,项目名称:node-workhorse-aws,代码行数:8,代码来源:dynamodb-spec.ts


注:本文中的node-workhorse.Workhorse类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。