@pixwel/pixwel-sdk 1.1.10 → 2.0.0

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.
@@ -37,12 +37,18 @@ var Filename = function () {
37
37
  * @param {String} [mediaType=''] Indicates video, audio, image and allows for stricter required fields
38
38
  * @return {String} A valid filename
39
39
  */
40
- value: function render() {
41
- var allTags = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
42
- var allTypes = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
43
- var asset = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
44
- var options = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};
45
- var mediaType = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : "";
40
+ value: function render(params) {
41
+ var _params$allTags = params.allTags,
42
+ allTags = _params$allTags === undefined ? [] : _params$allTags,
43
+ _params$allTypes = params.allTypes,
44
+ allTypes = _params$allTypes === undefined ? [] : _params$allTypes,
45
+ _params$asset = params.asset,
46
+ asset = _params$asset === undefined ? {} : _params$asset,
47
+ _params$options = params.options,
48
+ options = _params$options === undefined ? {} : _params$options,
49
+ _params$mediaType = params.mediaType,
50
+ mediaType = _params$mediaType === undefined ? "" : _params$mediaType;
51
+
46
52
 
47
53
  if (!asset.project) {
48
54
  throw new Error("missing asset.project");
@@ -159,8 +165,8 @@ var Filename = function () {
159
165
  }
160
166
 
161
167
  function locale(country, language) {
162
- if (language.includes('-')) {
163
- country = '';
168
+ if (language.includes("-")) {
169
+ country = "";
164
170
  }
165
171
  return [language, country].filter(function (str) {
166
172
  return !!str && str !== "WW";
@@ -263,16 +263,19 @@ var Ingest = function () {
263
263
  }
264
264
  /**
265
265
  * Assembles Ingest based on weighted rules
266
- * @param {*} context
267
- * @param {*} filename
268
- * @param {*} mediainfo
269
- * @param {*} order
266
+ *
267
+ * @param {object} params
270
268
  */
271
269
 
272
270
  }, {
273
271
  key: "assemble",
274
- value: function assemble(original, filename, mediainfo, order) {
275
- var watermarks = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : [];
272
+ value: function assemble(params) {
273
+ var original = params.original,
274
+ filename = params.filename,
275
+ mediainfo = params.mediainfo,
276
+ order = params.order,
277
+ _params$watermarks = params.watermarks,
278
+ watermarks = _params$watermarks === undefined ? [] : _params$watermarks;
276
279
 
277
280
 
278
281
  var defaults = {
@@ -302,7 +305,7 @@ var Ingest = function () {
302
305
  }
303
306
  };
304
307
 
305
- var ingest = _lodash2.default.merge(defaults, original, filename, mediainfo);
308
+ var ingest = _lodash2.default.merge(defaults, filename, original, mediainfo);
306
309
 
307
310
  if (original.asset && original.asset.creative) {
308
311
  ingest.selected.preview.revision = 'Unfinished';
@@ -312,10 +315,6 @@ var Ingest = function () {
312
315
  ingest.selected.asset = filename.asset._id;
313
316
  }
314
317
 
315
- if (order.asset) {
316
- ingest.selected.asset = order.asset;
317
- }
318
-
319
318
  if (ingest.workRequest) {
320
319
  ingest.selected.project = ingest.context.project;
321
320
  ingest.selected.asset = ingest.context.asset;
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@pixwel/pixwel-sdk",
3
3
  "description": "",
4
- "version": "1.1.10",
4
+ "version": "2.0.0",
5
5
  "author": "Pixwel",
6
6
  "license": "UNLICENSED",
7
7
  "main": "./dist/index.js",
package/src/Filename.js CHANGED
@@ -16,13 +16,16 @@ export default class Filename {
16
16
  * @param {String} [mediaType=''] Indicates video, audio, image and allows for stricter required fields
17
17
  * @return {String} A valid filename
18
18
  */
19
- static render(
20
- allTags = [],
21
- allTypes = [],
22
- asset = {},
23
- options = {},
24
- mediaType = ""
25
- ) {
19
+ static render(params) {
20
+
21
+ let {
22
+ allTags = [],
23
+ allTypes = [],
24
+ asset = {},
25
+ options = {},
26
+ mediaType = ""
27
+ } = params;
28
+
26
29
  if (!asset.project) {
27
30
  throw new Error("missing asset.project");
28
31
  }
@@ -140,8 +143,8 @@ export default class Filename {
140
143
  }
141
144
 
142
145
  function locale(country, language) {
143
- if (language.includes('-')) {
144
- country = '';
146
+ if (language.includes("-")) {
147
+ country = "";
145
148
  }
146
149
  return [language, country]
147
150
  .filter(str => {
package/src/Ingest.js CHANGED
@@ -240,12 +240,12 @@ export default class Ingest {
240
240
  }
241
241
  /**
242
242
  * Assembles Ingest based on weighted rules
243
- * @param {*} context
244
- * @param {*} filename
245
- * @param {*} mediainfo
246
- * @param {*} order
243
+ *
244
+ * @param {object} params
247
245
  */
248
- static assemble(original, filename, mediainfo, order, watermarks = []) {
246
+ static assemble(params) {
247
+
248
+ let { original, filename, mediainfo, order, watermarks = [] } = params;
249
249
 
250
250
  let defaults = {
251
251
  workRequest: order._id,
@@ -274,7 +274,7 @@ export default class Ingest {
274
274
  }
275
275
  };
276
276
 
277
- let ingest = _.merge(defaults, original, filename, mediainfo);
277
+ let ingest = _.merge(defaults, filename, original, mediainfo);
278
278
 
279
279
  if (original.asset && original.asset.creative) {
280
280
  ingest.selected.preview.revision = 'Unfinished';
@@ -284,10 +284,6 @@ export default class Ingest {
284
284
  ingest.selected.asset = filename.asset._id;
285
285
  }
286
286
 
287
- if (order.asset) {
288
- ingest.selected.asset = order.asset;
289
- }
290
-
291
287
  if (ingest.workRequest) {
292
288
  ingest.selected.project = ingest.context.project;
293
289
  ingest.selected.asset = ingest.context.asset;
@@ -1,6 +1,9 @@
1
1
  import Filename from "../src/Filename";
2
2
  let mocks = require("./mocks/mocks");
3
3
 
4
+ let allTags = mocks.tags;
5
+ let allTypes = mocks.types;
6
+
4
7
  describe("Filename", () => {
5
8
  describe("render", () => {
6
9
  it("renders tags as an underscore-separated string", function() {
@@ -25,7 +28,7 @@ describe("Filename", () => {
25
28
  "Frame Mode": "progressive"
26
29
  }
27
30
  };
28
- expect(Filename.render(mocks.tags, mocks.types, asset, options)).toBe(
31
+ expect(Filename.render({ allTags, allTypes, asset, options })).toBe(
29
32
  "TESTPROJECT_ITR-TEST-ASSET-A_ENG_TXTD_COMING-SOON_HOJE_PRORES_480p2398"
30
33
  );
31
34
  });
@@ -52,7 +55,7 @@ describe("Filename", () => {
52
55
  "Frame Mode": "progressive"
53
56
  }
54
57
  };
55
- expect(Filename.render(mocks.tags, mocks.types, asset, options)).toBe(
58
+ expect(Filename.render({ allTags, allTypes, asset, options })).toBe(
56
59
  "TESTPROJECT_ITR-TEST-ASSET-A_ENG-US_TXTD_COMING-SOON_HOJE_PRORES_480p2398"
57
60
  );
58
61
  });
@@ -79,7 +82,7 @@ describe("Filename", () => {
79
82
  "Frame Mode": "progressive"
80
83
  }
81
84
  };
82
- expect(Filename.render(mocks.tags, mocks.types, asset, options)).toBe(
85
+ expect(Filename.render({ allTags, allTypes, asset, options })).toBe(
83
86
  "TESTPROJECT_ITR-TEST-ASSET-A_PFR-FLE_TXTD_COMING-SOON_HOJE_PRORES_480p2398"
84
87
  );
85
88
  });
@@ -102,8 +105,9 @@ describe("Filename", () => {
102
105
  Resolution: "640x480"
103
106
  }
104
107
  };
108
+ let mediaType = 'image';
105
109
  expect(
106
- Filename.render(mocks.tags, mocks.types, asset, options, "image")
110
+ Filename.render({ allTags, allTypes, asset, options, mediaType })
107
111
  ).toBe("TESTPROJECT_ITR-TEST-ASSET-A_ENG_TXTD_640x480");
108
112
  });
109
113
 
@@ -127,7 +131,7 @@ describe("Filename", () => {
127
131
  "Frame Mode": "progressive"
128
132
  }
129
133
  };
130
- expect(Filename.render(mocks.tags, mocks.types, asset, options)).toBe(
134
+ expect(Filename.render({ allTags, allTypes, asset, options })).toBe(
131
135
  "TESTPROJECT_ITR-CANT-INTL-10_ENG_TXTD_PRORES_480p2398"
132
136
  );
133
137
  });
@@ -153,7 +157,7 @@ describe("Filename", () => {
153
157
  "Frame Mode": "progressive"
154
158
  }
155
159
  };
156
- expect(Filename.render(mocks.tags, mocks.types, asset, options)).toBe(
160
+ expect(Filename.render({ allTags, allTypes, asset, options })).toBe(
157
161
  "TESTPROJECT_ITR-TEST-ASSET-A_ENG_TXTD_REV_PRORES_480p2398"
158
162
  );
159
163
  });
@@ -172,7 +176,7 @@ describe("Filename", () => {
172
176
  language: "ENG"
173
177
  };
174
178
  expect(() => {
175
- Filename.render(mocks.tags, mocks.types, asset, options);
179
+ Filename.render({ allTags, allTypes, asset, options });
176
180
  }).toThrow("missing asset.project");
177
181
  });
178
182
 
@@ -193,7 +197,7 @@ describe("Filename", () => {
193
197
  }
194
198
  };
195
199
  expect(() => {
196
- Filename.render(mocks.tags, mocks.types, asset, options);
200
+ Filename.render({ allTags, allTypes, asset, options });
197
201
  }).toThrow("missing asset.length");
198
202
  });
199
203
 
@@ -221,7 +225,7 @@ describe("Filename", () => {
221
225
  // }
222
226
  // };
223
227
  // expect(() => {
224
- // Filename.render(mocks.tags, mocks.types, asset, options)
228
+ // Filename.render({ allTags, allTypes, asset, options })
225
229
  // }).toThrow('conflicting options supplied: SubDub and Text');
226
230
  // });
227
231
 
@@ -246,7 +250,7 @@ describe("Filename", () => {
246
250
  // }
247
251
  // };
248
252
  // expect(() => {
249
- // Filename.render(mocks.tags, mocks.types, asset, options);
253
+ // Filename.render({ allTags, allTypes, asset, options });
250
254
  // }).toThrow("missing options.tags.Codec");
251
255
  // });
252
256
 
@@ -270,8 +274,15 @@ describe("Filename", () => {
270
274
  "Frame Mode": "progressive"
271
275
  }
272
276
  };
277
+ let mediaType = 'video';
273
278
  expect(() => {
274
- Filename.render(mocks.tags, mocks.types, asset, options, "video");
279
+ Filename.render({
280
+ allTags,
281
+ allTypes,
282
+ asset,
283
+ options,
284
+ mediaType
285
+ });
275
286
  }).toThrow("missing options.tags.Resolution");
276
287
  });
277
288
 
@@ -295,8 +306,15 @@ describe("Filename", () => {
295
306
  "Frame Mode": "progressive"
296
307
  }
297
308
  };
309
+ let mediaType = 'video';
298
310
  expect(() => {
299
- Filename.render(mocks.tags, mocks.types, asset, options, "video");
311
+ Filename.render({
312
+ allTags,
313
+ allTypes,
314
+ asset,
315
+ options,
316
+ mediaType
317
+ });
300
318
  }).toThrow("missing options.tags.Framerate");
301
319
  });
302
320
 
@@ -320,8 +338,9 @@ describe("Filename", () => {
320
338
  // "Frame Mode": 'progressive'
321
339
  }
322
340
  };
341
+ let mediaType = 'video';
323
342
  expect(() => {
324
- Filename.render(mocks.tags, mocks.types, asset, options, "video");
343
+ Filename.render({ allTags, allTypes, asset, options, mediaType });
325
344
  }).toThrow("missing options.tags[Frame Mode]");
326
345
  });
327
346
 
@@ -342,7 +361,7 @@ describe("Filename", () => {
342
361
  }
343
362
  };
344
363
  expect(() => {
345
- Filename.render(mocks.tags, mocks.types, asset, options);
364
+ Filename.render({ allTags, allTypes, asset, options });
346
365
  }).toThrow("missing asset.length");
347
366
  });
348
367
 
@@ -359,7 +378,7 @@ describe("Filename", () => {
359
378
  language: "ENG"
360
379
  };
361
380
  expect(() => {
362
- Filename.render(mocks.tags, mocks.types, asset, options);
381
+ Filename.render({ allTags, allTypes, asset, options });
363
382
  }).toThrow("missing asset.project.filePrefix");
364
383
  });
365
384
 
@@ -376,7 +395,7 @@ describe("Filename", () => {
376
395
  language: "ENG"
377
396
  };
378
397
  expect(() => {
379
- Filename.render(mocks.tags, mocks.types, asset, options);
398
+ Filename.render({ allTags, allTypes, asset, options });
380
399
  }).toThrow("missing asset.name");
381
400
  });
382
401
 
@@ -393,7 +412,7 @@ describe("Filename", () => {
393
412
  language: "ENG"
394
413
  };
395
414
  expect(() => {
396
- Filename.render(mocks.tags, mocks.types, asset, options);
415
+ Filename.render({ allTags, allTypes, asset, options });
397
416
  }).toThrow("missing asset.type");
398
417
  });
399
418
 
@@ -408,7 +427,11 @@ describe("Filename", () => {
408
427
  }
409
428
  };
410
429
  expect(() => {
411
- Filename.render(mocks.tags, mocks.types, asset);
430
+ Filename.render({
431
+ allTags,
432
+ allTypes,
433
+ asset
434
+ });
412
435
  }).toThrow("missing options.language");
413
436
  });
414
437
 
@@ -428,7 +451,12 @@ describe("Filename", () => {
428
451
  }
429
452
  };
430
453
  expect(() => {
431
- Filename.render(mocks.tags, mocks.types, asset);
454
+ Filename.render({
455
+ allTags,
456
+ allTypes,
457
+ asset,
458
+ options
459
+ });
432
460
  }).toThrow("missing options.language");
433
461
  });
434
462
 
@@ -453,7 +481,7 @@ describe("Filename", () => {
453
481
  "Frame Mode": "progressive"
454
482
  }
455
483
  };
456
- expect(Filename.render(mocks.tags, mocks.types, asset, options)).toBe(
484
+ expect(Filename.render({ allTags, allTypes, asset, options })).toBe(
457
485
  "TESTPROJECT_ITR-TEST-ASSET-A_ENG-US_TXTD_PRORES_480p2398"
458
486
  );
459
487
  });
@@ -478,7 +506,7 @@ describe("Filename", () => {
478
506
  "Frame Mode": "progressive"
479
507
  }
480
508
  };
481
- expect(Filename.render(mocks.tags, mocks.types, asset, options)).toBe(
509
+ expect(Filename.render({ allTags, allTypes, asset, options })).toBe(
482
510
  "TESTPROJECT_DTR-TEST-ASSET-A_ENG_TXTD_PRORES_480p2398"
483
511
  );
484
512
  });
@@ -503,7 +531,7 @@ describe("Filename", () => {
503
531
  "Frame Mode": "progressive"
504
532
  }
505
533
  };
506
- expect(Filename.render(mocks.tags, mocks.types, asset, options)).toBe(
534
+ expect(Filename.render({ allTags, allTypes, asset, options })).toBe(
507
535
  "TESTPROJECT_TR-GENERIC-TRAILER_ENG_TXTD_PRORES_480p2398"
508
536
  );
509
537
  });
@@ -528,7 +556,7 @@ describe("Filename", () => {
528
556
  "Frame Mode": "progressive"
529
557
  }
530
558
  };
531
- expect(Filename.render(mocks.tags, mocks.types, asset, options)).toBe(
559
+ expect(Filename.render({ allTags, allTypes, asset, options })).toBe(
532
560
  "TESTPROJECT_TV-SPOT-INTL_COOL-SPOT-15_ENG_TXTD_PRORES_480p2398"
533
561
  );
534
562
  });
@@ -554,7 +582,7 @@ describe("Filename", () => {
554
582
  }
555
583
  };
556
584
  expect(function() {
557
- Filename.render(mocks.tags, mocks.types, asset, options);
585
+ Filename.render({ allTags, allTypes, asset, options });
558
586
  }).toThrow('Asset type "doesnt-exist" could not be found');
559
587
  });
560
588
 
@@ -579,19 +607,19 @@ describe("Filename", () => {
579
607
  "Frame Mode": "progressive"
580
608
  }
581
609
  };
582
- expect(Filename.render(mocks.tags, mocks.types, asset, options)).toBe(
610
+ expect(Filename.render({ allTags, allTypes, asset, options })).toBe(
583
611
  "TESTPROJECT_FILM-CLIP-INTL_ULTRA-VIOLENCE_1MIN3SEC_ENG_TXTD_PRORES_480p2398"
584
612
  );
585
613
 
586
614
  asset.length = 60;
587
615
 
588
- expect(Filename.render(mocks.tags, mocks.types, asset, options)).toBe(
616
+ expect(Filename.render({ allTags, allTypes, asset, options })).toBe(
589
617
  "TESTPROJECT_FILM-CLIP-INTL_ULTRA-VIOLENCE_1MIN_ENG_TXTD_PRORES_480p2398"
590
618
  );
591
619
 
592
620
  asset.length = 45;
593
621
 
594
- expect(Filename.render(mocks.tags, mocks.types, asset, options)).toBe(
622
+ expect(Filename.render({ allTags, allTypes, asset, options })).toBe(
595
623
  "TESTPROJECT_FILM-CLIP-INTL_ULTRA-VIOLENCE_45SEC_ENG_TXTD_PRORES_480p2398"
596
624
  );
597
625
  });
@@ -617,7 +645,7 @@ describe("Filename", () => {
617
645
  "Frame Mode": "progressive"
618
646
  }
619
647
  };
620
- expect(Filename.render(mocks.tags, mocks.types, asset, options)).toBe(
648
+ expect(Filename.render({ allTags, allTypes, asset, options })).toBe(
621
649
  "TESTPROJECT_ITR-TEST-ASSET-A_ENG_TXTD_H264_1080p2398"
622
650
  );
623
651
  });
@@ -644,7 +672,7 @@ describe("Filename", () => {
644
672
  Codec: "PRORES"
645
673
  }
646
674
  };
647
- expect(Filename.render(mocks.tags, mocks.types, asset, options)).toBe(
675
+ expect(Filename.render({ allTags, allTypes, asset, options })).toBe(
648
676
  "TESTPROJECT_ITR-TEST-ASSET-A_ENG_TXTD_COMING-SOON_HOJE_PRORES_1080p2997"
649
677
  );
650
678
  });
