diff --git a/tests/1_dijkstra/test.js b/tests/1_dijkstra/test.js index cbdc7ef..7bf318b 100644 --- a/tests/1_dijkstra/test.js +++ b/tests/1_dijkstra/test.js @@ -5,16 +5,19 @@ export default { // - You MUST use a dynamic import() to load the 'js-priority-queue' library from a CDN for the priority queue. // - The function should return the total weight of the shortest path, or Infinity if no path exists. // - Graph format: { 'A': { 'B': 1, 'C': 4 }, 'B': { ... }, ... }`, - runTest: async (findShortestPath) => { - const assert = { - strictEqual: (a, e, m) => { if (a !== e) throw new Error(m || `FAIL: ${a} !== ${e}`) }, - }; + getTestCases: () => { const graph = { A: { B: 2, C: 5 }, B: { A: 2, C: 6, D: 1, E: 3 }, C: { A: 5, B: 6, F: 8 }, D: { B: 1, E: 4 }, E: { B: 3, D: 4, F: 2 }, F: { C: 8, E: 2 } }; - const dist = await findShortestPath(graph, 'A', 'F'); + return [graph, 'A', 'F']; + }, + runTest: async (findShortestPath) => { + const assert = { + strictEqual: (a, e, m) => { if (a !== e) throw new Error(m || `FAIL: ${a} !== ${e}`) }, + }; + const [graph, start, end] = globalThis.getTestCases ? globalThis.getTestCases() : this.getTestCases(); + const dist = await findShortestPath(graph, start, end); assert.strictEqual(dist, 7, "Test Failed: Path A to F should be 7."); } }; -