mirror of
https://github.com/Facepunch/sbox-public.git
synced 2026-01-21 20:59:56 -05:00
This commit imports the C# engine code and game files, excluding C++ source code. [Source-Commit: ceb3d758046e50faa6258bc3b658a30c97743268]
67 lines
1.4 KiB
C#
67 lines
1.4 KiB
C#
using Sandbox.Audio;
|
|
|
|
[TestClass]
|
|
public class GameAudio
|
|
{
|
|
[TestMethod]
|
|
public void Silence()
|
|
{
|
|
MixBuffer buffer = new MixBuffer();
|
|
buffer.RandomFill();
|
|
Assert.AreNotEqual( 0, buffer.LevelMax );
|
|
buffer.Silence();
|
|
Assert.AreEqual( 0, buffer.LevelMax );
|
|
}
|
|
|
|
[TestMethod]
|
|
public void LevelMax()
|
|
{
|
|
MixBuffer buffer = new MixBuffer();
|
|
buffer.RandomFill();
|
|
Assert.AreEqual( buffer.LevelMax, buffer.Buffer.ToArray().Max() );
|
|
}
|
|
|
|
[TestMethod]
|
|
public void LevelAvg()
|
|
{
|
|
MixBuffer buffer = new MixBuffer();
|
|
buffer.RandomFill();
|
|
Assert.AreEqual( buffer.LevelAvg, buffer.Buffer.ToArray().Average(), 0.001f );
|
|
}
|
|
|
|
[TestMethod]
|
|
public void Copy()
|
|
{
|
|
MixBuffer buffer = new MixBuffer();
|
|
MixBuffer bufferTarget = new MixBuffer();
|
|
bufferTarget.Silence();
|
|
Assert.IsTrue( bufferTarget.LevelAvg == 0 );
|
|
|
|
buffer.RandomFill();
|
|
|
|
Assert.IsFalse( buffer.LevelAvg == 0 );
|
|
|
|
bufferTarget.CopyFrom( buffer );
|
|
|
|
Assert.AreEqual( buffer.LevelAvg, bufferTarget.LevelAvg, 0.001f );
|
|
}
|
|
|
|
|
|
[TestMethod]
|
|
public void MixFrom()
|
|
{
|
|
MixBuffer buffer = new MixBuffer();
|
|
MixBuffer bufferTarget = new MixBuffer();
|
|
bufferTarget.Silence();
|
|
Assert.IsTrue( bufferTarget.LevelAvg == 0 );
|
|
|
|
buffer.RandomFill();
|
|
|
|
Assert.IsFalse( buffer.LevelAvg == 0 );
|
|
|
|
bufferTarget.MixFrom( buffer, 0.5f );
|
|
Assert.AreEqual( buffer.LevelAvg * 0.5f, bufferTarget.LevelAvg, 0.001f );
|
|
}
|
|
|
|
}
|