@pixwel/pixwel-sdk 1.1.11 → 2.1.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.
Files changed (47) hide show
  1. package/.babelrc +2 -1
  2. package/README.md +60 -0
  3. package/coverage/clover.xml +375 -226
  4. package/coverage/coverage-final.json +11 -5
  5. package/coverage/lcov-report/Ass.js.html +1 -1
  6. package/coverage/lcov-report/Asset.js.html +4 -4
  7. package/coverage/lcov-report/AssetType.js.html +98 -0
  8. package/coverage/lcov-report/Encode.js.html +98 -0
  9. package/coverage/lcov-report/File.js.html +98 -0
  10. package/coverage/lcov-report/Filename.js.html +11 -719
  11. package/coverage/lcov-report/Ingest.js.html +1240 -280
  12. package/coverage/lcov-report/IngestFile.js.html +5 -5
  13. package/coverage/lcov-report/Model.js.html +821 -0
  14. package/coverage/lcov-report/Order.js.html +25 -25
  15. package/coverage/lcov-report/Srt.js.html +1 -1
  16. package/coverage/lcov-report/Sub.js.html +1 -1
  17. package/coverage/lcov-report/Tag.js.html +98 -0
  18. package/coverage/lcov-report/TimeFormat.js.html +1 -1
  19. package/coverage/lcov-report/fileType.js.html +188 -0
  20. package/coverage/lcov-report/index.html +114 -36
  21. package/coverage/lcov.info +787 -474
  22. package/dist/index.js +74 -22
  23. package/dist/src/Asset.js +10 -5
  24. package/dist/src/AssetType.js +54 -0
  25. package/dist/src/Encode.js +54 -0
  26. package/dist/src/File.js +54 -0
  27. package/dist/src/Filename.js +7 -222
  28. package/dist/src/Ingest.js +370 -35
  29. package/dist/src/IngestFile.js +6 -2
  30. package/dist/src/Model.js +569 -0
  31. package/dist/src/Order.js +20 -9
  32. package/dist/src/Srt.js +5 -1
  33. package/dist/src/Tag.js +54 -0
  34. package/dist/src/fileType.js +43 -0
  35. package/index.js +14 -0
  36. package/package.json +9 -3
  37. package/src/AssetType.js +11 -0
  38. package/src/Encode.js +11 -0
  39. package/src/File.js +11 -0
  40. package/src/Filename.js +0 -236
  41. package/src/Ingest.js +350 -30
  42. package/src/Model.js +252 -0
  43. package/src/Tag.js +11 -0
  44. package/src/fileType.js +41 -0
  45. package/test/Filename.spec.js +9 -685
  46. package/test/Ingest.spec.js +1107 -152
  47. package/test/Model.spec.js +328 -0
