public void CreateSignedSubFile() { // Tests whether a stream within a signed stream behaves as an outer stream StrongNameKey snkIn = StrongNameKey.LoadFrom(SnkFile); string file; using (FileStream f = File.Create(file = TmpPath)) using (AssuredStream s = new AssuredStream(f, snkIn, "TestPackage")) using (AssuredSubStream s2 = new AssuredSubStream(s, VerificationMode.Full)) using (BinaryWriter bw = new BinaryWriter(s2)) { Assert.That(s2.Position, Is.EqualTo(0L), "Position 0 within signed file"); bw.Write("Test String"); Assert.That(s2.Position, Is.Not.EqualTo(0L), "Position 0 within signed file"); } using (FileStream f = File.OpenRead(file)) using (AssuredStream s = new AssuredStream(f, VerificationMode.Full)) using (AssuredSubStream s2 = new AssuredSubStream(s, VerificationMode.Full)) using (BinaryReader br = new BinaryReader(s2)) { Assert.That(s2.Position, Is.EqualTo(0L), "Position 0 within signed file"); Assert.That(br.ReadString(), Is.EqualTo("Test String")); Assert.That(s2.Position, Is.Not.EqualTo(0L), "Position not 0 within signed file"); Assert.That(s.HashString, Is.Not.Null, "Hash is set"); } }
public void CreateHashedSubFile() { string file; using (FileStream f = File.Create(file = TmpPath)) using (AssuredSubStream s2 = new AssuredSubStream(f, VerificationMode.Full)) using (BinaryWriter bw = new BinaryWriter(s2)) { Assert.That(s2.Position, Is.EqualTo(0L), "Position 0 within signed file"); bw.Write("Test String"); Assert.That(s2.Position, Is.Not.EqualTo(0L), "Position 0 within signed file"); } using (FileStream f = File.OpenRead(file)) using (AssuredSubStream s2 = new AssuredSubStream(f, VerificationMode.Full)) using (BinaryReader br = new BinaryReader(s2)) { Assert.That(s2.Position, Is.EqualTo(0L), "Position 0 within signed file"); Assert.That(br.ReadString(), Is.EqualTo("Test String")); Assert.That(s2.Position, Is.Not.EqualTo(0L), "Position not 0 within signed file"); } }