Files
Garry Newman d95169d8fa Unit Test Cleanup (#5064)
* Move all unit tests to Engine/Tests
* Fix Margin.EdgeSubtract
* Fix Capsule.Contains
* EnvironmentVariables.Remove if it's null
* Fixed ray trace never returning startedsolid
* Fix HistoryList.Navigate on empty list
* Fix GameObject.WorldPosition accepting NaNs
* Fix flex: initial expanding to the wrong grow/shrink
* Translation.TryConvert shouldn't throw on invalid enum strings
* Skip sound file tests on machines with no audio device
2026-06-12 13:23:50 +01:00

38 lines
979 B
C#

using Sandbox.Compression;
using System;
using System.Text;
namespace SystemTests;
[TestClass]
public class LZ4Test
{
// maybe we should use some big real-world data here?
const string TestText = "DENTAL PLAN LISA NEEDS BRACES";
string BigText = string.Concat( Enumerable.Repeat( TestText, 256 ) );
[TestMethod]
public void RoundTripBlock()
{
byte[] original = Encoding.UTF8.GetBytes( BigText );
var compressed = LZ4.CompressBlock( original );
var result = new byte[original.Length];
int resultLength = LZ4.DecompressBlock( compressed, result.AsSpan() );
Assert.AreEqual( original.Length, resultLength );
Assert.IsTrue( original.AsSpan().SequenceEqual( result ) );
}
[TestMethod]
public void RoundTripFrame()
{
byte[] original = Encoding.UTF8.GetBytes( BigText );
var compressed = LZ4.CompressFrame( original );
var decompressed = LZ4.DecompressFrame( compressed );
Assert.IsTrue( original.AsSpan().SequenceEqual( decompressed ) );
}
}