mirror of
https://github.com/stefanpejcic/openpanel
synced 2025-06-26 18:28:26 +00:00
52 lines
1.4 KiB
TypeScript
52 lines
1.4 KiB
TypeScript
import { CrudSorting } from "@refinedev/core";
|
|
import { generateSort, genereteSort } from "../../src/utils";
|
|
|
|
describe("generateSort", () => {
|
|
it.each([undefined, null, []])(
|
|
"should return empty array when sorters is %p",
|
|
(sorters) => {
|
|
expect(generateSort(sorters as CrudSorting)).toEqual([]);
|
|
},
|
|
);
|
|
|
|
it("should return correct sort query for single sorter", () => {
|
|
const sorters: CrudSorting = [
|
|
{
|
|
field: "name",
|
|
order: "asc",
|
|
},
|
|
];
|
|
expect(generateSort(sorters)).toEqual("name:asc");
|
|
});
|
|
|
|
it("should return correct sort query for multiple sorters", () => {
|
|
const sorters: CrudSorting = [
|
|
{
|
|
field: "name",
|
|
order: "asc",
|
|
},
|
|
{
|
|
field: "age",
|
|
order: "desc",
|
|
},
|
|
];
|
|
expect(generateSort(sorters)).toEqual("name:asc,age:desc");
|
|
});
|
|
});
|
|
|
|
describe("genereteSort (deprecated)", () => {
|
|
it("should be deprecated and equal to generateSort", () => {
|
|
const sorters: CrudSorting = [
|
|
{
|
|
field: "name",
|
|
order: "asc",
|
|
},
|
|
{
|
|
field: "age",
|
|
order: "desc",
|
|
},
|
|
];
|
|
expect(genereteSort(sorters)).toEqual(generateSort(sorters));
|
|
});
|
|
});
|