diff --git a/Typescript/2023/generator.js b/Typescript/2023/generator.js index 96fa397..efc41ba 100644 --- a/Typescript/2023/generator.js +++ b/Typescript/2023/generator.js @@ -20,7 +20,7 @@ export function SolvePartTwo(): number { const createTypeScriptFile = (day) => { const renderedTemplate = nunjucks.renderString(dayTemplate, { day: day }); // Pass day as an object with key 'day' - const filename = path.join("src", `day${day}`, `day${day}.ts`); + const filename = path.join("src", "days", `day${day}`, `day${day}.ts`); console.log(filename); fs.writeFileSync(filename, renderedTemplate); console.log(`Created TypeScript file: day${day}.ts`); @@ -28,7 +28,7 @@ const createTypeScriptFile = (day) => { const createTestFile = (day) => { const testTemplate = ` -import { SolvePartOne, SolvePartTwo } from "../day{{ day }}"; +import { SolvePartOne, SolvePartTwo } from "../day{{ day }}/day{{ day }}"; import { describe, expect, test } from "vitest"; describe("Day {{ day }} Part 01", () => { @@ -58,7 +58,9 @@ describe("Day {{ day }} Part 02", () => { const createDirectories = (filename) => { const dir = path.dirname(filename); + console.log("Dir: " + dir); if (!fs.existsSync(dir)) { + console.log("Does not exist"); fs.mkdirSync(dir, { recursive: true }); } }; @@ -72,9 +74,12 @@ if (args.length < 1) { } const dayValue = args[0]; +const folderPath = path.join("src", "days", `day${dayValue}`, `day${dayValue}.ts`); -createDirectories(path.join("src", "days", `${dayValue}`)); +createDirectories(folderPath); createDirectories(path.join("src", "days", "__test__", `${dayValue}.test.ts`)); createTypeScriptFile(dayValue); createTestFile(dayValue); +fs.writeFileSync(path.join("src", "days", `day${dayValue}`, `full.txt`), ""); +fs.writeFileSync(path.join("src", "days", `day${dayValue}`, `sample.txt`), ""); diff --git a/Typescript/2023/src/days/__test__/day02.test.ts b/Typescript/2023/src/days/__test__/day02.test.ts new file mode 100644 index 0000000..5d4fca5 --- /dev/null +++ b/Typescript/2023/src/days/__test__/day02.test.ts @@ -0,0 +1,15 @@ + +import { SolvePartOne, SolvePartTwo } from "../day02/day02"; +import { describe, expect, test } from "vitest"; + +describe("Day 02 Part 01", () => { + test("Expected result", () => { + expect(SolvePartOne()).toBe(-1); + }); +}); + +describe("Day 02 Part 02", () => { + test("Expected result", () => { + expect(SolvePartTwo()).toBe(-1); + }); +}); diff --git a/Typescript/2023/src/days/day02/day02.ts b/Typescript/2023/src/days/day02/day02.ts new file mode 100644 index 0000000..fe2640b --- /dev/null +++ b/Typescript/2023/src/days/day02/day02.ts @@ -0,0 +1,14 @@ + +/// AOC 2023 Day 02 +console.log("Day 02 Part 01:" + SolvePartOne()); +console.log("Day 02 Part 02:" + SolvePartTwo()); + +export function SolvePartOne(): number { + console.log("TBD"); + return 0; +} + +export function SolvePartTwo(): number { + console.log("TBD"); + return 0; +} diff --git a/Typescript/2023/src/days/day02/sample.txt b/Typescript/2023/src/days/day02/sample.txt new file mode 100644 index 0000000..e69de29