more audit work
This commit is contained in:
@@ -11,6 +11,7 @@ namespace StellaOps.Scanner.Reachability.Tests;
|
||||
|
||||
public class RichGraphWriterTests
|
||||
{
|
||||
private static CancellationToken TestCancellationToken => TestContext.Current.CancellationToken;
|
||||
[Trait("Category", TestCategories.Unit)]
|
||||
[Fact]
|
||||
public async Task WritesCanonicalGraphAndMeta()
|
||||
@@ -30,11 +31,11 @@ public class RichGraphWriterTests
|
||||
});
|
||||
|
||||
var rich = RichGraphBuilder.FromUnion(union, "test-analyzer", "1.0.0");
|
||||
var result = await writer.WriteAsync(rich, temp.Path, "analysis-1");
|
||||
var result = await writer.WriteAsync(rich, temp.Path, "analysis-1", TestCancellationToken);
|
||||
|
||||
Assert.True(File.Exists(result.GraphPath));
|
||||
Assert.True(File.Exists(result.MetaPath));
|
||||
var json = await File.ReadAllTextAsync(result.GraphPath);
|
||||
var json = await File.ReadAllTextAsync(result.GraphPath, TestCancellationToken);
|
||||
Assert.Contains("richgraph-v1", json);
|
||||
Assert.Contains(":", result.GraphHash); // hash format: algorithm:digest
|
||||
Assert.Equal(2, result.NodeCount);
|
||||
@@ -62,9 +63,9 @@ public class RichGraphWriterTests
|
||||
Edges: Array.Empty<ReachabilityUnionEdge>());
|
||||
|
||||
var rich = RichGraphBuilder.FromUnion(union, "test-analyzer", "1.0.0");
|
||||
var result = await writer.WriteAsync(rich, temp.Path, "analysis-symbol-rich");
|
||||
var result = await writer.WriteAsync(rich, temp.Path, "analysis-symbol-rich", TestCancellationToken);
|
||||
|
||||
var json = await File.ReadAllTextAsync(result.GraphPath);
|
||||
var json = await File.ReadAllTextAsync(result.GraphPath, TestCancellationToken);
|
||||
Assert.Contains("\"code_block_hash\":\"sha256:blockhash\"", json);
|
||||
Assert.Contains("\"symbol\":{\"mangled\":\"_Zssl_read\",\"demangled\":\"ssl_read\",\"source\":\"DWARF\",\"confidence\":0.9}", json);
|
||||
}
|
||||
@@ -105,8 +106,8 @@ public class RichGraphWriterTests
|
||||
}
|
||||
};
|
||||
|
||||
var result = await writer.WriteAsync(rich, temp.Path, "analysis-gates");
|
||||
var json = await File.ReadAllTextAsync(result.GraphPath);
|
||||
var result = await writer.WriteAsync(rich, temp.Path, "analysis-gates", TestCancellationToken);
|
||||
var json = await File.ReadAllTextAsync(result.GraphPath, TestCancellationToken);
|
||||
|
||||
Assert.Contains("\"gate_multiplier_bps\":3000", json);
|
||||
Assert.Contains("\"gates\":[", json);
|
||||
@@ -130,14 +131,14 @@ public class RichGraphWriterTests
|
||||
Edges: Array.Empty<ReachabilityUnionEdge>());
|
||||
|
||||
var rich = RichGraphBuilder.FromUnion(union, "test-analyzer", "1.0.0");
|
||||
var result = await writer.WriteAsync(rich, temp.Path, "analysis-blake3");
|
||||
var result = await writer.WriteAsync(rich, temp.Path, "analysis-blake3", TestCancellationToken);
|
||||
|
||||
// Default profile (world) uses BLAKE3
|
||||
Assert.StartsWith("blake3:", result.GraphHash);
|
||||
Assert.Equal(64 + 7, result.GraphHash.Length); // "blake3:" (7) + 64 hex chars
|
||||
|
||||
// Verify meta.json also contains the blake3-prefixed hash
|
||||
var metaJson = await File.ReadAllTextAsync(result.MetaPath);
|
||||
var metaJson = await File.ReadAllTextAsync(result.MetaPath, TestCancellationToken);
|
||||
Assert.Contains("\"graph_hash\": \"blake3:", metaJson);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user