mirror of
https://github.com/jakejarvis/sofa.git
synced 2026-10-15 22:55:42 -04:00
37 lines
1.1 KiB
TypeScript
37 lines
1.1 KiB
TypeScript
import { describe, expect, test } from "vitest";
|
|
|
|
import { clampTotalPages, tmdbSortBy } from "../src/orpc/procedures/discover-utils";
|
|
|
|
describe("clampTotalPages", () => {
|
|
test("defaults to 1 when undefined", () => {
|
|
expect(clampTotalPages(undefined)).toBe(1);
|
|
});
|
|
|
|
test("passes through values under the cap", () => {
|
|
expect(clampTotalPages(42)).toBe(42);
|
|
});
|
|
|
|
test("caps at 500", () => {
|
|
expect(clampTotalPages(1234)).toBe(500);
|
|
});
|
|
});
|
|
|
|
describe("tmdbSortBy", () => {
|
|
test("maps TV date sorts to first_air_date", () => {
|
|
expect(tmdbSortBy("tv", "primary_release_date.desc")).toBe("first_air_date.desc");
|
|
expect(tmdbSortBy("tv", "primary_release_date.asc")).toBe("first_air_date.asc");
|
|
});
|
|
|
|
test("leaves movie date sorts unchanged", () => {
|
|
expect(tmdbSortBy("movie", "primary_release_date.desc")).toBe("primary_release_date.desc");
|
|
});
|
|
|
|
test("defaults to popularity.desc", () => {
|
|
expect(tmdbSortBy("tv", undefined)).toBe("popularity.desc");
|
|
});
|
|
|
|
test("leaves other TV sorts unchanged", () => {
|
|
expect(tmdbSortBy("tv", "vote_average.desc")).toBe("vote_average.desc");
|
|
});
|
|
});
|