mirror of
https://github.com/morluto/rea.git
synced 2026-11-04 05:46:17 +00:00
test: strengthen integration oracles and verification (#8295)
* test: strengthen integration oracles and verification * test: bound lifecycle gates and strengthen workflow checks * test: verify complete paged and extracted results * test: preserve bytecode and cancellation evidence * test: strengthen retained evidence and fixture cleanup * test: require cross-projection bridge identities * test: retain fixture owners through cleanup failures * test: verify graph examples and project selectors * test: tighten provider and lifecycle regressions * test: consolidate hex coverage and bound cutter cleanup * test: bound subprocess output waits and strengthen graph checks * test: check mcp recovery and preserve cleanup owners * test: verify structured mcp argument failures * test: preserve artifact cleanup and gdb limit evidence * test: preserve evidence identities and bound provider gates * test: retain browser and comparison cleanup owners * test: bound startup and strengthen fixture oracles * test: bound lifecycle gates and verify recovered evidence * test: verify public outcomes and lifecycle ownership * test: assert precise evidence and release lifecycle gates * test: verify selected facts and bound cleanup waits * test: check retained evidence and decoded records * test: verify final reports and retain cleanup ownership * test: bound reviewed startup gates and retain cleanup * test: verify PE errors and preserve MCP cleanup * test: preserve MCP fixture cleanup ownership * test: release provider gates before late startup
This commit is contained in:
1 parent
2d5dec26c3
commit
60149282fc
342 files changed
+8844
-6279
No files matched your search
@@ -1095,68 +1095,6 @@ it("rejects code keys and members whose consts are unhashable", () => {
|
||||
expect(hashable.coverage.status).toBe("complete");
|
||||
});
|
||||
|
||||
it("uses the code equality fields for each CPython layout", () => {
|
||||
const codeCollections = (
|
||||
layout: "py38" | "py311",
|
||||
different: boolean,
|
||||
): [Buffer, Buffer] => {
|
||||
const lineA = marshalCode(layout, {
|
||||
name: "f",
|
||||
filename: "fixture.py",
|
||||
firstlineno: 1,
|
||||
linetable: Buffer.from([2, 1]),
|
||||
});
|
||||
const lineB = marshalCode(layout, {
|
||||
name: "f",
|
||||
filename: "fixture.py",
|
||||
firstlineno: 1,
|
||||
linetable: Buffer.from([2, different ? 2 : 1]),
|
||||
});
|
||||
const frozenSet = Buffer.concat([
|
||||
Buffer.from([0x3e]),
|
||||
u32(2),
|
||||
lineA,
|
||||
lineB,
|
||||
]);
|
||||
const dict = Buffer.concat([
|
||||
Buffer.from([0x7b]),
|
||||
lineA,
|
||||
Buffer.from([0x4e]),
|
||||
lineB,
|
||||
Buffer.from([0x54, 0x30]),
|
||||
]);
|
||||
return [frozenSet, dict];
|
||||
};
|
||||
for (const [magic, layout] of [
|
||||
[3413, "py38"],
|
||||
[3439, "py38"],
|
||||
] as const) {
|
||||
const [frozenSet, dict] = codeCollections(layout, true);
|
||||
const report = parse(
|
||||
Buffer.concat([
|
||||
pythonPycHeader(magic),
|
||||
marshalCode(layout, { consts: [frozenSet, dict] }),
|
||||
]),
|
||||
);
|
||||
expect(root(report).consts).toEqual([
|
||||
{ kind: "frozenset", length: 1 },
|
||||
{ kind: "dict", length: 1 },
|
||||
]);
|
||||
}
|
||||
|
||||
const [frozenSet, dict] = codeCollections("py311", true);
|
||||
const py312 = parse(
|
||||
Buffer.concat([
|
||||
pythonPycHeader(3531),
|
||||
marshalCode("py311", { consts: [frozenSet, dict] }),
|
||||
]),
|
||||
);
|
||||
expect(root(py312).consts).toEqual([
|
||||
{ kind: "frozenset", length: 2 },
|
||||
{ kind: "dict", length: 2 },
|
||||
]);
|
||||
});
|
||||
|
||||
it("keeps the first dictionary key when a later key compares equal", () => {
|
||||
const key = (filename: string): Buffer =>
|
||||
marshalCode("py311", {
|
||||
|
||||
Reference in new issue
Block a user