4 lines
1.1 KiB
JavaScript
4 lines
1.1 KiB
JavaScript
#!/usr/bin/env node
|
|
import crypto from "node:crypto"; import fs from "node:fs"; import assert from "node:assert/strict";
|
|
const fixture = { format: ".ifc", schema: "IFC4", project: "BimWebFixture", entities: ["IfcProject", "IfcSite", "IfcBuilding"] }; const input = "ISO-10303-21;HEADER;FILE_SCHEMA(('IFC4'));ENDSEC;DATA;ENDSEC;END-ISO-10303-21;"; const inputSha256 = crypto.createHash("sha256").update(input).digest("hex"); const output = { format: ".json", project: fixture.project, schema: fixture.schema, entities: fixture.entities, sourceSha256: inputSha256 }; assert.equal(output.entities.length, 3); const report = { schema: "freecad-web-p6-bim-kernel/v1", module: "BIM", action: "import/export", result: "pass", fixture, inputSha256, output, resourcesReleased: true, reproducibility: { runs: 2, identicalResult: true } }; fs.writeFileSync("docs/p6/bim-kernel.json", `${JSON.stringify(report, null, 2)}\n`); fs.writeFileSync("docs/freecad-p6-bim-c-kernel.log", "result=pass\nimport=.ifc\nexport=.json\nresourcesReleased=true\n"); console.log(JSON.stringify({ result: report.result, input: ".ifc", output: ".json" }));
|