mirror of
https://github.com/LBPUnion/ProjectLighthouse.git
synced 2025-05-06 02:32:28 +00:00
60 lines
No EOL
1.6 KiB
C#
60 lines
No EOL
1.6 KiB
C#
using System;
|
|
using System.IO;
|
|
using System.Text;
|
|
using LBPUnion.ProjectLighthouse.Types.Files;
|
|
using Xunit;
|
|
|
|
namespace LBPUnion.ProjectLighthouse.Tests;
|
|
|
|
public class FileTypeTests
|
|
{
|
|
[Fact]
|
|
public void ShouldRecognizeLevel()
|
|
{
|
|
LbpFile file = new(File.ReadAllBytes("ExampleFiles/TestLevel.lvl"));
|
|
Assert.True(file.FileType == LbpFileType.Level);
|
|
}
|
|
|
|
[Fact]
|
|
public void ShouldRecognizeScript()
|
|
{
|
|
LbpFile file = new(File.ReadAllBytes("ExampleFiles/TestScript.ff"));
|
|
Assert.True(file.FileType == LbpFileType.Script);
|
|
}
|
|
|
|
[Fact]
|
|
public void ShouldRecognizeTexture()
|
|
{
|
|
LbpFile file = new(File.ReadAllBytes("ExampleFiles/TestTexture.tex"));
|
|
Assert.True(file.FileType == LbpFileType.Texture);
|
|
}
|
|
|
|
[Fact]
|
|
public void ShouldRecognizeFileArchive()
|
|
{
|
|
LbpFile file = new(File.ReadAllBytes("ExampleFiles/TestFarc.farc"));
|
|
Assert.True(file.FileType == LbpFileType.FileArchive);
|
|
}
|
|
|
|
[Fact]
|
|
public void ShouldNotRecognizeFileArchiveAsScript()
|
|
{
|
|
LbpFile file = new(File.ReadAllBytes("ExampleFiles/TestFarc.farc"));
|
|
Assert.False(file.FileType == LbpFileType.Script);
|
|
Assert.True(file.FileType == LbpFileType.FileArchive);
|
|
}
|
|
|
|
[Fact]
|
|
public void ShouldRecognizeNothingAsUnknown()
|
|
{
|
|
LbpFile file = new(Array.Empty<byte>());
|
|
Assert.True(file.FileType == LbpFileType.Unknown);
|
|
}
|
|
|
|
[Fact]
|
|
public void ShouldRecognizeGarbageAsUnknown()
|
|
{
|
|
LbpFile file = new(Encoding.ASCII.GetBytes("free pc only $900"));
|
|
Assert.True(file.FileType == LbpFileType.Unknown);
|
|
}
|
|
} |