teraslice-client-js 0.60.2 → 0.60.3

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.
Files changed (70) hide show
  1. package/.eslintrc.json +14 -0
  2. package/dist/src/assets.d.ts +2 -2
  3. package/dist/src/assets.d.ts.map +1 -1
  4. package/dist/src/assets.js +20 -26
  5. package/dist/src/assets.js.map +1 -1
  6. package/dist/src/client.d.ts +1 -1
  7. package/dist/src/client.d.ts.map +1 -1
  8. package/dist/src/client.js +24 -27
  9. package/dist/src/client.js.map +1 -1
  10. package/dist/src/cluster.d.ts +1 -1
  11. package/dist/src/cluster.d.ts.map +1 -1
  12. package/dist/src/cluster.js +8 -14
  13. package/dist/src/cluster.js.map +1 -1
  14. package/dist/src/ex.d.ts +3 -3
  15. package/dist/src/ex.d.ts.map +1 -1
  16. package/dist/src/ex.js +22 -27
  17. package/dist/src/ex.js.map +1 -1
  18. package/dist/src/executions.d.ts +4 -4
  19. package/dist/src/executions.d.ts.map +1 -1
  20. package/dist/src/executions.js +13 -19
  21. package/dist/src/executions.js.map +1 -1
  22. package/dist/src/index.d.ts +8 -8
  23. package/dist/src/index.d.ts.map +1 -1
  24. package/dist/src/index.js +18 -39
  25. package/dist/src/index.js.map +1 -1
  26. package/dist/src/interfaces.js +1 -2
  27. package/dist/src/job.d.ts +6 -6
  28. package/dist/src/job.d.ts.map +1 -1
  29. package/dist/src/job.js +23 -28
  30. package/dist/src/job.js.map +1 -1
  31. package/dist/src/jobs.d.ts +5 -5
  32. package/dist/src/jobs.d.ts.map +1 -1
  33. package/dist/src/jobs.js +9 -15
  34. package/dist/src/jobs.js.map +1 -1
  35. package/dist/test/assets-spec.js +13 -16
  36. package/dist/test/assets-spec.js.map +1 -1
  37. package/dist/test/client-spec.js +10 -15
  38. package/dist/test/client-spec.js.map +1 -1
  39. package/dist/test/cluster-spec.js +6 -11
  40. package/dist/test/cluster-spec.js.map +1 -1
  41. package/dist/test/ex-spec.js +60 -65
  42. package/dist/test/ex-spec.js.map +1 -1
  43. package/dist/test/executions-spec.js +8 -13
  44. package/dist/test/executions-spec.js.map +1 -1
  45. package/dist/test/job-spec.js +82 -87
  46. package/dist/test/job-spec.js.map +1 -1
  47. package/dist/test/jobs-spec.js +14 -19
  48. package/dist/test/jobs-spec.js.map +1 -1
  49. package/dist/tsconfig.tsbuildinfo +1 -1
  50. package/examples/cluster.js +5 -5
  51. package/examples/list.js +8 -9
  52. package/examples/submit.js +15 -15
  53. package/jest.config.js +43 -2
  54. package/package.json +5 -4
  55. package/src/assets.ts +3 -3
  56. package/src/client.ts +3 -3
  57. package/src/cluster.ts +2 -2
  58. package/src/ex.ts +3 -3
  59. package/src/executions.ts +4 -4
  60. package/src/index.ts +8 -8
  61. package/src/job.ts +9 -9
  62. package/src/jobs.ts +5 -5
  63. package/test/assets-spec.ts +7 -4
  64. package/test/client-spec.ts +2 -2
  65. package/test/cluster-spec.ts +1 -1
  66. package/test/ex-spec.ts +1 -1
  67. package/test/executions-spec.ts +2 -2
  68. package/test/job-spec.ts +4 -4
  69. package/test/jobs-spec.ts +3 -3
  70. package/tsconfig.json +7 -1
