ffmpeg-explorer/tests/unit-tests/commandbuilder.js

50 lines
1.2 KiB
JavaScript
Raw Normal View History

2023-08-28 11:31:32 -04:00
import { expect, test, describe } from "vitest";
import { makeFilterArgs } from "../../src/stores.js";
describe("Filter param builder", () => {
test("No params", () => {
const results = makeFilterArgs({
name: "filter",
});
expect(results).toBe("filter");
});
test("One param", () => {
const results = makeFilterArgs({
name: "filter",
params: [{ name: "param", value: 10 }],
});
expect(results).toBe("filter=param=10");
});
test("Param without values", () => {
const results = makeFilterArgs({
name: "filter",
params: [{ name: "param" }],
});
expect(results).toBe("filter");
});
test("Param with default value", () => {
const results = makeFilterArgs({
name: "filter",
params: [{ name: "param", value: 1, default: 1 }],
});
expect(results).toBe("filter");
});
2023-08-28 11:36:58 -04:00
test("Lots of params", () => {
const results = makeFilterArgs({
name: "filter",
params: [
{ name: "param1", value: 1, default: 1 }, // should be ignored
{ name: "param2", value: "", }, // should be ignored
{ name: "param3", value: 1, default: 2 },
{ name: "param4", value: 2},
{ name: "param5", value: "p5"},
],
});
expect(results).toBe("filter=param3=1:param4=2:param5=p5");
});
2023-08-28 11:31:32 -04:00
});