testConflictedHint

tcmts.cli.merge.testConflictedHint · #djtlpfmu · term

import { conflictedHint } from "#codebase/tcmts/cli/merge";
import assert from "node:assert/strict";

export const testConflictedHint = () => {
  assert.equal(
    conflictedHint(["lib.k"], ["lib.m"]),
    "uses lib.k, which is still conflicted: settle that first (`tcm edit lib.k` merges its sides, `tcm resolve lib.k --ours` or `--theirs` keeps one), or edit both together: `tcm edit lib.m lib.k`",
  );
  // (a file that isn't settling a conflict itself: only settle it first)
  assert.doesNotMatch(conflictedHint(["lib.k", "lib.j"], []), /together/);
  assert.match(
    conflictedHint(["lib.k", "lib.j"], ["lib.m"]),
    /^uses lib\.k, lib\.j, which are still conflicted: settle them first.*edit them all together: `tcm edit lib\.m lib\.k lib\.j`$/,
  );
}

uses