public void FileIsCodedThenDecodedCorrectly1()
        {
            using (var fileReader = new FileReader(filePathSource, new Buffer()))
            {
                using (var fileWriter = new FileWriter(filePathEncodedFile, new Buffer()))
                {
                    lzWEncoder.EncodeFile(fileReader, fileWriter, OnFullDictionaryOption.Freeze, 9);
                }
            }

            using (var fileReader = new FileReader(filePathEncodedFile, new Buffer()))
            {
                using (var fileWriter = new FileWriter(filePathDecodedFile, new Buffer()))
                {
                    lzWDecoder.DecodeFile(fileReader, fileWriter);
                }
            }

            Assert.IsTrue(TestMethods.FilesHaveTheSameContent(filePathSource, filePathDecodedFile));
        }
Example #2
0
        public void DecodeFileWritesFileAsExpected()
        {
            using (var fileReader = new FileReader(filePathEncodedFile, new Buffer()))
            {
                using (var fileWriter = new FileWriter(filePathFile, new Buffer()))
                {
                    lzWDecoder.DecodeFile(fileReader, fileWriter);
                }
            }

            var bytes    = File.ReadAllBytes(filePathFile);
            var comparer = new CompareLogic();

            Assert.IsTrue(comparer.Compare(Constants.FileContentsBytes.ToArray(), bytes).AreEqual);
        }
Example #3
0
        private void buttonDecode_Click(object sender, EventArgs e)
        {
            var fileInfoEncodedFile = new FileInfo(textBoxFilePathEncodedFile.Text);

            if (!fileInfoEncodedFile.Exists)
            {
                throw new InvalidOperationException($"LzW decoding error: file '{fileInfoEncodedFile.FullName}' does not exist");
            }

            var encodedFileExtension       = GetExtensionOfEncodedFile(fileInfoEncodedFile);
            var decodedFileDestinationPath = $"{fileInfoEncodedFile.FullName}.{encodedFileExtension}";

            using (var fileReader = new FileReader(textBoxFilePathEncodedFile.Text, new FileOperations.Buffer()))
            {
                using (var fileWriter = new FileWriter(decodedFileDestinationPath, new FileOperations.Buffer()))
                {
                    lzWDecoder.DecodeFile(fileReader, fileWriter);
                }
            }
        }
 public void DecodeFileThrowsArgumentNullExceptionForNullFileReader()
 {
     lzWDecoder.DecodeFile(null, fileWriterMock.Object);
 }