From 94ab274246ec988c9a3a8dcd4b028e098eb3ac8a Mon Sep 17 00:00:00 2001 From: Lani Aung Date: Wed, 25 Sep 2024 20:01:32 -0600 Subject: [PATCH] Tests? --- .../Examples/2RANMAS.lzh | Bin 0 -> 174746 bytes .../LhContainerTests.cs | 50 ++++++++++++++++++ fxl.codes.kisekae.data.test/LhMethodTests.cs | 15 ------ .../fxl.codes.kisekae.data.test.csproj | 15 ++++++ .../Archives/Algorithms/HuffmanNode.cs | 35 ++++++++++++ .../Archives/EndianUtility.cs | 2 +- .../Archives/LhCodecService.cs | 31 +++-------- .../{LhHeaders/LhHeader.cs => LhContainer.cs} | 26 ++++++--- .../Archives/LhMethods/BaseLhMethod.cs | 27 +++++----- .../fxl.codes.kisekae.data.csproj | 4 ++ 10 files changed, 146 insertions(+), 59 deletions(-) create mode 100644 fxl.codes.kisekae.data.test/Examples/2RANMAS.lzh create mode 100644 fxl.codes.kisekae.data.test/LhContainerTests.cs delete mode 100644 fxl.codes.kisekae.data.test/LhMethodTests.cs create mode 100644 fxl.codes.kisekae.data/Archives/Algorithms/HuffmanNode.cs rename fxl.codes.kisekae.data/Archives/{LhHeaders/LhHeader.cs => LhContainer.cs} (88%) diff --git a/fxl.codes.kisekae.data.test/Examples/2RANMAS.lzh b/fxl.codes.kisekae.data.test/Examples/2RANMAS.lzh new file mode 100644 index 0000000000000000000000000000000000000000..0c6c879264e7495775aad72b3eaf85218a0f7898 GIT binary patch literal 174746 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

