當前位置: 首頁>>代碼示例>>TypeScript>>正文


TypeScript stream.PassThrough類代碼示例

本文整理匯總了TypeScript中stream.PassThrough的典型用法代碼示例。如果您正苦於以下問題:TypeScript PassThrough類的具體用法?TypeScript PassThrough怎麽用?TypeScript PassThrough使用的例子?那麽, 這裏精選的類代碼示例或許可以為您提供幫助。


在下文中一共展示了PassThrough類的9個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的TypeScript代碼示例。

示例1: it

    it('should be doubly pipeable', done => {
      const wsb = new WritableStreamBuffer();
      const rs1 = new PassThrough();
      const rs2 = new PassThrough();
      rs1.pipe(wsb);
      rs2.pipe(wsb);

      const i1 = setInterval(() => { rs1.write('a') }, 100);
      const i2 = setInterval(() => { rs2.write('b') }, 150);

      setTimeout(() => {
        clearInterval(i1);
        rs1.end();
      }, 2000);

      setTimeout(() => {
        clearInterval(i2);
        rs2.end();
      }, 3000);

      jest.advanceTimersByTime(3000);

      wsb.on('finish', () => {
        const result = wsb.consume();
        expect(result.toString()).toEqual(expect.stringMatching(/[ab]{40}/));
        done();
      });
    });
開發者ID:driftyco,項目名稱:ionic-cli,代碼行數:28,代碼來源:index.ts

示例2: rp

    rp(options).then(response => {

      const stream = require('stream');
      const bufferStream = new stream.PassThrough();

      bufferStream.end(Buffer.from(response.body, 'base64'));

      const file = admin.storage().bucket().file('name.jpg');

      bufferStream.pipe(
        file.createWriteStream({
          public: true
        }))
        .on('error', function(error) {
          console.log(error);
          return res.status(500).send(error);
        })
        .on('finish', function() {

          const config: GetSignedUrlConfig = {
            action: 'read',
            expires: '01-01-2025'
          };
          file.getSignedUrl(config, function(error, url) {
            console.log(url);
            if (error) {
              return res.status(500).send(error);
            }
            return res.status(500).send(url);
          });

        });

      res.send('Success');
    })
開發者ID:Meistercoach83,項目名稱:sfw,代碼行數:35,代碼來源:get-unsplash-item.ts

示例3: as

(async () => {

    const sources = argv.help ? [] : [
        ...files.map((file) => () => fs.createReadStream(file)),
        ...(process.stdin.isTTY ? [] : [() => process.stdin])
    ].filter(Boolean) as (() => NodeJS.ReadableStream)[];

    let reader: RecordBatchReader | null;
    let hasReaders = false;

    for (const source of sources) {
        if (state.closed) { break; }
        for await (reader of recordBatchReaders(source)) {
            hasReaders = true;
            const source = reader.toNodeStream();
            const xform = batchesToString(state, reader.schema);
            const sink = new stream.PassThrough();
            sink.pipe(process.stdout, { end: false });
            await pipeline(source, xform, sink).catch(() => state.closed = true);
        }
        if (state.closed) { break; }
    }

    return hasReaders ? 0 : print_usage();
})()
開發者ID:laurentgo,項目名稱:arrow,代碼行數:25,代碼來源:arrow2csv.ts

示例4: test

test('it should change the stderr stream', t => {
  const streamStore = streamStoreFactory(initMockStreams())
  const stderr = new PassThrough
  streamStore.setStream({stderr})
  streamStore.get('stderr').write('apple')
  t.is(stderr.read().toString(), 'apple')
})
開發者ID:lab-coop,項目名稱:lab-stdio,代碼行數:7,代碼來源:stream-store.spec.ts

示例5: async

async () => {
    const s = new PassThrough();
    s.write('howdy');
    s.end();
    const { stdout } = await execa('stdin', { input: s });
    assert(stdout === 'foobar');
};
開發者ID:CNBoland,項目名稱:DefinitelyTyped,代碼行數:7,代碼來源:execa-tests.ts

示例6: it

    it('DeleteLayer Test -', (done: () => void) => {
		var response = new PassThrough();
		response.write(JSON.stringify({'statusCode': '202'}));        
		response.end();
        var req = new PassThrough();
        this.request.callsArgWith(1,response).returns(req);
        wrapper.deleteLayer('name','digest',(err)=>{  
            done();
        });
    });
開發者ID:beverts312,項目名稱:docker-registry-cli,代碼行數:10,代碼來源:registry-wrapper-tests.ts

示例7: it

 it('produces multiple chunks from a fed stream', () => {
   const str = new stream.PassThrough({highWaterMark: 1024});
   const src = Source.fromInputStream(() => str);
   const data1 = new Buffer(1024);
   const data2 = new Buffer(1024);
   str.write(data1);
   str.write(data2);
   str.end();
   return chai.expect(src.toArray()).to.eventually.deep.equal([data1, data2]);
 });
開發者ID:srijs,項目名稱:node-pacific,代碼行數:10,代碼來源:source-spec.ts

示例8: Error

 (res: http.IncomingMessage) => {
   if (res.statusCode === 200) {
     res.pipe(fileStream);
     return;
   }
   fileStream.emit('error', new Error(STATUS_CODES[res.statusCode]));
   fileStream.emit('end');
 },
開發者ID:kingsquare,項目名稱:communibase-connector-js,代碼行數:8,代碼來源:index.ts

示例9: setInterval

	const interval = setInterval(() => {
		if (count++ < 10) {
			slowStream.push('data\n'.repeat(100));
			return;
		}

		clearInterval(interval);
		slowStream.push(null);
	}, 100);
開發者ID:sindresorhus,項目名稱:got,代碼行數:9,代碼來源:slow-data-stream.ts


注:本文中的stream.PassThrough類示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。