@applicaster/zapp-react-native-utils
Version:
Applicaster Zapp React Native utilities package
35 lines (28 loc) • 1.05 kB
text/typescript
import * as R from "ramda";
import { imageSrcFromMediaItem } from "../";
import { entry } from "./testEntry";
describe("imageSrcFromMediaItem", () => {
it("when the matching key is found and the src is not empty", () => {
const result = imageSrcFromMediaItem(entry as ZappEntry, [
"logo_thumbnail",
]);
expect(result).toEqual(entry.media_group[1].media_item[0].src);
expect(result).not.toEqual("");
});
it("returns a media item with the 'image_base' key as a fallback", () => {
const result = imageSrcFromMediaItem(entry as ZappEntry, [
"does_not_exist",
]);
const fallback = entry.media_group[0].media_item[0];
expect(result).toEqual(fallback.src);
expect(fallback.key).toBe("image_base");
});
it("returns undefined if the key was found but the source was empty", () => {
const badEntry: ZappEntry = R.set(
R.lensPath(["media_group", 0, "media_item", 0, "src"]),
"",
entry
);
expect(imageSrcFromMediaItem(badEntry, ["image_base"])).toBeUndefined();
});
});