@@ -671,7 +699,7 @@ describe("Filename", () => {
671
699
  Codec: "PRORES"
672
700
  }
673
701
  };
674
- expect(Filename.render(mocks.tags, mocks.types, asset, options)).toBe(
702
+ expect(Filename.render({ allTags, allTypes, asset, options })).toBe(
675
703
  "TESTPROJECT_ITR-TEST-ASSET-A_ENG_TXTD_COMING-SOON_HOJE_PRORES_1080i2997"
676
704
  );
677
705
 
@@ -690,7 +718,7 @@ describe("Filename", () => {
690
718
  }
691
719
  };
692
720
 
693
- expect(Filename.render(mocks.tags, mocks.types, asset, options)).toBe(
721
+ expect(Filename.render({ allTags, allTypes, asset, options })).toBe(
694
722
  "TESTPROJECT_ITR-TEST-ASSET-A_ENG_TXTD_COMING-SOON_HOJE_H264_1080p2997"
695
723
  );
696
724
  });
@@ -717,7 +745,7 @@ describe("Filename", () => {
717
745
  "Frame Mode": "progressive"
718
746
  }
719
747
  };
720
- expect(Filename.render(mocks.tags, mocks.types, asset, options)).toBe(
748
+ expect(Filename.render({ allTags, allTypes, asset, options })).toBe(
721
749
  "TESTPROJECT_TV-SPOT-INTL_TEST-ASSET-INTL-10_ENG_TXTD_COMING-SOON_HOJE_PRORES_480p2398"
722
750
  );
723
751
  });