a_qkZx@i1x+gTN<D>* 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%0AIs~?^xrGm&{C8)Yc0pRnH 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 _resourceNames = new(); + private LhCodecService _service; + + [SetUp] + public void Setup() + { + foreach (var name in _assembly.GetManifestResourceNames()) _resourceNames.Add(name); + var logger = new Logger(NullLoggerFactory.Instance); + _service = new LhCodecService(logger); + } + + [Test] + public void TestHeader() + { + foreach (var resource in _resourceNames) + { + using var stream = _assembly.GetManifestResourceStream(resource); + if (stream == null) continue; + + var files = LhCodecService.GetFiles(in stream); + + Assert.Multiple(() => + { + Assert.That(files, Is.Not.Empty); + + foreach (var file in files) + { + Assert.That(file.FileName, Is.Not.Null, "Filename is {0}", file.FileName); + Assert.That(file.CompressedSize, Is.GreaterThan(0), "Compressed size is {0}", file.CompressedSize); + Assert.That(file.UncompressedSize, Is.GreaterThan(0), "Uncompressed size is {0}", file.UncompressedSize); + Assert.That(file.UncompressedSize, Is.GreaterThan(file.CompressedSize), "Uncompressed is larger than compressed"); + Assert.That(file.MethodId, Is.Not.Null, "Method id is {0}", file.MethodId); + Assert.That(file.MethodId, Does.StartWith("-l")); + Assert.That(file.MethodId, Does.EndWith("-")); + Console.WriteLine($"Archive name: {file.FileName}, compression method: {file.MethodId}"); + } + }); + } + } +} \ No newline at end of file diff --git a/fxl.codes.kisekae.data.test/LhMethodTests.cs b/fxl.codes.kisekae.data.test/LhMethodTests.cs deleted file mode 100644 index 564e950..0000000 --- a/fxl.codes.kisekae.data.test/LhMethodTests.cs +++ /dev/null @@ -1,15 +0,0 @@ -namespace fxl.codes.kisekae.data.test; - -public class LhMethodTests -{ - [SetUp] - public void Setup() - { - } - - [Test] - public void Test1() - { - Assert.Pass(); - } -} \ No newline at end of file diff --git a/fxl.codes.kisekae.data.test/fxl.codes.kisekae.data.test.csproj b/fxl.codes.kisekae.data.test/fxl.codes.kisekae.data.test.csproj index 366a6ff..fc11ded 100644 --- a/fxl.codes.kisekae.data.test/fxl.codes.kisekae.data.test.csproj +++ b/fxl.codes.kisekae.data.test/fxl.codes.kisekae.data.test.csproj @@ -23,4 +23,19 @@ + + + + + + + + PreserveNewest + + + + + + + diff --git a/fxl.codes.kisekae.data/Archives/Algorithms/HuffmanNode.cs b/fxl.codes.kisekae.data/Archives/Algorithms/HuffmanNode.cs new file mode 100644 index 0000000..efecaad --- /dev/null +++ b/fxl.codes.kisekae.data/Archives/Algorithms/HuffmanNode.cs @@ -0,0 +1,35 @@ +namespace fxl.codes.kisekae.data.Archives.Algorithms; + +public class HuffmanNode +{ + public HuffmanNode(char value) + { + } + + public HuffmanNode(HuffmanNode left, HuffmanNode right) + { + Left = left; + Left.Side = HuffmanNodeSide.Left; + Left.Parent = this; + + Right = right; + Right.Side = HuffmanNodeSide.Right; + Right.Parent = this; + + Weight = left.Weight + right.Weight; + } + + public char? Value { get; set; } + public int Weight { get; set; } = 1; + + public HuffmanNode? Parent { get; set; } + public HuffmanNode? Left { get; set; } + public HuffmanNode? Right { get; set; } + public HuffmanNodeSide? Side { get; set; } +} + +public enum HuffmanNodeSide +{ + Left, + Right +} \ No newline at end of file diff --git a/fxl.codes.kisekae.data/Archives/EndianUtility.cs b/fxl.codes.kisekae.data/Archives/EndianUtility.cs index 55b43e7..de2db30 100644 --- a/fxl.codes.kisekae.data/Archives/EndianUtility.cs +++ b/fxl.codes.kisekae.data/Archives/EndianUtility.cs @@ -6,7 +6,7 @@ internal static class EndianUtility { public static int ToLittleEndian(this ReadOnlySpan bytes) { - var x = BitConverter.ToInt32(bytes); + var x = bytes.Length == 2 ? BitConverter.ToInt16(bytes) : BitConverter.ToInt32(bytes); return BitConverter.IsLittleEndian ? x : BinaryPrimitives.ReverseEndianness(x); } diff --git a/fxl.codes.kisekae.data/Archives/LhCodecService.cs b/fxl.codes.kisekae.data/Archives/LhCodecService.cs index f27e5a4..f4a090c 100644 --- a/fxl.codes.kisekae.data/Archives/LhCodecService.cs +++ b/fxl.codes.kisekae.data/Archives/LhCodecService.cs @@ -1,4 +1,3 @@ -using fxl.codes.kisekae.data.Archives.LhHeaders; using fxl.codes.kisekae.data.Entities; using Microsoft.Extensions.Logging; @@ -8,29 +7,13 @@ public class LhCodecService(ILogger logger) { public async Task ReadArchive(Stream stream) { - try - { - var header = new LhHeader(in stream); - switch (header.MethodId) - { - case "-lh0-": break; - case "-lzs-": break; - case "-lz4-": break; - case "-lh1-": break; - case "-lh2-": break; - case "-lh3-": break; - case "-lh4-": break; - case "-lh5-": break; - case "-lh6-": break; - case "-lh7-": break; - default: throw new Exception("Unknown method"); - } - } - catch (Exception e) - { - logger.LogError(e, "Unable to open archive"); - } + throw new NotImplementedException(); + } - return null; + internal static IEnumerable GetFiles(ref readonly Stream stream) + { + var files = new List(); + while (stream.Position + 21 < stream.Length) files.Add(new LhContainer(in stream)); + return files; } } \ No newline at end of file diff --git a/fxl.codes.kisekae.data/Archives/LhHeaders/LhHeader.cs b/fxl.codes.kisekae.data/Archives/LhContainer.cs similarity index 88% rename from fxl.codes.kisekae.data/Archives/LhHeaders/LhHeader.cs rename to fxl.codes.kisekae.data/Archives/LhContainer.cs index 25d6799..3203a7d 100644 --- a/fxl.codes.kisekae.data/Archives/LhHeaders/LhHeader.cs +++ b/fxl.codes.kisekae.data/Archives/LhContainer.cs @@ -1,19 +1,20 @@ using System.Text; -namespace fxl.codes.kisekae.data.Archives.LhHeaders; +namespace fxl.codes.kisekae.data.Archives; -internal class LhHeader +internal class LhContainer { - public LhHeader(ref readonly Stream stream) + public LhContainer(ref readonly Stream stream) { + HeaderDataPosition = stream.Position; var bytes = new byte[21]; - stream.Position = 0; stream.ReadExactly(bytes); var span = bytes.AsSpan(); Level = span[20]; MethodId = Encoding.ASCII.GetString(span[2..7]); CompressedSize = EndianUtility.ToLittleEndian(span[7..11]); + CompressedFile = new byte[CompressedSize]; UncompressedSize = EndianUtility.ToLittleEndian(span[11..15]); Created = EndianUtility.ToDateTime(span[15..19]); FileOrDirectory = span[19]; @@ -36,7 +37,7 @@ internal class LhHeader public int HeaderSize { get; private set; } public int HeaderCheckSum { get; private set; } public string MethodId { get; private set; } - public int CompressedSize { get; private set; } + public int CompressedSize { get; } public int UncompressedSize { get; private set; } public DateTime Created { get; private set; } public int FileOrDirectory { get; private set; } @@ -45,25 +46,33 @@ internal class LhHeader public string? FileName { get; private set; } + public long HeaderDataPosition { get; } public long FileDataPosition { get; private set; } + public byte[] CompressedFile { get; } private void Level0(ReadOnlySpan span, ref readonly Stream stream) { HeaderSize = span[0]; HeaderCheckSum = span[1]; - stream.Position = span.Length; FileName = GetFilename(in stream); Crc16 = (short)stream.ReadLittleEndian(2); FileDataPosition = stream.Position; + stream.ReadExactly(CompressedFile); } private void Level1(ReadOnlySpan span, ref readonly Stream stream) { - Level0(span, in stream); + HeaderSize = span[0]; + HeaderCheckSum = span[1]; + FileName = GetFilename(in stream); + Crc16 = (short)stream.ReadLittleEndian(2); OperatingSystem = (char)stream.ReadByte(); + SetExtendedHeaders(in stream); + FileDataPosition = stream.Position; + stream.ReadExactly(CompressedFile); } private void Level2(ReadOnlySpan span, ref readonly Stream stream) @@ -71,8 +80,11 @@ internal class LhHeader HeaderSize = span[..2].ToLittleEndian(); Crc16 = (short)stream.ReadLittleEndian(2); OperatingSystem = (char)stream.ReadByte(); + SetExtendedHeaders(in stream); + FileDataPosition = stream.Position; + stream.ReadExactly(CompressedFile); } private static string GetFilename(ref readonly Stream stream) diff --git a/fxl.codes.kisekae.data/Archives/LhMethods/BaseLhMethod.cs b/fxl.codes.kisekae.data/Archives/LhMethods/BaseLhMethod.cs index 6950e5a..700e01d 100644 --- a/fxl.codes.kisekae.data/Archives/LhMethods/BaseLhMethod.cs +++ b/fxl.codes.kisekae.data/Archives/LhMethods/BaseLhMethod.cs @@ -1,29 +1,32 @@ using fxl.codes.kisekae.data.Archives.Algorithms; -using fxl.codes.kisekae.data.Archives.LhHeaders; namespace fxl.codes.kisekae.data.Archives.LhMethods; -internal abstract class BaseLhMethod(ref readonly Stream stream, LhHeader header, int slidingWindowBytes, int matchingWindowBytes, IAlgorithm? algorithm) +internal abstract class BaseLhMethod(LhContainer container, int slidingWindowBytes, int matchingWindowBytes, IAlgorithm? algorithm) { public int SlidingWindow => slidingWindowBytes * 1024; + + public void InitializeAlgorithm() + { + } } -internal class Lzs(ref readonly Stream stream, LhHeader header) : BaseLhMethod(in stream, header, 2, 17, null); +internal class Lzs(LhContainer container) : BaseLhMethod(container, 2, 17, null); -internal class Lz4(ref readonly Stream stream, LhHeader header) : BaseLhMethod(in stream, header, 0, 0, null); +internal class Lz4(LhContainer container) : BaseLhMethod(container, 0, 0, null); -internal class Lh0(ref readonly Stream stream, LhHeader header) : BaseLhMethod(in stream, header, 0, 0, null); +internal class Lh0(LhContainer container) : BaseLhMethod(container, 0, 0, null); -internal class Lh1(ref readonly Stream stream, LhHeader header) : BaseLhMethod(in stream, header, 4, 60, new HuffmanDynamic()); +internal class Lh1(LhContainer container) : BaseLhMethod(container, 4, 60, new HuffmanDynamic()); -internal class Lh2(ref readonly Stream stream, LhHeader header) : BaseLhMethod(in stream, header, 8, 256, new HuffmanDynamic()); +internal class Lh2(LhContainer container) : BaseLhMethod(container, 8, 256, new HuffmanDynamic()); -internal class Lh3(ref readonly Stream stream, LhHeader header) : BaseLhMethod(in stream, header, 8, 256, new HuffmanStatic()); +internal class Lh3(LhContainer container) : BaseLhMethod(container, 8, 256, new HuffmanStatic()); -internal class Lh4(ref readonly Stream stream, LhHeader header) : BaseLhMethod(in stream, header, 4, 256, new HuffmanStatic()); +internal class Lh4(LhContainer container) : BaseLhMethod(container, 4, 256, new HuffmanStatic()); -internal class Lh5(ref readonly Stream stream, LhHeader header) : BaseLhMethod(in stream, header, 8, 256, new HuffmanStatic()); +internal class Lh5(LhContainer container) : BaseLhMethod(container, 8, 256, new HuffmanStatic()); -internal class Lh6(ref readonly Stream stream, LhHeader header) : BaseLhMethod(in stream, header, 32, 256, new HuffmanStatic()); +internal class Lh6(LhContainer container) : BaseLhMethod(container, 32, 256, new HuffmanStatic()); -internal class Lh7(ref readonly Stream stream, LhHeader header) : BaseLhMethod(in stream, header, 64, 256, new HuffmanStatic()); \ No newline at end of file +internal class Lh7(LhContainer container) : BaseLhMethod(container, 64, 256, new HuffmanStatic()); \ No newline at end of file diff --git a/fxl.codes.kisekae.data/fxl.codes.kisekae.data.csproj b/fxl.codes.kisekae.data/fxl.codes.kisekae.data.csproj index 383954d..c4c15a5 100644 --- a/fxl.codes.kisekae.data/fxl.codes.kisekae.data.csproj +++ b/fxl.codes.kisekae.data/fxl.codes.kisekae.data.csproj @@ -19,4 +19,8 @@ + + + +