Skip to main content

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");