Add GCF tests

This commit is contained in:
Matt Nadareski
2026-03-17 14:30:34 -04:00
parent ff02fdb5c3
commit 95f152c105
2 changed files with 39 additions and 5 deletions

View File

@@ -0,0 +1,33 @@
using System.IO;
using BinaryObjectScanner.FileType;
using Xunit;
namespace BinaryObjectScanner.Test.FileType
{
public class GCFTests
{
private static readonly SabreTools.Serialization.Wrappers.GCF wrapper
= new(new SabreTools.Data.Models.GCF.File(), new MemoryStream(new byte[1024]));
[Fact]
public void DetectFile_EmptyString_Null()
{
string file = string.Empty;
var detectable = new GCF(wrapper);
string? actual = detectable.Detect(file, includeDebug: false);
Assert.Null(actual);
}
[Fact]
public void DetectStream_EmptyStream_DefaultValue()
{
Stream? stream = new MemoryStream();
string file = string.Empty;
var detectable = new GCF(wrapper);
string? actual = detectable.Detect(stream, file, includeDebug: false);
Assert.Equal("AACS (Unknown Version)", actual);
}
}
}

View File

@@ -21,12 +21,13 @@ namespace BinaryObjectScanner.FileType
// At the moment, all samples of GCF files on redump are unencrypted. Combined with being uncertain about
// whether this is the best way to check whether the GCF is encrypted, this block will be left commented
// out until further research is done.
/*bool encrypted = false;
if (_wrapper.Files != null && _wrapper.Files.Length > 0)
encrypted = _wrapper.Files[0].Encrypted;
// bool encrypted = false;
// if (_wrapper.Files != null && _wrapper.Files.Length > 0)
// encrypted = _wrapper.Files[0].Encrypted;
// string encryptedString = encrypted ? "encrypted" : "unencrypted";
// string returnString = $"{fileName} - {depotId} (v{manifestVersion}, {encryptedString})";
string encryptedString = encrypted ? "encrypted" : "unencrypted";
string returnString = $"{fileName} - {depotId} (v{manifestVersion}, {encryptedString})";*/
string returnString = $"{fileName} - {depotId} (v{manifestVersion})";
return returnString;
}