Пример #1
0
        public static void TestClone()
        {
            TypeMap.Register.Singleton <IRandomGenerator>(() => new FakeRandomGenerator());
            TypeMap.Register.Singleton <IRuntimeEnvironment>(() => new FakeRuntimeEnvironment());

            V2UnicodeFileNameInfoEncryptedHeaderBlock headerBlock = new V2UnicodeFileNameInfoEncryptedHeaderBlock(new V2AesCrypto(SymmetricKey.Zero256, SymmetricIV.Zero128, 0));

            headerBlock.FileName = "A file name";
            Assert.That(headerBlock.FileName, Is.EqualTo("A file name"));

            V2UnicodeFileNameInfoEncryptedHeaderBlock clone = (V2UnicodeFileNameInfoEncryptedHeaderBlock)headerBlock.Clone();

            Assert.That(clone.FileName, Is.EqualTo("A file name"));
        }
Пример #2
0
        public static void TestBadDataCausedByBadKeyForExample()
        {
            TypeMap.Register.Singleton <IRandomGenerator>(() => new FakeRandomGenerator());
            TypeMap.Register.Singleton <IRuntimeEnvironment>(() => new FakeRuntimeEnvironment());

            V2UnicodeFileNameInfoEncryptedHeaderBlock headerBlock = new V2UnicodeFileNameInfoEncryptedHeaderBlock(new V2AesCrypto(SymmetricKey.Zero256, SymmetricIV.Zero128, 0));

            headerBlock.FileName = "A file name";
            Assert.That(headerBlock.FileName, Is.EqualTo("A file name"));

            headerBlock.HeaderCrypto = new V2AesCrypto(new V2DerivedKey(new Passphrase("passphrase"), 256).DerivedKey, SymmetricIV.Zero128, 0);
            string s;

            Assert.Throws <InvalidOperationException>(() => s = headerBlock.FileName);
        }