rushabhcodes/ESP32-E-Reader
Battery-powered ESP32-C3 e-reader board with USB-C LiPo charging/protection, buck-boost 3.3 V supply, Wi‑Fi MCU, e-paper and microSD interfaces, display charge-pump rails, and tactile power/navigation controls.
- Version
- 1.0.87
- License
- unset
- Stars
- 3
scripts/check-routing-output.mjs
import assert from 'node:assert/strict';
import fixture from './fixtures/cc2-routing-seed.json';
import {removeSupersededRoutingSeeds} from '../routing-output';
const [seed,replacement]=fixture.traces;
assert.deepEqual(removeSupersededRoutingSeeds(fixture.input,fixture.traces),[replacement]);
assert.deepEqual(removeSupersededRoutingSeeds(fixture.input,[seed]),[seed],'Keep unresolved failures visible');
const differentNet={...replacement,connection_name:'different_net'};
assert(removeSupersededRoutingSeeds(fixture.input,[seed,differentNet]).includes(seed));
const broken={...replacement,route:replacement.route.filter(p=>p.route_type!=='via')};
assert(removeSupersededRoutingSeeds(fixture.input,[seed,broken]).includes(seed),'A replacement without layer transitions is incomplete');
const branched=structuredClone(fixture.input);
branched.connections[0].pointsToConnect.push({x:0,y:0,layer:'top',pointId:'branch'});
assert.deepEqual(removeSupersededRoutingSeeds(branched,fixture.traces),fixture.traces,'Leave multipoint branches intact');
console.log('Actual CC2 regression: connected replacement retained; missing vias, wrong net, absent replacement and branches remain visible.');