Major improvements across the codebase: - Extract validationUtils.js (548→217 lines) into strategy pattern validators - Extract menuUtils.js (543→35 lines) into 6 focused menu modules - Adopt POSITIONS constants across 23 files (183 replacements) - Eliminate all 71 ESLint warnings (0 errors, 0 warnings) - Add 158 unit tests for ConfigManager, MeasurementContainer, ValidationUtils - Add architecture documentation with Mermaid diagrams - Add CI pipeline (Docker, ESLint, Jest, Makefile) - Add E2E infrastructure (docker-compose.e2e.yml) Test results: 377 total (230 Jest + 23 node:test + 124 legacy), all passing Lint: 0 errors, 0 warnings Closes #2, #3, #9, #13, #14, #18 Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
72 lines
1.9 KiB
JSON
72 lines
1.9 KiB
JSON
[
|
|
{
|
|
"id": "e2e-flow-tab",
|
|
"type": "tab",
|
|
"label": "E2E Test Flow",
|
|
"disabled": false,
|
|
"info": "End-to-end test flow that verifies EVOLV nodes are loaded and messages can flow through the pipeline."
|
|
},
|
|
{
|
|
"id": "inject-trigger",
|
|
"type": "inject",
|
|
"z": "e2e-flow-tab",
|
|
"name": "Trigger after 2s",
|
|
"props": [
|
|
{
|
|
"p": "payload"
|
|
},
|
|
{
|
|
"p": "topic",
|
|
"vt": "str"
|
|
}
|
|
],
|
|
"repeat": "",
|
|
"crontab": "",
|
|
"once": true,
|
|
"onceDelay": "2",
|
|
"topic": "e2e-test",
|
|
"payload": "",
|
|
"payloadType": "date",
|
|
"x": 150,
|
|
"y": 100,
|
|
"wires": [
|
|
["simulate-measurement"]
|
|
]
|
|
},
|
|
{
|
|
"id": "simulate-measurement",
|
|
"type": "function",
|
|
"z": "e2e-flow-tab",
|
|
"name": "Simulate Measurement",
|
|
"func": "msg.payload = {\n measurement: 'e2e_test',\n tags: { source: 'evolv-e2e', node: 'measurement-sim' },\n fields: { value: Math.random() * 100, status: 1 },\n timestamp: Date.now()\n};\nmsg.topic = 'e2e/measurement';\nnode.status({ fill: 'green', shape: 'dot', text: 'sent' });\nreturn msg;",
|
|
"outputs": 1,
|
|
"timeout": "",
|
|
"noerr": 0,
|
|
"initialize": "",
|
|
"finalize": "",
|
|
"libs": [],
|
|
"x": 370,
|
|
"y": 100,
|
|
"wires": [
|
|
["debug-output"]
|
|
]
|
|
},
|
|
{
|
|
"id": "debug-output",
|
|
"type": "debug",
|
|
"z": "e2e-flow-tab",
|
|
"name": "E2E Debug Output",
|
|
"active": true,
|
|
"tosidebar": true,
|
|
"console": true,
|
|
"tostatus": true,
|
|
"complete": "true",
|
|
"targetType": "full",
|
|
"statusVal": "",
|
|
"statusType": "auto",
|
|
"x": 580,
|
|
"y": 100,
|
|
"wires": []
|
|
}
|
|
]
|