Ctrl K
ComunidadGuías…

tests/converters/xelatex.test.ts

Rama main · réplica de lectura del repositorio original.

Archivo original ↗Preguntar a KiBot
import { expect, test } from "bun:test";

import { convert } from "../../src/converters/xelatex";
import { runCommonTests } from "./helpers/commonTests";
import { createMockExecFile } from "./helpers/converters";

runCommonTests(convert);

test("invokes latexmk with xelatex in non-interactive mode", async () => {
  const { execFile, calls } = createMockExecFile();

  await convert("in/paper.tex", "latex", "pdf", "out/job/paper.pdf", undefined, execFile);

  expect(calls).toEqual([
    {
      cmd: "latexmk",
      args: ["-xelatex", "-interaction=nonstopmode", "-output-directory=out/job", "in/paper.tex"],
    },
  ]);
});

test("strips a leading './' from the output directory", async () => {
  const { execFile, calls } = createMockExecFile();

  await convert("in/paper.tex", "latex", "pdf", "./data/output/paper.pdf", undefined, execFile);

  expect(calls[0]?.args).toContain("-output-directory=data/output");
});