public void ReadAndVerifySignatureFailsOnBadTest_TooShort()
        {
            using (MemoryStream ms = new MemoryStream())
                using (BinaryWriter bw = new BinaryWriter(ms))
                {
                    bw.Write(Encoding.ASCII.GetBytes("SIGNATUR"));

                    var expected = Encoding.ASCII.GetBytes("SIGNATURE");

                    ms.Seek(0, SeekOrigin.Begin);

                    TapeStreamSerializer_Accessor.ReadAndVerifySignature(ms, expected, "SIGNATURE");
                }
        }
        public void WriteReadableInt64Test()
        {
            const long expected = 74L;

            using (MemoryStream ms = new MemoryStream())
                using (BinaryWriter bw = new BinaryWriter(ms))
                {
                    TapeStreamSerializer_Accessor.WriteReadableInt64(bw, expected);
                    ms.Seek(0, SeekOrigin.Begin);

                    var actual = TapeStreamSerializer_Accessor.ReadReadableInt64(ms);

                    Assert.AreEqual(expected, actual);
                }
        }
        public void ReadReadableInt64Test()
        {
            const long expected = 74L;

            using (MemoryStream ms = new MemoryStream())
                using (BinaryWriter bw = new BinaryWriter(ms))
                {
                    var buffer = Encoding.UTF8.GetBytes(expected.ToString("x16"));
                    bw.Write(buffer);
                    ms.Seek(0, SeekOrigin.Begin);

                    var actual = TapeStreamSerializer_Accessor.ReadReadableInt64(ms);

                    Assert.AreEqual(expected, actual);
                }
        }
        public void ReadAndVerifySignatureTest()
        {
            using (MemoryStream ms = new MemoryStream())
                using (BinaryWriter bw = new BinaryWriter(ms))
                {
                    bw.Write(Encoding.ASCII.GetBytes("SIGNATURE"));

                    var expected = Encoding.ASCII.GetBytes("SIGNATURE");

                    ms.Seek(0, SeekOrigin.Begin);

                    TapeStreamSerializer_Accessor.ReadAndVerifySignature(ms, expected, "SIGNATURE");

                    // No assert - ReadAndVerifySignature should throw if it fails,
                    // otherwise test passes.
                }
        }
        public void WriteReadableHashTest()
        {
            const byte expected = 109;

            using (MemoryStream ms = new MemoryStream())
                using (BinaryWriter bw = new BinaryWriter(ms))
                    using (var managed = new SHA1Managed())
                    {
                        var buffer = Encoding.UTF8.GetBytes(Convert.ToBase64String(managed.ComputeHash(Encoding.UTF8.GetBytes("TEST"))));

                        TapeStreamSerializer_Accessor.WriteReadableHash(bw, buffer);

                        ms.Seek(0, SeekOrigin.Begin);

                        var actual = TapeStreamSerializer_Accessor.ReadReadableHash(ms);

                        Assert.AreEqual(expected, new List <Byte>(actual)[0]);
                    }
        }