@@ -1,17 +1,12 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- const nock_1 = __importDefault(require("nock"));
7
- const types_1 = require("@terascope/types");
8
- const job_1 = __importDefault(require("../src/job"));
1
+ import nock from 'nock';
2
+ import { Teraslice } from '@terascope/types';
3
+ import Job from '../src/job.js';
9
4
  describe('Teraslice Job', () => {
10
5
  let scope;
11
6
  const baseUrl = 'http://teraslice.example.dev/v1';
12
7
  beforeEach(() => {
13
- nock_1.default.cleanAll();
14
- scope = (0, nock_1.default)(baseUrl);
8
+ nock.cleanAll();
9
+ scope = nock(baseUrl);
15
10
  });
16
11
  const requestOptions = { headers: { 'Some-Header': 'yes' } };
17
12
  const clusterState = {
@@ -96,7 +91,7 @@ describe('Teraslice Job', () => {
96
91
  _created: date,
97
92
  _updated: date,
98
93
  _context: 'ex',
99
- _status: types_1.Teraslice.ExecutionStatusEnum.running,
94
+ _status: Teraslice.ExecutionStatusEnum.running,
100
95
  ex_id: '123456789',
101
96
  job_id: '123456789',
102
97
  slicer_hostname: 'hostname',
@@ -110,18 +105,18 @@ describe('Teraslice Job', () => {
110
105
  describe('when constructed without a jobId', () => {
111
106
  it('should throw an error', () => {
112
107
  // @ts-expect-error
113
- expect(() => new job_1.default()).toThrowError('Job requires jobId');
108
+ expect(() => new Job()).toThrowError('Job requires jobId');
114
109
  });
115
110
  });
116
111
  describe('when constructed with a invalid jobId', () => {
117
112
  it('should throw an error', () => {
118
113
  // @ts-expect-error
119
- expect(() => new job_1.default({}, { invalid: true })).toThrowError('Job requires jobId to be a string');
114
+ expect(() => new Job({}, { invalid: true })).toThrowError('Job requires jobId to be a string');
120
115
  });
121
116
  });
122
117
  describe('when constructed with a jobId', () => {
123
118
  it('should return the jobId', () => {
124
- const job = new job_1.default({}, 'some-job-id');
119
+ const job = new Job({}, 'some-job-id');
125
120
  expect(job.id()).toEqual('some-job-id');
126
121
  });
127
122
  });
@@ -133,7 +128,7 @@ describe('Teraslice Job', () => {
133
128
  .reply(200, { id: 'example' });
134
129
  });
135
130
  it('should resolve json results from Teraslice', async () => {
136
- const job = new job_1.default({ baseUrl }, 'some-job-id');
131
+ const job = new Job({ baseUrl }, 'some-job-id');
137
132
  const results = await job.slicer();
138
133
  expect(results).toEqual({ id: 'example' });
139
134
  });
@@ -146,7 +141,7 @@ describe('Teraslice Job', () => {
146
141
  .reply(200, { id: 'example' });
147
142
  });
148
143
  it('should resolve json results from Teraslice', async () => {
149
- const job = new job_1.default({ baseUrl }, 'some-job-id');
144
+ const job = new Job({ baseUrl }, 'some-job-id');
150
145
  const results = await job.controller();
151
146
  expect(results).toEqual({ id: 'example' });
152
147
  });
@@ -158,7 +153,7 @@ describe('Teraslice Job', () => {
158
153
  .reply(200, { foo: 'bar' });
159
154
  });
160
155
  it('should resolve json results from Teraslice', async () => {
161
- const job = new job_1.default({ baseUrl }, 'some-job-id');
156
+ const job = new Job({ baseUrl }, 'some-job-id');
162
157
  const results = await job.controller(requestOptions);
163
158
  expect(results).toEqual({ foo: 'bar' });
164
159
  });
@@ -177,7 +172,7 @@ describe('Teraslice Job', () => {
177
172
  .reply(200, { testMethod: method });
178
173
  });
179
174
  it('should resolve json results from Teraslice', async () => {
180
- const job = new job_1.default({ baseUrl }, 'some-job-id');
175
+ const job = new Job({ baseUrl }, 'some-job-id');
181
176
  const results = await job[method]();
182
177
  expect(results).toEqual({ testMethod: method });
183
178
  });
@@ -189,7 +184,7 @@ describe('Teraslice Job', () => {
189
184
  .reply(200, { key: 'some-other-key' });
190
185
  });
191
186
  it('should resolve json results from Teraslice', async () => {
192
- const job = new job_1.default({ baseUrl }, 'some-job-id');
187
+ const job = new Job({ baseUrl }, 'some-job-id');
193
188
  const results = await job[method]({ someParam: 'yes' });
194
189
  expect(results).toEqual({ key: 'some-other-key' });
195
190
  });
@@ -202,7 +197,7 @@ describe('Teraslice Job', () => {
202
197
  .reply(200, { key: 'some-random-key' });
203
198
  });
204
199
  it('should resolve json results from Teraslice', async () => {
205
- const job = new job_1.default({ baseUrl }, 'some-job-id');
200
+ const job = new Job({ baseUrl }, 'some-job-id');
206
201
  const results = await job[method]({ foo: 'bar' }, requestOptions);
207
202
  expect(results).toEqual({ key: 'some-random-key' });
208
203
  });
@@ -215,7 +210,7 @@ describe('Teraslice Job', () => {
215
210
  .reply(200, { job_id: 'some-other-job-id' });
216
211
  });
217
212
  it('should resolve json results from Teraslice', async () => {
218
- const job = new job_1.default({ baseUrl }, 'some-other-job-id');
213
+ const job = new Job({ baseUrl }, 'some-other-job-id');
219
214
  const results = await job.recover();
220
215
  expect(results).toEqual({ job_id: 'some-other-job-id' });
221
216
  });
@@ -227,9 +222,9 @@ describe('Teraslice Job', () => {
227
222
  .reply(200, { job_id: 'foo-bar' });
228
223
  });
229
224
  it('should resolve json results from Teraslice', async () => {
230
- const job = new job_1.default({ baseUrl }, 'foo-bar');
225
+ const job = new Job({ baseUrl }, 'foo-bar');
231
226
  const results = await job.recover({
232
- cleanup: types_1.Teraslice.RecoveryCleanupType.errors
227
+ cleanup: Teraslice.RecoveryCleanupType.errors
233
228
  });
234
229
  expect(results).toEqual({ job_id: 'foo-bar' });
235
230
  });
@@ -244,9 +239,9 @@ describe('Teraslice Job', () => {
244
239
  });
245
240
  });
246
241
  it('should resolve json results from Teraslice', async () => {
247
- const job = new job_1.default({ baseUrl }, 'some-job-id');
242
+ const job = new Job({ baseUrl }, 'some-job-id');
248
243
  const results = await job.recover({
249
- cleanup: types_1.Teraslice.RecoveryCleanupType.errors
244
+ cleanup: Teraslice.RecoveryCleanupType.errors
250
245
  }, requestOptions);
251
246
  expect(results).toEqual({
252
247
  key: 'some-other-key'
@@ -262,7 +257,7 @@ describe('Teraslice Job', () => {
262
257
  .reply(200, executionResults);
263
258
  });
264
259
  it('should resolve json results from Teraslice', async () => {
265
- const job = new job_1.default({ baseUrl }, exJobId);
260
+ const job = new Job({ baseUrl }, exJobId);
266
261
  const results = await job.execution();
267
262
  expect(results).toEqual(executionResults);
268
263
  });
@@ -274,7 +269,7 @@ describe('Teraslice Job', () => {
274
269
  .reply(200, executionResults);
275
270
  });
276
271
  it('should resolve json results from Teraslice', async () => {
277
- const job = new job_1.default({ baseUrl }, exJobId);
272
+ const job = new Job({ baseUrl }, exJobId);
278
273
  const results = await job.execution(requestOptions);
279
274
  expect(results).toEqual(executionResults);
280
275
  });
@@ -306,7 +301,7 @@ describe('Teraslice Job', () => {
306
301
  .reply(200, body);
307
302
  });
308
303
  it('should resolve the update job config', async () => {
309
- const job = new job_1.default({ baseUrl }, 'some-job-id');
304
+ const job = new Job({ baseUrl }, 'some-job-id');
310
305
  const result = await job.update(body);
311
306
  expect(result).toEqual(body);
312
307
  });
@@ -344,7 +339,7 @@ describe('Teraslice Job', () => {
344
339
  .reply(200, expected);
345
340
  });
346
341
  it('should resolve the update job config', async () => {
347
- const job = new job_1.default({ baseUrl }, 'some-job-id');
342
+ const job = new Job({ baseUrl }, 'some-job-id');
348
343
  const result = await job.updatePartial({ name: 'howdy' });
349
344
  expect(result).toEqual(expected);
350
345
  });
@@ -357,7 +352,7 @@ describe('Teraslice Job', () => {
357
352
  .reply(200, { ex_id: 'example-ex-id' });
358
353
  });
359
354
  it('should resolve json results from Teraslice', async () => {
360
- const job = new job_1.default({ baseUrl }, 'some-job-id');
355
+ const job = new Job({ baseUrl }, 'some-job-id');
361
356
  const results = await job.exId();
362
357
  expect(results).toEqual('example-ex-id');
363
358
  });
@@ -369,7 +364,7 @@ describe('Teraslice Job', () => {
369
364
  .reply(200, { ex_id: 'other-ex-id' });
370
365
  });
371
366
  it('should resolve json results from Teraslice', async () => {
372
- const job = new job_1.default({ baseUrl }, 'some-job-id');
367
+ const job = new Job({ baseUrl }, 'some-job-id');
373
368
  const results = await job.exId(requestOptions);
374
369
  expect(results).toEqual('other-ex-id');
375
370
  });
@@ -385,7 +380,7 @@ describe('Teraslice Job', () => {
385
380
  });
386
381
  });
387
382
  it('should resolve json results from Teraslice', async () => {
388
- const job = new job_1.default({ baseUrl }, 'some-job-id');
383
+ const job = new Job({ baseUrl }, 'some-job-id');
389
384
  const results = await job.status();
390
385
  expect(results).toEqual('example');
391
386
  });
@@ -400,7 +395,7 @@ describe('Teraslice Job', () => {
400
395
  });
401
396
  });
402
397
  it('should resolve json results from Teraslice', async () => {
403
- const job = new job_1.default({ baseUrl }, 'some-job-id');
398
+ const job = new Job({ baseUrl }, 'some-job-id');
404
399
  const results = await job.status(requestOptions);
405
400
  expect(results).toEqual('other-status');
406
401
  });
@@ -418,7 +413,7 @@ describe('Teraslice Job', () => {
418
413
  .reply(200, data);
419
414
  });
420
415
  it('should resolve json results from Teraslice', async () => {
421
- const job = new job_1.default({ baseUrl }, 'example-job-id');
416
+ const job = new Job({ baseUrl }, 'example-job-id');
422
417
  const results = await job.config();
423
418
  expect(results).toEqual(data);
424
419
  });
@@ -434,7 +429,7 @@ describe('Teraslice Job', () => {
434
429
  });
435
430
  });
436
431
  it('should resolve json results from Teraslice', async () => {
437
- const job = new job_1.default({ baseUrl }, 'some-job-id');
432
+ const job = new Job({ baseUrl }, 'some-job-id');
438
433
  const results = await job.config(requestOptions);
439
434
  expect(results).toEqual({
440
435
  job_id: 'example-job-id',
@@ -454,7 +449,7 @@ describe('Teraslice Job', () => {
454
449
  ]);
455
450
  });
456
451
  it('should resolve json results from Teraslice', async () => {
457
- const job = new job_1.default({ baseUrl }, 'some-job-id');
452
+ const job = new Job({ baseUrl }, 'some-job-id');
458
453
  const results = await job.errors();
459
454
  expect(results).toEqual([
460
455
  { error: 'example' },
@@ -481,7 +476,7 @@ describe('Teraslice Job', () => {
481
476
  .reply(200, clusterState);
482
477
  });
483
478
  it('should resolve json results from Teraslice', async () => {
484
- const job = new job_1.default({ baseUrl }, jobId);
479
+ const job = new Job({ baseUrl }, jobId);
485
480
  const results = await job.workers();
486
481
  expect(results).toEqual(workerData);
487
482
  });
@@ -493,7 +488,7 @@ describe('Teraslice Job', () => {
493
488
  .reply(200, clusterState);
494
489
  });
495
490
  it('should resolve json results from Teraslice', async () => {
496
- const job = new job_1.default({ baseUrl }, 'some-job-id');
491
+ const job = new Job({ baseUrl }, 'some-job-id');
497
492
  const results = await job.workers(requestOptions);
498
493
  expect(results).toEqual(workerData);
499
494
  });
@@ -509,7 +504,7 @@ describe('Teraslice Job', () => {
509
504
  .reply(200, oldStrResponse);
510
505
  });
511
506
  it('should resolve json results from Teraslice', async () => {
512
- const job = new job_1.default({ baseUrl }, 'some-job-id');
507
+ const job = new Job({ baseUrl }, 'some-job-id');
513
508
  const results = await job.changeWorkers('add', 2);
514
509
  expect(results).toEqual(oldStrResponse);
515
510
  });
@@ -521,7 +516,7 @@ describe('Teraslice Job', () => {
521
516
  .reply(200, response);
522
517
  });
523
518
  it('should resolve json results from Teraslice', async () => {
524
- const job = new job_1.default({ baseUrl }, 'some-job-id');
519
+ const job = new Job({ baseUrl }, 'some-job-id');
525
520
  const results = await job.changeWorkers('add', 2);
526
521
  expect(results).toEqual(response);
527
522
  });
@@ -533,7 +528,7 @@ describe('Teraslice Job', () => {
533
528
  .reply(200, response);
534
529
  });
535
530
  it('should resolve json results from Teraslice', async () => {
536
- const job = new job_1.default({ baseUrl }, 'some-job-id');
531
+ const job = new Job({ baseUrl }, 'some-job-id');
537
532
  const results = await job.changeWorkers('remove', 2);
538
533
  expect(results).toEqual(response);
539
534
  });
@@ -545,7 +540,7 @@ describe('Teraslice Job', () => {
545
540
  .reply(200, response);
546
541
  });
547
542
  it('should resolve json results from Teraslice', async () => {
548
- const job = new job_1.default({ baseUrl }, 'some-job-id');
543
+ const job = new Job({ baseUrl }, 'some-job-id');
549
544
  const results = await job.changeWorkers('total', 2);
550
545
  expect(results).toEqual(response);
551
546
  });
@@ -553,7 +548,7 @@ describe('Teraslice Job', () => {
553
548
  describe('when called with nothing', () => {
554
549
  it('should reject with an error', async () => {
555
550
  expect.hasAssertions();
556
- const job = new job_1.default({ baseUrl }, 'some-job-id');
551
+ const job = new Job({ baseUrl }, 'some-job-id');
557
552
  try {
558
553
  // @ts-expect-error
559
554
  await job.changeWorkers();
@@ -566,7 +561,7 @@ describe('Teraslice Job', () => {
566
561
  describe('when called with an invalid action', () => {
567
562
  it('should reject with an error', async () => {
568
563
  expect.hasAssertions();
569
- const job = new job_1.default({ baseUrl }, 'some-job-id');
564
+ const job = new Job({ baseUrl }, 'some-job-id');
570
565
  try {
571
566
  // @ts-expect-error
572
567
  await job.changeWorkers('invalid', 2);
@@ -583,13 +578,13 @@ describe('Teraslice Job', () => {
583
578
  scope.get('/jobs/some-job-id/ex')
584
579
  .reply(200, {
585
580
  ex_id: 'example-ex-id',
586
- _status: types_1.Teraslice.ExecutionStatusEnum.running
581
+ _status: Teraslice.ExecutionStatusEnum.running
587
582
  });
588
583
  });
589
584
  it('should resolve json results from Teraslice', async () => {
590
- const job = new job_1.default({ baseUrl }, 'some-job-id');
591
- const results = await job.waitForStatus(types_1.Teraslice.ExecutionStatusEnum.running);
592
- expect(results).toEqual(types_1.Teraslice.ExecutionStatusEnum.running);
585
+ const job = new Job({ baseUrl }, 'some-job-id');
586
+ const results = await job.waitForStatus(Teraslice.ExecutionStatusEnum.running);
587
+ expect(results).toEqual(Teraslice.ExecutionStatusEnum.running);
593
588
  });
594
589
  });
595
590
  describe('when called with status array and matches on the first try', () => {
@@ -597,16 +592,16 @@ describe('Teraslice Job', () => {
597
592
  scope.get('/jobs/some-job-id/ex')
598
593
  .reply(200, {
599
594
  ex_id: 'example-ex-id',
600
- _status: types_1.Teraslice.ExecutionStatusEnum.running
595
+ _status: Teraslice.ExecutionStatusEnum.running
601
596
  });
602
597
  });
603
598
  it('should resolve json results from Teraslice', async () => {
604
- const job = new job_1.default({ baseUrl }, 'some-job-id');
599
+ const job = new Job({ baseUrl }, 'some-job-id');
605
600
  const results = await job.waitForStatus([
606
- types_1.Teraslice.ExecutionStatusEnum.failing,
607
- types_1.Teraslice.ExecutionStatusEnum.running
601
+ Teraslice.ExecutionStatusEnum.failing,
602
+ Teraslice.ExecutionStatusEnum.running
608
603
  ]);
609
- expect(results).toEqual(types_1.Teraslice.ExecutionStatusEnum.running);
604
+ expect(results).toEqual(Teraslice.ExecutionStatusEnum.running);
610
605
  });
611
606
  });
612
607
  describe('when called and it matches on the first try (with headers)', () => {
@@ -616,13 +611,13 @@ describe('Teraslice Job', () => {
616
611
  .matchHeader('Some-Header', 'yes')
617
612
  .reply(200, {
618
613
  ex_id: 'example-ex-id',
619
- _status: types_1.Teraslice.ExecutionStatusEnum.running
614
+ _status: Teraslice.ExecutionStatusEnum.running
620
615
  });
621
616
  });
622
617
  it('should resolve json results from Teraslice', async () => {
623
- const job = new job_1.default({ baseUrl }, 'some-job-id');
624
- const results = await job.waitForStatus(types_1.Teraslice.ExecutionStatusEnum.running, 1000, 0, searchOptions);
625
- expect(results).toEqual(types_1.Teraslice.ExecutionStatusEnum.running);
618
+ const job = new Job({ baseUrl }, 'some-job-id');
619
+ const results = await job.waitForStatus(Teraslice.ExecutionStatusEnum.running, 1000, 0, searchOptions);
620
+ expect(results).toEqual(Teraslice.ExecutionStatusEnum.running);
626
621
  });
627
622
  });
628
623
  describe('when called and it matches on the second try', () => {
@@ -630,18 +625,18 @@ describe('Teraslice Job', () => {
630
625
  scope.get('/jobs/some-job-id/ex')
631
626
  .reply(200, {
632
627
  ex_id: 'example-ex-id',
633
- _status: types_1.Teraslice.ExecutionStatusEnum.running
628
+ _status: Teraslice.ExecutionStatusEnum.running
634
629
  });
635
630
  scope.get('/jobs/some-job-id/ex')
636
631
  .reply(200, {
637
632
  ex_id: 'example-ex-id',
638
- _status: types_1.Teraslice.ExecutionStatusEnum.completed
633
+ _status: Teraslice.ExecutionStatusEnum.completed
639
634
  });
640
635
  });
641
636
  it('should resolve json results from Teraslice', async () => {
642
- const job = new job_1.default({ baseUrl }, 'some-job-id');
643
- const results = await job.waitForStatus(types_1.Teraslice.ExecutionStatusEnum.completed);
644
- expect(results).toEqual(types_1.Teraslice.ExecutionStatusEnum.completed);
637
+ const job = new Job({ baseUrl }, 'some-job-id');
638
+ const results = await job.waitForStatus(Teraslice.ExecutionStatusEnum.completed);
639
+ expect(results).toEqual(Teraslice.ExecutionStatusEnum.completed);
645
640
  });
646
641
  });
647
642
  describe('when called with array of statuses and matches on the second try', () => {
@@ -649,22 +644,22 @@ describe('Teraslice Job', () => {
649
644
  scope.get('/jobs/some-job-id/ex')
650
645
  .reply(200, {
651
646
  ex_id: 'example-ex-id',
652
- _status: types_1.Teraslice.ExecutionStatusEnum.running
647
+ _status: Teraslice.ExecutionStatusEnum.running
653
648
  });
654
649
  scope.get('/jobs/some-job-id/ex')
655
650
  .reply(200, {
656
651
  ex_id: 'example-ex-id',
657
- _status: types_1.Teraslice.ExecutionStatusEnum.terminated
652
+ _status: Teraslice.ExecutionStatusEnum.terminated
658
653
  });
659
654
  });
660
655
  it('should resolve json results from Teraslice', async () => {
661
- const job = new job_1.default({ baseUrl }, 'some-job-id');
656
+ const job = new Job({ baseUrl }, 'some-job-id');
662
657
  const results = await job.waitForStatus([
663
- types_1.Teraslice.ExecutionStatusEnum.completed,
664
- types_1.Teraslice.ExecutionStatusEnum.failed,
665
- types_1.Teraslice.ExecutionStatusEnum.terminated
658
+ Teraslice.ExecutionStatusEnum.completed,
659
+ Teraslice.ExecutionStatusEnum.failed,
660
+ Teraslice.ExecutionStatusEnum.terminated
666
661
  ]);
667
- expect(results).toEqual(types_1.Teraslice.ExecutionStatusEnum.terminated);
662
+ expect(results).toEqual(Teraslice.ExecutionStatusEnum.terminated);
668
663
  });
669
664
  });
670
665
  describe('when called and it never matches', () => {
@@ -673,20 +668,20 @@ describe('Teraslice Job', () => {
673
668
  .times(1)
674
669
  .reply(200, {
675
670
  ex_id: 'example-ex-id',
676
- _status: types_1.Teraslice.ExecutionStatusEnum.initializing
671
+ _status: Teraslice.ExecutionStatusEnum.initializing
677
672
  });
678
673
  scope.get('/jobs/some-job-id/ex')
679
674
  .times(11)
680
675
  .reply(200, {
681
676
  ex_id: 'example-ex-id',
682
- _status: types_1.Teraslice.ExecutionStatusEnum.running
677
+ _status: Teraslice.ExecutionStatusEnum.running
683
678
  });
684
679
  });
685
680
  it('should reject with a timeout error', async () => {
686
681
  expect.hasAssertions();
687
- const job = new job_1.default({ baseUrl }, 'some-job-id');
682
+ const job = new Job({ baseUrl }, 'some-job-id');
688
683
  try {
689
- await job.waitForStatus(types_1.Teraslice.ExecutionStatusEnum.completed, 100, 1000);
684
+ await job.waitForStatus(Teraslice.ExecutionStatusEnum.completed, 100, 1000);
690
685
  }
691
686
  catch (err) {
692
687
  expect(err.message).toEqual('Job status failed to change from status "running" to "completed" within 1000ms');
@@ -699,23 +694,23 @@ describe('Teraslice Job', () => {
699
694
  .times(1)
700
695
  .reply(200, {
701
696
  ex_id: 'example-ex-id',
702
- _status: types_1.Teraslice.ExecutionStatusEnum.initializing
697
+ _status: Teraslice.ExecutionStatusEnum.initializing
703
698
  });
704
699
  scope.get('/jobs/some-job-id/ex')
705
700
  .times(11)
706
701
  .reply(200, {
707
702
  ex_id: 'example-ex-id',
708
- _status: types_1.Teraslice.ExecutionStatusEnum.running
703
+ _status: Teraslice.ExecutionStatusEnum.running
709
704
  });
710
705
  });
711
706
  it('should reject with a timeout error', async () => {
712
707
  expect.hasAssertions();
713
- const job = new job_1.default({ baseUrl }, 'some-job-id');
708
+ const job = new Job({ baseUrl }, 'some-job-id');
714
709
  try {
715
710
  await job.waitForStatus([
716
- types_1.Teraslice.ExecutionStatusEnum.completed,
717
- types_1.Teraslice.ExecutionStatusEnum.failed,
718
- types_1.Teraslice.ExecutionStatusEnum.stopped
711
+ Teraslice.ExecutionStatusEnum.completed,
712
+ Teraslice.ExecutionStatusEnum.failed,
713
+ Teraslice.ExecutionStatusEnum.stopped
719
714
  ], 100, 1000);
720
715
  }
721
716
  catch (err) {
@@ -729,18 +724,18 @@ describe('Teraslice Job', () => {
729
724
  .delay(1100)
730
725
  .reply(200, {
731
726
  ex_id: 'example-ex-id',
732
- _status: types_1.Teraslice.ExecutionStatusEnum.initializing
727
+ _status: Teraslice.ExecutionStatusEnum.initializing
733
728
  });
734
729
  scope.get('/jobs/some-job-id/ex')
735
730
  .reply(200, {
736
731
  ex_id: 'example-ex-id',
737
- _status: types_1.Teraslice.ExecutionStatusEnum.running
732
+ _status: Teraslice.ExecutionStatusEnum.running
738
733
  });
739
734
  });
740
735
  it('should resolve with the correct status', async () => {
741
- const job = new job_1.default({ baseUrl }, 'some-job-id');
742
- const status = await job.waitForStatus(types_1.Teraslice.ExecutionStatusEnum.running, 100, 1500);
743
- expect(status).toEqual(types_1.Teraslice.ExecutionStatusEnum.running);
736
+ const job = new Job({ baseUrl }, 'some-job-id');
737
+ const status = await job.waitForStatus(Teraslice.ExecutionStatusEnum.running, 100, 1500);
738
+ expect(status).toEqual(Teraslice.ExecutionStatusEnum.running);
744
739
  });
745
740
  });
746
741
  describe('when called and returns a terminal status', () => {
@@ -748,14 +743,14 @@ describe('Teraslice Job', () => {
748
743
  scope.get('/jobs/other-job-id/ex')
749
744
  .reply(200, {
750
745
  ex_id: 'example-ex-id',
751
- _status: types_1.Teraslice.ExecutionStatusEnum.failed
746
+ _status: Teraslice.ExecutionStatusEnum.failed
752
747
  });
753
748
  });
754
749
  it('should reject with a terminal status error', async () => {
755
750
  expect.hasAssertions();
756
- const job = new job_1.default({ baseUrl }, 'other-job-id');
751
+ const job = new Job({ baseUrl }, 'other-job-id');
757
752
  try {
758
- await job.waitForStatus(types_1.Teraslice.ExecutionStatusEnum.completed, 100, 1000);
753
+ await job.waitForStatus(Teraslice.ExecutionStatusEnum.completed, 100, 1000);
759
754
  }
760
755
  catch (err) {
761
756
  const errMsg = 'Job cannot reach the target status, "completed", because it is in the terminal state, "failed"';
@@ -1 +1 @@
1
- {"version":3,"file":"job-spec.js","sourceRoot":"","sources":["../../test/job-spec.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"job-spec.js","sourceRoot":"","sources":["../../test/job-spec.ts"],"names":[],"mappings":"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"}