import { strict as assert } from "node:assert"; import { get_updated_label_set } from "./autoLabel.js"; const empty_pr = { action: "opened", pull_request: { body: "This PR will have no labels", title: "Pr with no labels", mergeable: true, }, }; const empty_label_set = await get_updated_label_set({ github: null, context: { payload: empty_pr }, }); assert.equal(empty_label_set.length, 0, "No labels should be added"); const cl = ` My Awesome PR :cl: Awesome Dude add: Adds Awesome Stuff refactor: refactored some code :/cl: `; const cl_pr = { action: "opened", pull_request: { body: cl, title: "Awesome PR", mergeable: false, }, }; const cl_label_set = await get_updated_label_set({ github: null, context: { payload: cl_pr }, }); assert.ok( cl_label_set.includes("Merge Conflict"), "Merge Conflict label should be added", ); assert.ok(cl_label_set.includes("Feature"), "Feature label should be added"); assert.ok( !cl_label_set.includes("Refactor"), "Refactor label should not be added", ); const title_pr = { action: "opened", pull_request: { title: "Logging is important", mergeable: true, }, }; const title_label_set = await get_updated_label_set({ github: null, context: { payload: title_pr }, }); assert.ok(title_label_set.includes("Logging"), "Logging label should be added");