@@ -1,181 +1,11 @@
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
- it("renders tags as an underscore-separated string", function() {
7
- let asset = {
8
- name: "Test Asset A",
9
- slug: "test-asset-a",
10
- type: "trailer.intl",
11
- mediaType: "video",
12
- project: {
13
- filePrefix: "TESTPROJECT"
14
- }
15
- };
16
- let options = {
17
- language: "ENG",
18
- country: "WW",
19
- tags: {
20
- Text: "txtd",
21
- Extra: ["COMING-SOON", "HOJE"],
22
- Codec: "PRORES",
23
- Resolution: "640x480",
24
- Framerate: "23.98",
25
- "Frame Mode": "progressive"
26
- }
27
- };
28
- expect(Filename.render(mocks.tags, mocks.types, asset, options)).toBe(
29
- "TESTPROJECT_ITR-TEST-ASSET-A_ENG_TXTD_COMING-SOON_HOJE_PRORES_480p2398"
30
- );
31
- });
32
-
33
- it("renders language and country", function() {
34
- let asset = {
35
- name: "Test Asset A",
36
- slug: "test-asset-a",
37
- type: "trailer.intl",
38
- mediaType: "video",
39
- project: {
40
- filePrefix: "TESTPROJECT"
41
- }
42
- };
43
- let options = {
44
- language: "ENG",
45
- country: "US",
46
- tags: {
47
- Text: "txtd",
48
- Extra: ["COMING-SOON", "HOJE"],
49
- Codec: "PRORES",
50
- Resolution: "640x480",
51
- Framerate: "23.98",
52
- "Frame Mode": "progressive"
53
- }
54
- };
55
- expect(Filename.render(mocks.tags, mocks.types, asset, options)).toBe(
56
- "TESTPROJECT_ITR-TEST-ASSET-A_ENG-US_TXTD_COMING-SOON_HOJE_PRORES_480p2398"
57
- );
58
- });
59
-
60
- it("renders language only for dual-language codes", function () {
61
- let asset = {
62
- name: "Test Asset A",
63
- slug: "test-asset-a",
64
- type: "trailer.intl",
65
- mediaType: "video",
66
- project: {
67
- filePrefix: "TESTPROJECT"
68
- }
69
- };
70
- let options = {
71
- language: "PFR-FLE",
72
- country: "US",
73
- tags: {
74
- Text: "txtd",
75
- Extra: ["COMING-SOON", "HOJE"],
76
- Codec: "PRORES",
77
- Resolution: "640x480",
78
- Framerate: "23.98",
79
- "Frame Mode": "progressive"
80
- }
81
- };
82
- expect(Filename.render(mocks.tags, mocks.types, asset, options)).toBe(
83
- "TESTPROJECT_ITR-TEST-ASSET-A_PFR-FLE_TXTD_COMING-SOON_HOJE_PRORES_480p2398"
84
- );
85
- });
86
-
87
- it("displays resolution for images", function() {
88
- let asset = {
89
- name: "Test Asset A",
90
- slug: "test-asset-a",
91
- type: "trailer.intl",
92
- mediaType: "video",
93
- project: {
94
- filePrefix: "TESTPROJECT"
95
- }
96
- };
97
- let options = {
98
- language: "ENG",
99
- country: "WW",
100
- tags: {
101
- Text: "txtd",
102
- Resolution: "640x480"
103
- }
104
- };
105
- expect(
106
- Filename.render(mocks.tags, mocks.types, asset, options, "image")
107
- ).toBe("TESTPROJECT_ITR-TEST-ASSET-A_ENG_TXTD_640x480");
108
- });
109
-
110
- it("renders asset names with contractions correctly", function() {
111
- let asset = {
112
- name: "Can't Int'l 10",
113
- slug: "cant-intl-10",
114
- type: "trailer.intl",
115
- mediaType: "video",
116
- project: {
117
- filePrefix: "TESTPROJECT"
118
- }
119
- };
120
- let options = {
121
- language: "ENG",
122
- tags: {
123
- Text: "txtd",
124
- Codec: "prores",
125
- Resolution: "640x480",
126
- Framerate: "23.98",
127
- "Frame Mode": "progressive"
128
- }
129
- };
130
- expect(Filename.render(mocks.tags, mocks.types, asset, options)).toBe(
131
- "TESTPROJECT_ITR-CANT-INTL-10_ENG_TXTD_PRORES_480p2398"
132
- );
133
- });
134
-
135
- it("renders version", function() {
136
- let asset = {
137
- name: "Test Asset A",
138
- slug: "test-asset-a",
139
- type: "trailer.intl",
140
- mediaType: "video",
141
- project: {
142
- filePrefix: "TESTPROJECT"
143
- }
144
- };
145
- let options = {
146
- version: "rev",
147
- language: "ENG",
148
- tags: {
149
- Text: "txtd",
150
- Codec: "prores",
151
- Resolution: "640x480",
152
- Framerate: "23.98",
153
- "Frame Mode": "progressive"
154
- }
155
- };
156
- expect(Filename.render(mocks.tags, mocks.types, asset, options)).toBe(
157
- "TESTPROJECT_ITR-TEST-ASSET-A_ENG_TXTD_REV_PRORES_480p2398"
158
- );
159
- });
160
-
161
- it("throws exception if missing asset.project", function() {
162
- let asset = {
163
- name: "Test Asset A",
164
- slug: "test-asset-a",
165
- type: "trailer.intl",
166
- mediaType: "video"
167
- // project: {
168
- // filePrefix: 'TESTPROJECT'
169
- // }
170
- };
171
- let options = {
172
- language: "ENG"
173
- };
174
- expect(() => {
175
- Filename.render(mocks.tags, mocks.types, asset, options);
176
- }).toThrow("missing asset.project");
177
- });
178
-
179
9
  xit("throws exception if missing asset.length (film-clip)", function() {
180
10
  let asset = {
181
11
  name: "Test Asset A",
@@ -193,7 +23,7 @@ describe("Filename", () => {
193
23
  }
194
24
  };
195
25
  expect(() => {
196
- Filename.render(mocks.tags, mocks.types, asset, options);
26
+ Filename.render({ allTags, allTypes, asset, options });
197
27
  }).toThrow("missing asset.length");
198
28
  });
199
29
 
@@ -221,7 +51,7 @@ describe("Filename", () => {
221
51
  // }
222
52
  // };
223
53
  // expect(() => {
224
- // Filename.render(mocks.tags, mocks.types, asset, options)
54
+ // Filename.render({ allTags, allTypes, asset, options })
225
55
  // }).toThrow('conflicting options supplied: SubDub and Text');
226
56
  // });
227
57
 
@@ -246,519 +76,13 @@ describe("Filename", () => {
246
76
  // }
247
77
  // };
248
78
  // expect(() => {
249
- // Filename.render(mocks.tags, mocks.types, asset, options);
79
+ // Filename.render({ allTags, allTypes, asset, options });
250
80
  // }).toThrow("missing options.tags.Codec");
251
81
  // });
82
+
252
83
 
253
- it("throws exception if missing Resolution", function() {
254
- let asset = {
255
- name: "Test Asset A",
256
- slug: "test-asset-a",
257
- type: "trailer.intl",
258
- mediaType: "video",
259
- project: {
260
- filePrefix: "TESTPROJECT"
261
- }
262
- };
263
- let options = {
264
- language: "ENG",
265
- tags: {
266
- Codec: "prores",
267
- Text: "txtd",
268
- // Resolution: '640x480',
269
- Framerate: "23.98",
270
- "Frame Mode": "progressive"
271
- }
272
- };
273
- expect(() => {
274
- Filename.render(mocks.tags, mocks.types, asset, options, "video");
275
- }).toThrow("missing options.tags.Resolution");
276
- });
277
-
278
- it("throws exception if missing Framerate", function() {
279
- let asset = {
280
- name: "Test Asset A",
281
- slug: "test-asset-a",
282
- type: "trailer.intl",
283
- mediaType: "video",
284
- project: {
285
- filePrefix: "TESTPROJECT"
286
- }
287
- };
288
- let options = {
289
- language: "ENG",
290
- tags: {
291
- Codec: "prores",
292
- Text: "txtd",
293
- Resolution: "640x480",
294
- // Framerate: '23.98',
295
- "Frame Mode": "progressive"
296
- }
297
- };
298
- expect(() => {
299
- Filename.render(mocks.tags, mocks.types, asset, options, "video");
300
- }).toThrow("missing options.tags.Framerate");
301
- });
302
-
303
- it("throws exception if missing Frame Mode", function() {
304
- let asset = {
305
- name: "Test Asset A",
306
- slug: "test-asset-a",
307
- type: "trailer.intl",
308
- mediaType: "video",
309
- project: {
310
- filePrefix: "TESTPROJECT"
311
- }
312
- };
313
- let options = {
314
- language: "ENG",
315
- tags: {
316
- Codec: "prores",
317
- Text: "txtd",
318
- Resolution: "640x480",
319
- Framerate: "23.98"
320
- // "Frame Mode": 'progressive'
321
- }
322
- };
323
- expect(() => {
324
- Filename.render(mocks.tags, mocks.types, asset, options, "video");
325
- }).toThrow("missing options.tags[Frame Mode]");
326
- });
327
-
328
- xit("throws exception if missing asset.length (featurette)", function() {
329
- let asset = {
330
- name: "Test Asset A",
331
- slug: "test-asset-a",
332
- type: "featurette",
333
- mediaType: "video",
334
- project: {
335
- filePrefix: "TESTPROJECT"
336
- }
337
- };
338
- let options = {
339
- language: "ENG",
340
- tags: {
341
- Text: "txtd"
342
- }
343
- };
344
- expect(() => {
345
- Filename.render(mocks.tags, mocks.types, asset, options);
346
- }).toThrow("missing asset.length");
347
- });
348
-
349
- it("throws exception if missing asset.project.filePrefix", function() {
350
- let asset = {
351
- name: "Test Asset A",
352
- slug: "test-asset-a",
353
- type: "trailer.intl",
354
- project: {
355
- // filePrefix: 'TESTPROJECT'
356
- }
357
- };
358
- let options = {
359
- language: "ENG"
360
- };
361
- expect(() => {
362
- Filename.render(mocks.tags, mocks.types, asset, options);
363
- }).toThrow("missing asset.project.filePrefix");
364
- });
365
-
366
- it("throws exception if missing asset.name", function() {
367
- let asset = {
368
- // name: 'Test Asset A',
369
- slug: "test-asset-a",
370
- type: "trailer.intl",
371
- project: {
372
- filePrefix: "TESTPROJECT"
373
- }
374
- };
375
- let options = {
376
- language: "ENG"
377
- };
378
- expect(() => {
379
- Filename.render(mocks.tags, mocks.types, asset, options);
380
- }).toThrow("missing asset.name");
381
- });
382
-
383
- it("throws exception if missing asset.type", function() {
384
- let asset = {
385
- name: "Test Asset A",
386
- slug: "test-asset-a",
387
- // type: 'trailer.intl',
388
- project: {
389
- filePrefix: "TESTPROJECT"
390
- }
391
- };
392
- let options = {
393
- language: "ENG"
394
- };
395
- expect(() => {
396
- Filename.render(mocks.tags, mocks.types, asset, options);
397
- }).toThrow("missing asset.type");
398
- });
399
-
400
- it("throws exception if missing options.language", function() {
401
- let asset = {
402
- name: "Test Asset A",
403
- slug: "test-asset-a",
404
- type: "trailer.intl",
405
- mediaType: "video",
406
- project: {
407
- filePrefix: "TESTPROJECT"
408
- }
409
- };
410
- expect(() => {
411
- Filename.render(mocks.tags, mocks.types, asset);
412
- }).toThrow("missing options.language");
413
- });
84
+
414
85
 
415
- it("throws exception if missing options.tags.Text", function() {
416
- let asset = {
417
- name: "Test Asset A",
418
- slug: "test-asset-a",
419
- type: "trailer.intl",
420
- mediaType: "video",
421
- project: {
422
- filePrefix: "TESTPROJECT"
423
- }
424
- };
425
- let options = {
426
- tags: {
427
- Text: ""
428
- }
429
- };
430
- expect(() => {
431
- Filename.render(mocks.tags, mocks.types, asset);
432
- }).toThrow("missing options.language");
433
- });
434
-
435
- it("renders country and territory", function() {
436
- let asset = {
437
- name: "Test Asset A",
438
- slug: "test-asset-a",
439
- type: "trailer.intl",
440
- mediaType: "video",
441
- project: {
442
- filePrefix: "TESTPROJECT"
443
- }
444
- };
445
- let options = {
446
- language: "ENG",
447
- country: "US",
448
- tags: {
449
- Text: "txtd",
450
- Codec: "prores",
451
- Resolution: "640x480",
452
- Framerate: "23.98",
453
- "Frame Mode": "progressive"
454
- }
455
- };
456
- expect(Filename.render(mocks.tags, mocks.types, asset, options)).toBe(
457
- "TESTPROJECT_ITR-TEST-ASSET-A_ENG-US_TXTD_PRORES_480p2398"
458
- );
459
- });
460
-
461
- it("renders domestic trailer type with custom name", function() {
462
- let asset = {
463
- name: "Test Asset A",
464
- slug: "test-asset-a",
465
- type: "trailer.us",
466
- mediaType: "video",
467
- project: {
468
- filePrefix: "TESTPROJECT"
469
- }
470
- };
471
- let options = {
472
- language: "ENG",
473
- tags: {
474
- Text: "txtd",
475
- Codec: "prores",
476
- Resolution: "640x480",
477
- Framerate: "23.98",
478
- "Frame Mode": "progressive"
479
- }
480
- };
481
- expect(Filename.render(mocks.tags, mocks.types, asset, options)).toBe(
482
- "TESTPROJECT_DTR-TEST-ASSET-A_ENG_TXTD_PRORES_480p2398"
483
- );
484
- });
485
-
486
- it("renders generic trailer type", function() {
487
- let asset = {
488
- name: "Generic Trailer",
489
- slug: "generic-trailer",
490
- type: "trailer",
491
- mediaType: "video",
492
- project: {
493
- filePrefix: "TESTPROJECT"
494
- }
495
- };
496
- let options = {
497
- language: "ENG",
498
- tags: {
499
- Text: "txtd",
500
- Codec: "prores",
501
- Resolution: "640x480",
502
- Framerate: "23.98",
503
- "Frame Mode": "progressive"
504
- }
505
- };
506
- expect(Filename.render(mocks.tags, mocks.types, asset, options)).toBe(
507
- "TESTPROJECT_TR-GENERIC-TRAILER_ENG_TXTD_PRORES_480p2398"
508
- );
509
- });
510
-
511
- it("renders non-trailer types", function() {
512
- let asset = {
513
- name: "Cool Spot 15",
514
- slug: "cool-spot-15",
515
- type: "tv-spot.intl",
516
- mediaType: "video",
517
- project: {
518
- filePrefix: "TESTPROJECT"
519
- }
520
- };
521
- let options = {
522
- language: "ENG",
523
- tags: {
524
- Text: "txtd",
525
- Codec: "prores",
526
- Resolution: "640x480",
527
- Framerate: "23.98",
528
- "Frame Mode": "progressive"
529
- }
530
- };
531
- expect(Filename.render(mocks.tags, mocks.types, asset, options)).toBe(
532
- "TESTPROJECT_TV-SPOT-INTL_COOL-SPOT-15_ENG_TXTD_PRORES_480p2398"
533
- );
534
- });
535
-
536
- it("throws an error if asset type does not exist", function() {
537
- let asset = {
538
- name: "Cool Spot 15",
539
- slug: "cool-spot-15",
540
- type: "doesnt-exist",
541
- mediaType: "video",
542
- project: {
543
- filePrefix: "TESTPROJECT"
544
- }
545
- };
546
- let options = {
547
- language: "ENG",
548
- tags: {
549
- Text: "txtd",
550
- Codec: "prores",
551
- Resolution: "640x480",
552
- Framerate: "23.98",
553
- "Frame Mode": "progressive"
554
- }
555
- };
556
- expect(function() {
557
- Filename.render(mocks.tags, mocks.types, asset, options);
558
- }).toThrow('Asset type "doesnt-exist" could not be found');
559
- });
560
-
561
- it("contains running time from film clips", function() {
562
- let asset = {
563
- name: "Ultra Violence",
564
- slug: "ultra-violence",
565
- type: "film-clip.intl",
566
- length: 63,
567
- mediaType: "video",
568
- project: {
569
- filePrefix: "TESTPROJECT"
570
- }
571
- };
572
- let options = {
573
- language: "ENG",
574
- tags: {
575
- Text: "txtd",
576
- Codec: "prores",
577
- Resolution: "640x480",
578
- Framerate: "23.98",
579
- "Frame Mode": "progressive"
580
- }
581
- };
582
- expect(Filename.render(mocks.tags, mocks.types, asset, options)).toBe(
583
- "TESTPROJECT_FILM-CLIP-INTL_ULTRA-VIOLENCE_1MIN3SEC_ENG_TXTD_PRORES_480p2398"
584
- );
585
-
586
- asset.length = 60;
587
-
588
- expect(Filename.render(mocks.tags, mocks.types, asset, options)).toBe(
589
- "TESTPROJECT_FILM-CLIP-INTL_ULTRA-VIOLENCE_1MIN_ENG_TXTD_PRORES_480p2398"
590
- );
591
-
592
- asset.length = 45;
593
-
594
- expect(Filename.render(mocks.tags, mocks.types, asset, options)).toBe(
595
- "TESTPROJECT_FILM-CLIP-INTL_ULTRA-VIOLENCE_45SEC_ENG_TXTD_PRORES_480p2398"
596
- );
597
- });
598
-
599
- it("renders `set` tags when all tags in `set` are specified but retains `codec`", function() {
600
- let asset = {
601
- name: "Test Asset A",
602
- slug: "test-asset-a",
603
- type: "trailer.intl",
604
- mediaType: "video",
605
- project: {
606
- filePrefix: "TESTPROJECT"
607
- }
608
- };
609
- let options = {
610
- language: "ENG",
611
- tags: {
612
- Codec: "h264",
613
- Resolution: "1920x1080",
614
- Usage: "online",
615
- Text: "txtd",
616
- Framerate: "23.98",
617
- "Frame Mode": "progressive"
618
- }
619
- };
620
- expect(Filename.render(mocks.tags, mocks.types, asset, options)).toBe(
621
- "TESTPROJECT_ITR-TEST-ASSET-A_ENG_TXTD_H264_1080p2398"
622
- );
623
- });
624
-
625
- it("includes `Frame mode` and `Framerate`", function() {
626
- let asset = {
627
- name: "Test Asset A",
628
- slug: "test-asset-a",
629
- type: "trailer.intl",
630
- mediaType: "video",
631
- project: {
632
- filePrefix: "TESTPROJECT"
633
- }
634
- };
635
- let options = {
636
- language: "ENG",
637
- country: "WW",
638
- tags: {
639
- Resolution: "1920x1080",
640
- "Frame Mode": "progressive",
641
- Framerate: "29.97",
642
- Text: "txtd",
643
- Extra: ["COMING-SOON", "HOJE"],
644
- Codec: "PRORES"
645
- }
646
- };
647
- expect(Filename.render(mocks.tags, mocks.types, asset, options)).toBe(
648
- "TESTPROJECT_ITR-TEST-ASSET-A_ENG_TXTD_COMING-SOON_HOJE_PRORES_1080p2997"
649
- );
650
- });
651
-
652
- it("does not redundantly include tag info", function() {
653
- let asset = {
654
- name: "Test Asset A",
655
- slug: "test-asset-a",
656
- type: "trailer.intl",
657
- mediaType: "video",
658
- project: {
659
- filePrefix: "TESTPROJECT"
660
- }
661
- };
662
- let options = {
663
- language: "ENG",
664
- country: "WW",
665
- tags: {
666
- Resolution: "1080i",
667
- "Frame Mode": "progressive",
668
- Framerate: "29.97",
669
- Text: "txtd",
670
- Extra: ["COMING-SOON", "HOJE"],
671
- Codec: "PRORES"
672
- }
673
- };
674
- expect(Filename.render(mocks.tags, mocks.types, asset, options)).toBe(
675
- "TESTPROJECT_ITR-TEST-ASSET-A_ENG_TXTD_COMING-SOON_HOJE_PRORES_1080i2997"
676
- );
677
-
678
- options = {
679
- language: "ENG",
680
- country: "WW",
681
- tags: {
682
- Usage: "online",
683
- Aspect: "16:9",
684
- Codec: "h264",
685
- Resolution: "1920x1080",
686
- "Frame Mode": "progressive",
687
- Framerate: "29.97",
688
- Text: "txtd",
689
- Extra: ["COMING-SOON", "HOJE"]
690
- }
691
- };
692
-
693
- expect(Filename.render(mocks.tags, mocks.types, asset, options)).toBe(
694
- "TESTPROJECT_ITR-TEST-ASSET-A_ENG_TXTD_COMING-SOON_HOJE_H264_1080p2997"
695
- );
696
- });
697
-
698
- it("converts asset names containing `int'l` to `intl`", function() {
699
- let asset = {
700
- type: "tv-spot.intl",
701
- name: "Test Asset Int'l 10",
702
- slug: "test-asset-intl-10",
703
- mediaType: "video",
704
- project: {
705
- filePrefix: "TESTPROJECT"
706
- }
707
- };
708
- let options = {
709
- language: "ENG",
710
- country: "WW",
711
- tags: {
712
- Text: "txtd",
713
- Extra: ["COMING-SOON", "HOJE"],
714
- Codec: "prores",
715
- Resolution: "640x480",
716
- Framerate: "23.98",
717
- "Frame Mode": "progressive"
718
- }
719
- };
720
- expect(Filename.render(mocks.tags, mocks.types, asset, options)).toBe(
721
- "TESTPROJECT_TV-SPOT-INTL_TEST-ASSET-INTL-10_ENG_TXTD_COMING-SOON_HOJE_PRORES_480p2398"
722
- );
723
- });
724
-
725
- it("renders sub and dub tags", function() {
726
- let asset = {
727
- type: "tv-spot.intl",
728
- name: "Test Asset Int'l 10",
729
- slug: "test-asset-int-l-10",
730
- mediaType: "video",
731
- project: {
732
- filePrefix: "TESTPROJECT"
733
- }
734
- };
735
- let options = {
736
- language: "ENG",
737
- country: "WW",
738
- tags: {
739
- SubDub: {
740
- sub: true,
741
- dub: false
742
- },
743
- Extra: ["COMING-SOON", "HOJE"],
744
- Codec: "PRORES",
745
- Resolution: "640x480",
746
- Framerate: "23.98",
747
- "Frame Mode": "progressive"
748
- }
749
- };
750
- expect(Filename.render(mocks.tags, mocks.types, asset, options)).toBe(
751
- "TESTPROJECT_TV-SPOT-INTL_TEST-ASSET-INTL-10_ENG_SUB_COMING-SOON_HOJE_PRORES_480p2398"
752
- );
753
-
754
- Object.assign(options.tags.SubDub, {
755
- sub: true,
756
- dub: true
757
- });
758
-
759
- expect(Filename.render(mocks.tags, mocks.types, asset, options)).toBe(
760
- "TESTPROJECT_TV-SPOT-INTL_TEST-ASSET-INTL-10_ENG_SUB_DUB_COMING-SOON_HOJE_PRORES_480p2398"
761
- );
762
- });
86
+
763
87
  });
764
88
  });