feat: add controlled local PXP-OA parity workflow
This commit is contained in:
@@ -69,6 +69,14 @@ public sealed class PackageLifecycleTests
|
||||
finally { if (Directory.Exists(root)) Directory.Delete(root, true); }
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public async Task RepeatedExactMaterializationRevalidatesCommittedManifestAndPayload()
|
||||
{
|
||||
var root=Path.Combine(Path.GetTempPath(),Guid.NewGuid().ToString("N"));var source=Path.Combine(root,"catalog");Directory.CreateDirectory(source);var bytes=new byte[]{6,7};await File.WriteAllBytesAsync(Path.Combine(source,"entry.dll"),bytes);await File.WriteAllBytesAsync(Path.Combine(source,"payload.dat"),bytes);var store=new LocalPackageStore(root,new Sha256FileHasher());
|
||||
try { var first=await store.MaterializeAsync(Manifest("1.0.0",bytes,bytes),source,CancellationToken.None);var second=await store.MaterializeAsync(Manifest("1.0.0",bytes,bytes),source,CancellationToken.None);Assert.Equal(first.LocalPackageRoot,second.LocalPackageRoot);Assert.False(File.Exists(Path.Combine(root,"Applications","Lifecycle.Package","current.json"))); }
|
||||
finally { if(Directory.Exists(root))Directory.Delete(root,true); }
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public async Task ActivationIsIdempotentAndRollbackRestoresPrevious()
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user