UNPKG

@applicaster/zapp-react-native-utils

Version:

Applicaster Zapp React Native utilities package

66 lines (57 loc) 1.76 kB
import { getMediaItems } from ".."; import { entry as baseEntry } from "./testEntry"; describe("getMediaItems", () => { it("returns both image and thumbnail media items", () => { const items = getMediaItems(baseEntry); expect(items).toHaveLength(2); expect(items[0].key).toBe("image_base"); expect(items[1].key).toBe("logo_thumbnail"); }); it("returns only image media items if no thumbnail present", () => { const entry = { ...baseEntry, media_group: [ { type: "image", media_item: [ { key: "image_base", src: "img.png" }, { key: "other", src: "other.png" }, ], }, ], }; const items = getMediaItems(entry); expect(items).toHaveLength(2); expect(items[0].key).toBe("image_base"); expect(items[1].key).toBe("other"); }); it("returns only thumbnail media items if no image present", () => { const entry = { ...baseEntry, media_group: [ { type: "thumbnail", media_item: [{ key: "thumb1", src: "thumb1.png" }], }, ], }; const items = getMediaItems(entry); expect(items).toHaveLength(1); expect(items[0].key).toBe("thumb1"); }); it("returns undefined if no media_group present", () => { const entry = { ...baseEntry }; delete entry.media_group; expect(getMediaItems(entry)).toBeUndefined(); }); it("returns undefined if media_group is present but has no image or thumbnail", () => { const entry = { ...baseEntry, media_group: [ { type: "audio", media_item: [{ key: "audio1", src: "audio1.mp3" }] }, ], }; const items = getMediaItems(entry); expect(items).toBeUndefined(); }); });