|
9 | 9 | deduplicateItems, |
10 | 10 | getFormattedExclude, |
11 | 11 | getFormattedTriggerData, |
| 12 | + mergeAndDedupeArrays, |
12 | 13 | mergeDateRangeParams, |
13 | | - mergeExcludeArrays, |
14 | 14 | sortItems, |
15 | 15 | } from "../../../src/clients/feed/utils"; |
16 | 16 |
|
@@ -521,77 +521,45 @@ describe("feed utils", () => { |
521 | 521 | }); |
522 | 522 | }); |
523 | 523 |
|
524 | | - describe("mergeExcludeArrays", () => { |
| 524 | + describe("mergeAndDedupeArrays", () => { |
525 | 525 | test("returns undefined when both arrays are undefined", () => { |
526 | | - const result = mergeExcludeArrays(undefined, undefined); |
| 526 | + const result = mergeAndDedupeArrays(undefined, undefined); |
527 | 527 | expect(result).toBeUndefined(); |
528 | 528 | }); |
529 | 529 |
|
530 | 530 | test("returns undefined when both arrays are empty", () => { |
531 | | - const result = mergeExcludeArrays([], []); |
| 531 | + const result = mergeAndDedupeArrays([], []); |
532 | 532 | expect(result).toBeUndefined(); |
533 | 533 | }); |
534 | 534 |
|
535 | | - test("returns default exclude when options exclude is undefined", () => { |
536 | | - const result = mergeExcludeArrays(["entries.archived_at"], undefined); |
537 | | - expect(result).toEqual(["entries.archived_at"]); |
| 535 | + test("returns first array when second is undefined", () => { |
| 536 | + const result = mergeAndDedupeArrays(["a", "b"], undefined); |
| 537 | + expect(result).toEqual(["a", "b"]); |
538 | 538 | }); |
539 | 539 |
|
540 | | - test("returns default exclude when options exclude is empty", () => { |
541 | | - const result = mergeExcludeArrays(["entries.archived_at"], []); |
542 | | - expect(result).toEqual(["entries.archived_at"]); |
| 540 | + test("returns first array when second is empty", () => { |
| 541 | + const result = mergeAndDedupeArrays(["a", "b"], []); |
| 542 | + expect(result).toEqual(["a", "b"]); |
543 | 543 | }); |
544 | 544 |
|
545 | | - test("returns options exclude when default exclude is undefined", () => { |
546 | | - const result = mergeExcludeArrays(undefined, ["meta"]); |
547 | | - expect(result).toEqual(["meta"]); |
| 545 | + test("returns second array when first is undefined", () => { |
| 546 | + const result = mergeAndDedupeArrays(undefined, ["c", "d"]); |
| 547 | + expect(result).toEqual(["c", "d"]); |
548 | 548 | }); |
549 | 549 |
|
550 | | - test("returns options exclude when default exclude is empty", () => { |
551 | | - const result = mergeExcludeArrays([], ["meta"]); |
552 | | - expect(result).toEqual(["meta"]); |
| 550 | + test("returns second array when first is empty", () => { |
| 551 | + const result = mergeAndDedupeArrays([], ["c", "d"]); |
| 552 | + expect(result).toEqual(["c", "d"]); |
553 | 553 | }); |
554 | 554 |
|
555 | | - test("merges both exclude arrays", () => { |
556 | | - const result = mergeExcludeArrays(["entries.archived_at"], ["meta"]); |
557 | | - expect(result).toEqual(["entries.archived_at", "meta"]); |
558 | | - }); |
559 | | - |
560 | | - test("merges multiple fields from both arrays", () => { |
561 | | - const result = mergeExcludeArrays( |
562 | | - ["entries.archived_at", "entries.data"], |
563 | | - ["meta", "entries.blocks"], |
564 | | - ); |
565 | | - expect(result).toEqual([ |
566 | | - "entries.archived_at", |
567 | | - "entries.data", |
568 | | - "meta", |
569 | | - "entries.blocks", |
570 | | - ]); |
| 555 | + test("merges both arrays", () => { |
| 556 | + const result = mergeAndDedupeArrays(["a", "b"], ["c", "d"]); |
| 557 | + expect(result).toEqual(["a", "b", "c", "d"]); |
571 | 558 | }); |
572 | 559 |
|
573 | 560 | test("deduplicates merged arrays", () => { |
574 | | - const result = mergeExcludeArrays( |
575 | | - ["entries.archived_at", "meta"], |
576 | | - ["meta", "entries.data"], |
577 | | - ); |
578 | | - expect(result).toEqual(["entries.archived_at", "meta", "entries.data"]); |
579 | | - }); |
580 | | - |
581 | | - test("handles duplicate values in default exclude", () => { |
582 | | - const result = mergeExcludeArrays( |
583 | | - ["entries.archived_at", "entries.archived_at"], |
584 | | - ["meta"], |
585 | | - ); |
586 | | - expect(result).toEqual(["entries.archived_at", "meta"]); |
587 | | - }); |
588 | | - |
589 | | - test("handles duplicate values in options exclude", () => { |
590 | | - const result = mergeExcludeArrays( |
591 | | - ["entries.archived_at"], |
592 | | - ["meta", "meta"], |
593 | | - ); |
594 | | - expect(result).toEqual(["entries.archived_at", "meta"]); |
| 561 | + const result = mergeAndDedupeArrays(["a", "b"], ["b", "c"]); |
| 562 | + expect(result).toEqual(["a", "b", "c"]); |
595 | 563 | }); |
596 | 564 | }); |
597 | 565 | }); |
0 commit comments