From 8ebd6872662cca47ac9d1764bb2089c2675b1a34 Mon Sep 17 00:00:00 2001 From: moflo Date: Wed, 15 Apr 2026 11:49:59 -0600 Subject: [PATCH 1/3] feat: add greet() utility Closes #1 Co-Authored-By: Claude Opus 4.6 (1M context) --- src/greet.js | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 src/greet.js diff --git a/src/greet.js b/src/greet.js new file mode 100644 index 0000000..868b6a1 --- /dev/null +++ b/src/greet.js @@ -0,0 +1,4 @@ +function greet(name) { + return `Hello, ${name}!`; +} +module.exports = { greet }; From e142d147750337320cb893b61167bd9add439034 Mon Sep 17 00:00:00 2001 From: moflo Date: Wed, 15 Apr 2026 11:50:45 -0600 Subject: [PATCH 2/3] feat: add CLI entry point Closes #2 Co-Authored-By: Claude Opus 4.6 (1M context) --- index.js | 3 +++ 1 file changed, 3 insertions(+) create mode 100644 index.js diff --git a/index.js b/index.js new file mode 100644 index 0000000..d240bbb --- /dev/null +++ b/index.js @@ -0,0 +1,3 @@ +const { greet } = require("./src/greet"); +const name = process.argv[2] || "world"; +console.log(greet(name)); From 96f95b7e696c7009480abd78c65ca4d6b42bb5e2 Mon Sep 17 00:00:00 2001 From: moflo Date: Wed, 15 Apr 2026 11:51:32 -0600 Subject: [PATCH 3/3] test: add greet tests with node:test runner Closes #3 Co-Authored-By: Claude Opus 4.6 (1M context) --- package.json | 2 +- tests/greet.test.js | 13 +++++++++++++ 2 files changed, 14 insertions(+), 1 deletion(-) create mode 100644 tests/greet.test.js diff --git a/package.json b/package.json index 494cbe8..f8376ae 100644 --- a/package.json +++ b/package.json @@ -4,7 +4,7 @@ "description": "", "main": "index.js", "scripts": { - "test": "echo \"Error: no test specified\" && exit 1", + "test": "node --test", "flo": "flo" }, "keywords": [], diff --git a/tests/greet.test.js b/tests/greet.test.js new file mode 100644 index 0000000..7d855b6 --- /dev/null +++ b/tests/greet.test.js @@ -0,0 +1,13 @@ +const { describe, it } = require('node:test'); +const assert = require('node:assert'); +const { greet } = require('../src/greet'); + +describe('greet', () => { + it('returns greeting with name', () => { + assert.strictEqual(greet('Alice'), 'Hello, Alice!'); + }); + + it('handles empty string', () => { + assert.strictEqual(greet(''), 'Hello, !'); + }); +});