test: cover normal behavior and edge cases
GBB Demo authored on Nov 2, 2026
parent 97fcf0ecommit e10fd5595a61
2 files changed, +20 −0
- package.json+9 −0@@ -1,0 +1,9 @@1+{2+ "name": "feature-flags",3+ "version": "0.1.0",4+ "private": true,5+ "type": "module",6+ "scripts": {7+ "test": "node test.mjs"8+ }9+}
- test.mjs+11 −0@@ -1,0 +1,11 @@1+import assert from "node:assert/strict";2+import * as app from "./app.mjs";3+4+const flag = {key: "new-nav", enabled: true, default: false, users: ["demo-user"]};5+assert.equal(app.validateFlag(flag), true);6+assert.equal(app.evaluate(flag, "demo-user"), true);7+assert.equal(app.evaluate(flag, "outsider"), false);8+assert.equal(app.evaluate({...flag, enabled: false}, "demo-user"), false);9+assert.equal(app.validateFlag({...flag, users: [1]}), false);10+11+console.log("All checks passed");