@@ -747,7 +775,7 @@ describe("Filename", () => {
747
775
  "Frame Mode": "progressive"
748
776
  }
749
777
  };
750
- expect(Filename.render(mocks.tags, mocks.types, asset, options)).toBe(
778
+ expect(Filename.render({ allTags, allTypes, asset, options })).toBe(
751
779
  "TESTPROJECT_TV-SPOT-INTL_TEST-ASSET-INTL-10_ENG_SUB_COMING-SOON_HOJE_PRORES_480p2398"
752
780
  );
753
781
 
@@ -756,7 +784,7 @@ describe("Filename", () => {
756
784
  dub: true
757
785
  });
758
786
 
759
- expect(Filename.render(mocks.tags, mocks.types, asset, options)).toBe(
787
+ expect(Filename.render({ allTags, allTypes, asset, options })).toBe(
760
788
  "TESTPROJECT_TV-SPOT-INTL_TEST-ASSET-INTL-10_ENG_SUB_DUB_COMING-SOON_HOJE_PRORES_480p2398"
761
789
  );
762
790
  });
@@ -23,33 +23,47 @@ describe("Ingest", () => {
23
23
  };
24
24
  let mediainfo = {};
25
25
  let order = new Order();
26
- let ingest = Ingest.assemble(original, filename, mediainfo, order);
26
+ let ingest = Ingest.assemble({ original, filename, mediainfo, order });
27
27
  expect(ingest.selected.download.language).toBe("ENG");
28
28
  expect(ingest.selected.download.country).toBe("US");
29
29
  });
