@shutterstock/p-map-iterable 1.1.0 → 1.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +105 -14
- package/dist/src/blocking-queue.test.js +2 -2
- package/dist/src/blocking-queue.test.js.map +1 -1
- package/dist/src/iterable-mapper.d.ts +173 -30
- package/dist/src/iterable-mapper.d.ts.map +1 -1
- package/dist/src/iterable-mapper.js +143 -25
- package/dist/src/iterable-mapper.js.map +1 -1
- package/dist/src/iterable-mapper.test.js +28 -0
- package/dist/src/iterable-mapper.test.js.map +1 -1
- package/dist/src/iterable-queue-mapper-simple.d.ts +44 -29
- package/dist/src/iterable-queue-mapper-simple.d.ts.map +1 -1
- package/dist/src/iterable-queue-mapper-simple.js +38 -21
- package/dist/src/iterable-queue-mapper-simple.js.map +1 -1
- package/dist/src/iterable-queue-mapper.d.ts +38 -58
- package/dist/src/iterable-queue-mapper.d.ts.map +1 -1
- package/dist/src/iterable-queue-mapper.js +33 -33
- package/dist/src/iterable-queue-mapper.js.map +1 -1
- package/dist/src/iterable-queue-mapper.test.js +6 -4
- package/dist/src/iterable-queue-mapper.test.js.map +1 -1
- package/dist/src/iterable-queue.test.js +3 -3
- package/dist/src/iterable-queue.test.js.map +1 -1
- package/package.json +2 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"iterable-queue-mapper-simple.js","sourceRoot":"","sources":["../../src/iterable-queue-mapper-simple.ts"],"names":[],"mappings":";;;AACA,mEAA8D;AAK9D,MAAM,QAAQ,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"iterable-queue-mapper-simple.js","sourceRoot":"","sources":["../../src/iterable-queue-mapper-simple.ts"],"names":[],"mappings":";;;AACA,mEAA8D;AAK9D,MAAM,QAAQ,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC;AAOpC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuCG;AACH,MAAa,yBAAyB;IAOpC;;;;;;;;;;OAUG;IACH,YAAY,MAA6B,EAAE,UAA4C,EAAE;QAhBxE,YAAO,GAAoB,EAAE,CAAC;QAGvC,YAAO,GAAG,KAAK,CAAC;QActB,MAAM,EAAE,WAAW,GAAG,CAAC,EAAE,GAAG,OAAO,CAAC;QAEpC,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;QACtB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACrC,IAAI,CAAC,OAAO,GAAG,IAAI,2CAAmB,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,WAAW,EAAE,SAAS,EAAE,WAAW,EAAE,CAAC,CAAC;QAE7F,6BAA6B;QAC7B,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;IACrC,CAAC;IAEO,KAAK,CAAC,cAAc;QAC1B,6DAA6D;QAC7D,IAAI,IAAI,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;QACrC,OAAO,IAAI,CAAC,IAAI,KAAK,IAAI,EAAE;YACzB,+BAA+B;YAC/B,oEAAoE;YACpE,IAAI,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;SAClC;IACH,CAAC;IAEO,KAAK,CAAC,MAAM,CAAC,IAAa,EAAE,KAAa;QAC/C,IAAI;YACF,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;YAChC,8DAA8D;SAC/D;QAAC,OAAO,KAAU,EAAE;YACnB,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;SACpC;QACD,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED;;;;;;;;;;;OAWG;IACH,IAAW,MAAM;QACf,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAED;;;;;;;;OAQG;IACI,KAAK,CAAC,OAAO,CAAC,IAAa;QAChC,4EAA4E;QAC5E,MAAM,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IACnC,CAAC;IAED;;;OAGG;IACI,KAAK,CAAC,MAAM;QACjB,IAAI,IAAI,CAAC,OAAO;YAAE,OAAO;QAEzB,4CAA4C;QAC5C,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;QAEpB,MAAM,IAAI,CAAC,KAAK,CAAC;QAEjB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;IACtB,CAAC;IAED;;;;OAIG;IACH,IAAW,MAAM;QACf,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;CACF;AAtGD,8DAsGC"}
|
|
@@ -1,77 +1,57 @@
|
|
|
1
|
-
import { Mapper } from './iterable-mapper';
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
* Must be an integer from 1 and up or `Infinity`, must be <= `maxUnread`.
|
|
7
|
-
*
|
|
8
|
-
* @default 4
|
|
9
|
-
*/
|
|
10
|
-
readonly concurrency?: number;
|
|
11
|
-
/**
|
|
12
|
-
* Number of pending unread iterable items.
|
|
13
|
-
*
|
|
14
|
-
* Must be an integer from 1 and up or `Infinity`, must be >= `concurrency`.
|
|
15
|
-
*
|
|
16
|
-
* @default 8
|
|
17
|
-
*/
|
|
18
|
-
readonly maxUnread?: number;
|
|
19
|
-
/**
|
|
20
|
-
* When set to `false`, instead of stopping when a promise rejects, it will wait for all the promises to settle and then reject with an [aggregated error](https://github.com/sindresorhus/aggregate-error) containing all the errors from the rejected promises.
|
|
21
|
-
*
|
|
22
|
-
* @default true
|
|
23
|
-
*/
|
|
24
|
-
readonly stopOnMapperError?: boolean;
|
|
25
|
-
}
|
|
1
|
+
import { IterableMapperOptions, Mapper } from './iterable-mapper';
|
|
2
|
+
/**
|
|
3
|
+
* Options for IterableQueueMapper
|
|
4
|
+
*/
|
|
5
|
+
export type IterableQueueMapperOptions = IterableMapperOptions;
|
|
26
6
|
/**
|
|
27
7
|
* Accepts queue items via `enqueue` and calls the `mapper` on them
|
|
28
|
-
* with specified concurrency
|
|
29
|
-
* `
|
|
30
|
-
*
|
|
31
|
-
* the queue is full, until an item is read.
|
|
8
|
+
* with specified `concurrency`, storing the `mapper` result in a queue
|
|
9
|
+
* of `maxUnread` size, before being iterated / read by the caller.
|
|
10
|
+
* The `enqueue` method will block if the queue is full, until an item is read.
|
|
32
11
|
*
|
|
33
12
|
* @remarks
|
|
34
13
|
*
|
|
35
|
-
*
|
|
36
|
-
*
|
|
37
|
-
*
|
|
14
|
+
* ### Typical Use Case
|
|
15
|
+
* - Pushing items to an async I/O destination
|
|
16
|
+
* - In the simple sequential (`concurrency: 1`) case, allows 1 item to be flushed async while caller prepares next item
|
|
17
|
+
* - Results of the flushed items are needed in a subsequent step (if they are not, use `IterableQueueMapperSimple`)
|
|
18
|
+
* - Prevents the producer from racing ahead of the consumer if `maxUnread` is reached
|
|
19
|
+
*
|
|
20
|
+
* ### Error Handling
|
|
21
|
+
* The mapper should ideally handle all errors internally to enable error handling
|
|
22
|
+
* closest to where they occur. However, if errors do escape the mapper:
|
|
38
23
|
*
|
|
39
|
-
*
|
|
40
|
-
*
|
|
41
|
-
*
|
|
42
|
-
* `mapper` function of the `IterableMapper`.
|
|
24
|
+
* When `stopOnMapperError` is true (default):
|
|
25
|
+
* - First error immediately stops processing
|
|
26
|
+
* - Error is thrown from the `AsyncIterator`'s next() call
|
|
43
27
|
*
|
|
44
|
-
*
|
|
45
|
-
*
|
|
46
|
-
*
|
|
47
|
-
*
|
|
48
|
-
*
|
|
49
|
-
*
|
|
28
|
+
* When `stopOnMapperError` is false:
|
|
29
|
+
* - Processing continues despite errors
|
|
30
|
+
* - All errors are collected and thrown together
|
|
31
|
+
* - Errors are thrown as `AggregateError` after all items complete
|
|
32
|
+
*
|
|
33
|
+
* ### Usage
|
|
34
|
+
* - Items are added to the queue via the `await enqueue()` method
|
|
35
|
+
* - IMPORTANT: `await enqueue()` method will block until a slot is available, if queue is full
|
|
36
|
+
* - Call `done()` when no more items will be enqueued
|
|
37
|
+
* - IMPORTANT: Always `await onIdle()` to ensure all items are processed
|
|
50
38
|
*
|
|
51
39
|
* @category Enqueue Input
|
|
40
|
+
*
|
|
41
|
+
* @see {@link IterableMapper} for underlying mapper implementation and examples of combined usage
|
|
52
42
|
*/
|
|
53
43
|
export declare class IterableQueueMapper<Element, NewElement> implements AsyncIterable<NewElement> {
|
|
54
44
|
private _iterableMapper;
|
|
55
45
|
private _sourceIterable;
|
|
56
46
|
/**
|
|
57
|
-
* Create a new `IterableQueueMapper`
|
|
58
|
-
*
|
|
59
|
-
* @param mapper Function which is called for every item in `input`.
|
|
60
|
-
* Expected to return a `Promise` or value.
|
|
47
|
+
* Create a new `IterableQueueMapper`, which uses `IterableMapper` underneath, and exposes a
|
|
48
|
+
* queue interface for adding items that are not exposed via an iterator.
|
|
61
49
|
*
|
|
62
|
-
*
|
|
63
|
-
* out of the `mapper` function as this enables the best handling of errors
|
|
64
|
-
* closest to the time that they occur.
|
|
65
|
-
*
|
|
66
|
-
* If the `mapper` function does allow an error to be thrown then the
|
|
67
|
-
* `stopOnMapperError` option controls the behavior:
|
|
68
|
-
* - `stopOnMapperError`: `true` - will throw the error
|
|
69
|
-
* out of `next` or the `AsyncIterator` returned from `[Symbol.asyncIterator]`
|
|
70
|
-
* and stop processing.
|
|
71
|
-
* - `stopOnMapperError`: `false` - will continue processing
|
|
72
|
-
* and accumulate the errors to be thrown from `next` or the `AsyncIterator`
|
|
73
|
-
* returned from `[Symbol.asyncIterator]` when all items have been processed.
|
|
50
|
+
* @param mapper Function called for every enqueued item. Returns a `Promise` or value.
|
|
74
51
|
* @param options IterableQueueMapper options
|
|
52
|
+
*
|
|
53
|
+
* @see {@link IterableQueueMapper} for full class documentation
|
|
54
|
+
* @see {@link IterableMapper} for underlying mapper implementation and examples of combined usage
|
|
75
55
|
*/
|
|
76
56
|
constructor(mapper: Mapper<Element, NewElement>, options?: IterableQueueMapperOptions);
|
|
77
57
|
[Symbol.asyncIterator](): AsyncIterator<NewElement>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"iterable-queue-mapper.d.ts","sourceRoot":"","sources":["../../src/iterable-queue-mapper.ts"],"names":[],"mappings":"AAGA,OAAO,EAAkB,MAAM,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"iterable-queue-mapper.d.ts","sourceRoot":"","sources":["../../src/iterable-queue-mapper.ts"],"names":[],"mappings":"AAGA,OAAO,EAAkB,qBAAqB,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAGlF;;GAEG;AACH,MAAM,MAAM,0BAA0B,GAAG,qBAAqB,CAAC;AAE/D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;AACH,qBAAa,mBAAmB,CAAC,OAAO,EAAE,UAAU,CAAE,YAAW,aAAa,CAAC,UAAU,CAAC;IACxF,OAAO,CAAC,eAAe,CAAsC;IAE7D,OAAO,CAAC,eAAe,CAAyB;IAEhD;;;;;;;;;OASG;gBACS,MAAM,EAAE,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,EAAE,OAAO,GAAE,0BAA+B;IAOlF,CAAC,MAAM,CAAC,aAAa,CAAC,IAAI,aAAa,CAAC,UAAU,CAAC;IAI1D;;;;OAIG;IACU,IAAI,IAAI,OAAO,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC;IAIxD;;;;OAIG;IACU,OAAO,CAAC,IAAI,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAIlD;;;;OAIG;IACI,IAAI,IAAI,IAAI;CAGpB"}
|
|
@@ -8,51 +8,51 @@ const iterable_mapper_1 = require("./iterable-mapper");
|
|
|
8
8
|
const iterable_queue_1 = require("./iterable-queue");
|
|
9
9
|
/**
|
|
10
10
|
* Accepts queue items via `enqueue` and calls the `mapper` on them
|
|
11
|
-
* with specified concurrency
|
|
12
|
-
* `
|
|
13
|
-
*
|
|
14
|
-
* the queue is full, until an item is read.
|
|
11
|
+
* with specified `concurrency`, storing the `mapper` result in a queue
|
|
12
|
+
* of `maxUnread` size, before being iterated / read by the caller.
|
|
13
|
+
* The `enqueue` method will block if the queue is full, until an item is read.
|
|
15
14
|
*
|
|
16
15
|
* @remarks
|
|
17
16
|
*
|
|
18
|
-
*
|
|
19
|
-
*
|
|
20
|
-
*
|
|
17
|
+
* ### Typical Use Case
|
|
18
|
+
* - Pushing items to an async I/O destination
|
|
19
|
+
* - In the simple sequential (`concurrency: 1`) case, allows 1 item to be flushed async while caller prepares next item
|
|
20
|
+
* - Results of the flushed items are needed in a subsequent step (if they are not, use `IterableQueueMapperSimple`)
|
|
21
|
+
* - Prevents the producer from racing ahead of the consumer if `maxUnread` is reached
|
|
21
22
|
*
|
|
22
|
-
*
|
|
23
|
-
*
|
|
24
|
-
*
|
|
25
|
-
* `mapper` function of the `IterableMapper`.
|
|
23
|
+
* ### Error Handling
|
|
24
|
+
* The mapper should ideally handle all errors internally to enable error handling
|
|
25
|
+
* closest to where they occur. However, if errors do escape the mapper:
|
|
26
26
|
*
|
|
27
|
-
*
|
|
28
|
-
*
|
|
29
|
-
*
|
|
30
|
-
*
|
|
31
|
-
* `
|
|
32
|
-
*
|
|
27
|
+
* When `stopOnMapperError` is true (default):
|
|
28
|
+
* - First error immediately stops processing
|
|
29
|
+
* - Error is thrown from the `AsyncIterator`'s next() call
|
|
30
|
+
*
|
|
31
|
+
* When `stopOnMapperError` is false:
|
|
32
|
+
* - Processing continues despite errors
|
|
33
|
+
* - All errors are collected and thrown together
|
|
34
|
+
* - Errors are thrown as `AggregateError` after all items complete
|
|
35
|
+
*
|
|
36
|
+
* ### Usage
|
|
37
|
+
* - Items are added to the queue via the `await enqueue()` method
|
|
38
|
+
* - IMPORTANT: `await enqueue()` method will block until a slot is available, if queue is full
|
|
39
|
+
* - Call `done()` when no more items will be enqueued
|
|
40
|
+
* - IMPORTANT: Always `await onIdle()` to ensure all items are processed
|
|
33
41
|
*
|
|
34
42
|
* @category Enqueue Input
|
|
43
|
+
*
|
|
44
|
+
* @see {@link IterableMapper} for underlying mapper implementation and examples of combined usage
|
|
35
45
|
*/
|
|
36
46
|
class IterableQueueMapper {
|
|
37
47
|
/**
|
|
38
|
-
* Create a new `IterableQueueMapper`
|
|
48
|
+
* Create a new `IterableQueueMapper`, which uses `IterableMapper` underneath, and exposes a
|
|
49
|
+
* queue interface for adding items that are not exposed via an iterator.
|
|
39
50
|
*
|
|
40
|
-
* @param mapper Function
|
|
41
|
-
* Expected to return a `Promise` or value.
|
|
42
|
-
*
|
|
43
|
-
* The `mapper` *should* handle all errors and not allow an error to be thrown
|
|
44
|
-
* out of the `mapper` function as this enables the best handling of errors
|
|
45
|
-
* closest to the time that they occur.
|
|
46
|
-
*
|
|
47
|
-
* If the `mapper` function does allow an error to be thrown then the
|
|
48
|
-
* `stopOnMapperError` option controls the behavior:
|
|
49
|
-
* - `stopOnMapperError`: `true` - will throw the error
|
|
50
|
-
* out of `next` or the `AsyncIterator` returned from `[Symbol.asyncIterator]`
|
|
51
|
-
* and stop processing.
|
|
52
|
-
* - `stopOnMapperError`: `false` - will continue processing
|
|
53
|
-
* and accumulate the errors to be thrown from `next` or the `AsyncIterator`
|
|
54
|
-
* returned from `[Symbol.asyncIterator]` when all items have been processed.
|
|
51
|
+
* @param mapper Function called for every enqueued item. Returns a `Promise` or value.
|
|
55
52
|
* @param options IterableQueueMapper options
|
|
53
|
+
*
|
|
54
|
+
* @see {@link IterableQueueMapper} for full class documentation
|
|
55
|
+
* @see {@link IterableMapper} for underlying mapper implementation and examples of combined usage
|
|
56
56
|
*/
|
|
57
57
|
constructor(mapper, options = {}) {
|
|
58
58
|
this._sourceIterable = new iterable_queue_1.IterableQueue({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"iterable-queue-mapper.js","sourceRoot":"","sources":["../../src/iterable-queue-mapper.ts"],"names":[],"mappings":";;;AAAA,EAAE;AACF,sGAAsG;AACtG,EAAE;AACF,
|
|
1
|
+
{"version":3,"file":"iterable-queue-mapper.js","sourceRoot":"","sources":["../../src/iterable-queue-mapper.ts"],"names":[],"mappings":";;;AAAA,EAAE;AACF,sGAAsG;AACtG,EAAE;AACF,uDAAkF;AAClF,qDAAiD;AAOjD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;AACH,MAAa,mBAAmB;IAK9B;;;;;;;;;OASG;IACH,YAAY,MAAmC,EAAE,UAAsC,EAAE;QACvF,IAAI,CAAC,eAAe,GAAG,IAAI,8BAAa,CAAC;YACvC,SAAS,EAAE,CAAC;SACb,CAAC,CAAC;QACH,IAAI,CAAC,eAAe,GAAG,IAAI,gCAAc,CAAC,IAAI,CAAC,eAAe,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;IACnF,CAAC;IAEM,CAAC,MAAM,CAAC,aAAa,CAAC;QAC3B,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;OAIG;IACI,KAAK,CAAC,IAAI;QACf,OAAO,IAAI,CAAC,eAAe,CAAC,IAAI,EAAE,CAAC;IACrC,CAAC;IAED;;;;OAIG;IACI,KAAK,CAAC,OAAO,CAAC,IAAa;QAChC,MAAM,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAC3C,CAAC;IAED;;;;OAIG;IACI,IAAI;QACT,IAAI,CAAC,eAAe,CAAC,IAAI,EAAE,CAAC;IAC9B,CAAC;CACF;AApDD,kDAoDC"}
|
|
@@ -79,8 +79,9 @@ describe('IterableQueueMapper', () => {
|
|
|
79
79
|
expect(loopCount).toBe(max);
|
|
80
80
|
expect(lastTotal).toBe(max);
|
|
81
81
|
// Should require at least 4 batches
|
|
82
|
+
const duration = Date.now() - startTime;
|
|
82
83
|
expect(Date.now() - startTime).toBeLessThan(5 * delayBetweenMs);
|
|
83
|
-
expect(
|
|
84
|
+
expect(Math.ceil(duration)).toBeGreaterThan(4 * delayBetweenMs);
|
|
84
85
|
});
|
|
85
86
|
it('right number run in parallel - complex', async () => {
|
|
86
87
|
const prefetcher = new iterable_queue_mapper_1.IterableQueueMapper(mapper, { concurrency: 4, maxUnread: 4 });
|
|
@@ -95,7 +96,7 @@ describe('IterableQueueMapper', () => {
|
|
|
95
96
|
// Next one added should have had to wait for at least one wait period
|
|
96
97
|
void (async () => {
|
|
97
98
|
await prefetcher.enqueue({ value: 5, ms: delayBetweenMs });
|
|
98
|
-
expect(Date.now() - startTime).toBeGreaterThanOrEqual(delayBetweenMs);
|
|
99
|
+
expect(Math.ceil(Date.now() - startTime)).toBeGreaterThanOrEqual(delayBetweenMs);
|
|
99
100
|
prefetcher.done();
|
|
100
101
|
})();
|
|
101
102
|
let lastSeen = 0;
|
|
@@ -109,8 +110,9 @@ describe('IterableQueueMapper', () => {
|
|
|
109
110
|
expect(loopCount).toBe(5);
|
|
110
111
|
expect(lastSeen).toBe(5);
|
|
111
112
|
// Should require at least 2 batches
|
|
112
|
-
|
|
113
|
-
expect(
|
|
113
|
+
const duration = Date.now() - startTime;
|
|
114
|
+
expect(duration).toBeLessThan(2.5 * delayBetweenMs);
|
|
115
|
+
expect(Math.ceil(duration)).toBeGreaterThanOrEqual(2 * delayBetweenMs);
|
|
114
116
|
});
|
|
115
117
|
});
|
|
116
118
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"iterable-queue-mapper.test.js","sourceRoot":"","sources":["../../src/iterable-queue-mapper.test.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"iterable-queue-mapper.test.js","sourceRoot":"","sources":["../../src/iterable-queue-mapper.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -51,7 +51,7 @@ describe('IterableQueue', () => {
|
|
|
51
51
|
// Do not wait for second item to add (it will wait until an enqueue completes)
|
|
52
52
|
setTimeout(() => {
|
|
53
53
|
void queue.enqueue(items[1]);
|
|
54
|
-
},
|
|
54
|
+
}, 2010);
|
|
55
55
|
setTimeout(() => {
|
|
56
56
|
queue.done();
|
|
57
57
|
}, 3000);
|
|
@@ -63,7 +63,7 @@ describe('IterableQueue', () => {
|
|
|
63
63
|
for await (const item of queue) {
|
|
64
64
|
expect(item).toBe(items[iteratedCount]);
|
|
65
65
|
iteratedCount++;
|
|
66
|
-
expect(Date.now() - startTime).toBeGreaterThanOrEqual(2000);
|
|
66
|
+
expect(Math.ceil(Date.now() - startTime)).toBeGreaterThanOrEqual(2000);
|
|
67
67
|
}
|
|
68
68
|
expect(iteratedCount).toBe(2);
|
|
69
69
|
const duration = Date.now() - startTime;
|
|
@@ -132,7 +132,7 @@ describe('IterableQueue', () => {
|
|
|
132
132
|
for await (const item of queue) {
|
|
133
133
|
expect(item).toBe(items[iteratedCount]);
|
|
134
134
|
iteratedCount++;
|
|
135
|
-
expect(Date.now() - startTime).toBeGreaterThanOrEqual(2000);
|
|
135
|
+
expect(Math.ceil(Date.now() - startTime)).toBeGreaterThanOrEqual(2000);
|
|
136
136
|
}
|
|
137
137
|
expect(iteratedCount).toBe(2);
|
|
138
138
|
const duration = Date.now() - startTime;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"iterable-queue.test.js","sourceRoot":"","sources":["../../src/iterable-queue.test.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"iterable-queue.test.js","sourceRoot":"","sources":["../../src/iterable-queue.test.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@shutterstock/p-map-iterable",
|
|
3
|
-
"version": "1.1.
|
|
4
|
-
"description": "Set of classes
|
|
3
|
+
"version": "1.1.1",
|
|
4
|
+
"description": "Set of classes used for async prefetching with backpressure (IterableMapper) and async flushing with backpressure (IterableQueueMapper, IterableQueueMapperSimple)",
|
|
5
5
|
"main": "dist/src/index.js",
|
|
6
6
|
"types": "dist/src/index.d.ts",
|
|
7
7
|
"publishConfig": {
|