public void WriteHeaderTest()
        {
            var firstName = Path.Combine(testFolder, "file.rsa");

            using (writer = new RsaFileWriter(15, firstName, 10)) {
                var hashCode = new byte[] {
                    1, 2, 3, 4,
                    5, 6, 7, 8,
                    9, 10, 11, 12,
                    13, 14, 15, 16
                };
                writer.WriteHeader(1000, hashCode);
            }
            var expectedBytes = new byte[] {
                15,                                         // версия
                10, 0,                                      // размер блока
                232, 3, 0, 0,                               // размер исходного файла
                0, 0, 0, 0,                                 // размер исходного файла
                1, 2, 3, 4,                                 // хэш
                5, 6, 7, 8,                                 // хэш
                9, 10, 11, 12,                              // хэш
                13, 14, 15, 16                              // хэш
            };

            TestHelper.CheckFile(firstName, expectedBytes);
        }
        public void WriteNextBlock_DigitGreaterThanBlockLength()
        {
            var firstName = Path.Combine(testFolder, "file.rsa");

            using (writer = new RsaFileWriter(3, firstName, 2)) {
                var number = BigNumber.FromBytes(new[] { 1, 67, 32, 150 });
                Assert.Throws(typeof(ArgumentException), () => writer.WriteNextBlock(number));
            }
        }
        public void DeleteTest()
        {
            var firstName = Path.Combine(testFolder, "file.rsa");

            using (writer = new RsaFileWriter(15, firstName, 10)) {
                writer.Delete();
            }
            Assert.IsFalse(File.Exists(firstName));
        }
        public void WriteNextBlock_DigitLessThanBlockLength()
        {
            var firstName = Path.Combine(testFolder, "file.rsa");

            using (writer = new RsaFileWriter(3, firstName, 5)) {
                var number = BigNumber.FromBytes(new[] { 1, 67, 32, 150 });
                writer.WriteNextBlock(number);
            }
            var expectedBytes = new byte[] {
                1, 67, 32, 150, 0
            };

            TestHelper.CheckFile(firstName, expectedBytes);
        }