30
- it('should use asset from order when available', () => {
30
+ it("should use asset from filename when there is no context", () => {
31
31
  let original = {
32
32
  context: {}
33
33
  };
34
34
  let filename = {
35
- asset: { _id: "a1b2c3" }
35
+ asset: { _id: "a1b2c3" },
36
36
  };
37
37
  let mediainfo = {};
38
- let order = new Order({ asset: 'z1x2c3' });
39
- let ingest = Ingest.assemble(original, filename, mediainfo, order);
40
- expect(ingest.selected.asset).toBe("z1x2c3");
38
+ let order = new Order();
39
+ let ingest = Ingest.assemble({ original, filename, mediainfo, order });
40
+ expect(ingest.selected.asset).toBe("a1b2c3");
41
41
  });
42
- it("should use asset from filename when there is no context", () => {
42
+ it('should prefer ingest asset data over filename when coming from workrequest', () => {
43
43
  let original = {
44
- context: {}
44
+ asset: {
45
+ slug: 'alpha'
46
+ },
47
+ context: {
48
+ workRequest: "5c90dd39ab0e003b358b456d",
49
+ asset: "5c804776bb65ce2e008b4568",
50
+ assetType: "social",
51
+ project: "5ada6930679eef010c8b45fc",
52
+ group: 1553693108697,
53
+ tag: "FRIDAY"
54
+ }
45
55
  };
46
56
  let filename = {
47
- asset: { _id: "a1b2c3" },
57
+ project: { _id: "a1b2c3" },
58
+ asset: {
59
+ _id: "a1b2c3",
60
+ slug: 'beta'
61
+ }
48
62
  };
49
63
  let mediainfo = {};
50
- let order = new Order();
51
- let ingest = Ingest.assemble(original, filename, mediainfo, order);
52
- expect(ingest.selected.asset).toBe("a1b2c3");
64
+ let order = new Order({ _id: "5c90dd39ab0e003b358b456d" });
65
+ let ingest = Ingest.assemble({ original, filename, mediainfo, order });
66
+ expect(ingest.asset.slug).toEqual('alpha');
53
67
  });
54
68
  it("should use all context when coming from an order", () => {
55
69
  let original = {
@@ -75,7 +89,7 @@ describe("Ingest", () => {
75
89
  };
76
90
  let mediainfo = {};
77
91
  let order = new Order({ _id: "5c90dd39ab0e003b358b456d" });
78
- let ingest = Ingest.assemble(original, filename, mediainfo, order);
92
+ let ingest = Ingest.assemble({ original, filename, mediainfo, order });
79
93
  expect(ingest.selected.download.tags.Extra).toEqual(['FRIDAY']);
80
94
  expect(ingest.selected.project).toBe("5ada6930679eef010c8b45fc");
81
95
  expect(ingest.selected.asset).toBe("5c804776bb65ce2e008b4568");
@@ -98,7 +112,7 @@ describe("Ingest", () => {
98
112
  };
99
113
  let mediainfo = {};
100
114
  let order = new Order();
101
- let ingest = Ingest.assemble(original, filename, mediainfo, order);
115
+ let ingest = Ingest.assemble({ original, filename, mediainfo, order });
102
116
  expect(ingest.selected.preview.revision).toBe("Unfinished");
103
117
  });
104
118
  it("should keep tags from parsed filename when order is empty", () => {
@@ -119,7 +133,7 @@ describe("Ingest", () => {
119
133
  };
120
134
  let mediainfo = {};
121
135
  let order = new Order();
122
- let ingest = Ingest.assemble(original, filename, mediainfo, order);
136
+ let ingest = Ingest.assemble({ original, filename, mediainfo, order });
123
137
  expect(ingest.selected.download.tags).toEqual({
124
138
  Extra: ["coming-soon"],
125
139
  SubDub: { sub: true }
@@ -132,7 +146,7 @@ describe("Ingest", () => {
132
146
  };
133
147
  let mediainfo = {};
134
148
  let order = new Order();
135
- let ingest = Ingest.assemble(original, filename, mediainfo, order);
149
+ let ingest = Ingest.assemble({ original, filename, mediainfo, order });
136
150
  expect(ingest.selected.preview.revision).toBe("Final");
137
151
  });
138
152
  it("should enable preview if file is prores 1080p 23.98/25", () => {
@@ -153,13 +167,13 @@ describe("Ingest", () => {
153
167
  };
154
168
  let order = new Order();
155
169
  let watermarks = [1];
156
- let ingest = Ingest.assemble(
170
+ let ingest = Ingest.assemble({
157
171
  original,
158
172
  filename,
159
173
  mediainfo,
160
174
  order,
161
175
  watermarks
162
- );
176
+ });
163
177
  expect(ingest.selected.preview.enabled).toBe(true);
164
178
  });
165
179
  it("should prefer language and country from order over filename", () => {
@@ -172,7 +186,7 @@ describe("Ingest", () => {
172
186
  territory: "FI",
173
187
  language: "FIN"
174
188
  });
175
- let ingest = Ingest.assemble(original, filename, mediainfo, order);
189
+ let ingest = Ingest.assemble({ original, filename, mediainfo, order });
176
190
  expect(ingest.selected.download.language).toBe("FIN");
177
191
  expect(ingest.selected.download.country).toBe("FI");
178
192
  });
@@ -185,7 +199,7 @@ describe("Ingest", () => {
185
199
  selected: { download: { tags: { Codec: "h264", Aspect: "16:9" } } }
186
200
  };
187
201
  let order = new Order();
188
- let ingest = Ingest.assemble(original, filename, mediainfo, order);
202
+ let ingest = Ingest.assemble({ original, filename, mediainfo, order });
189
203
  expect(ingest.selected.download.tags.Codec).toBe("h264");
190
204
  expect(ingest.selected.download.tags.Aspect).toBe("16:9");
191
205
  });
@@ -197,7 +211,7 @@ describe("Ingest", () => {
197
211
  isSub: jest.fn().mockReturnValue(true),
198
212
  isDub: jest.fn().mockReturnValue(null)
199
213
  };
200
- let ingest = Ingest.assemble(original, filename, mediainfo, order);
214
+ let ingest = Ingest.assemble({ original, filename, mediainfo, order });
201
215
  expect(ingest.selected.preview.type).toBe("sub");
202
216
  });
203
217
  it("should set preview.type=dub if order.isDub", () => {
@@ -208,7 +222,7 @@ describe("Ingest", () => {
208
222
  isSub: jest.fn().mockReturnValue(null),
209
223
  isDub: jest.fn().mockReturnValue(true)
210
224
  };
211
- let ingest = Ingest.assemble(original, filename, mediainfo, order);
225
+ let ingest = Ingest.assemble({ original, filename, mediainfo, order });
212
226
  expect(ingest.selected.preview.type).toBe("dub");
213
227
  });
214
228
  it("should set preview.type=both if order.isDub and order.isDub", () => {
@@ -219,7 +233,7 @@ describe("Ingest", () => {
219
233
  isSub: jest.fn().mockReturnValue(true),
220
234
  isDub: jest.fn().mockReturnValue(true)
221
235
  };
222
- let ingest = Ingest.assemble(original, filename, mediainfo, order);
236
+ let ingest = Ingest.assemble({ original, filename, mediainfo, order });
223
237
  expect(ingest.selected.preview.type).toBe("both");
224
238
  });
225
239
  it("should retain Extra tags from order over filename", () => {
@@ -236,7 +250,7 @@ describe("Ingest", () => {
236
250
  isSub: jest.fn().mockReturnValue(true),
237
251
  isDub: jest.fn().mockReturnValue(true)
238
252
  };
239
- let ingest = Ingest.assemble(original, filename, mediainfo, order);
253
+ let ingest = Ingest.assemble({ original, filename, mediainfo, order });
240
254
  expect(ingest.selected.download.tags.Extra).toEqual(["coming-soon"]);
241
255
  });
242
256
  });