Add support FileOnly packing flag

This commit is contained in:
Matt Nadareski
2024-12-07 11:27:54 -05:00
parent 913057003d
commit 5886632d62
3 changed files with 11 additions and 1 deletions

View File

@@ -256,5 +256,11 @@ namespace SabreTools.DatFiles
/// </summary> /// </summary>
[Mapping("flat")] [Mapping("flat")]
Flat, Flat,
/// <summary>
/// Force all sets to have all archives treated as files
/// </summary>
[Mapping("fileonly")]
FileOnly,
} }
} }

View File

@@ -808,6 +808,7 @@ namespace SabreTools.DatTools
PackingFlag.Unzip => OutputFormat.Folder, PackingFlag.Unzip => OutputFormat.Folder,
PackingFlag.Partial => OutputFormat.Folder, PackingFlag.Partial => OutputFormat.Folder,
PackingFlag.Flat => OutputFormat.ParentFolder, PackingFlag.Flat => OutputFormat.ParentFolder,
PackingFlag.FileOnly => OutputFormat.Folder,
PackingFlag.None => OutputFormat.Folder, PackingFlag.None => OutputFormat.Folder,
_ => OutputFormat.Folder, _ => OutputFormat.Folder,
}; };

View File

@@ -290,6 +290,7 @@ namespace SabreTools.Test.Core
[InlineData("unzip", PackingFlag.Unzip)] [InlineData("unzip", PackingFlag.Unzip)]
[InlineData("partial", PackingFlag.Partial)] [InlineData("partial", PackingFlag.Partial)]
[InlineData("flat", PackingFlag.Flat)] [InlineData("flat", PackingFlag.Flat)]
[InlineData("fileonly", PackingFlag.FileOnly)]
public void AsPackingFlagTest(string? field, PackingFlag expected) public void AsPackingFlagTest(string? field, PackingFlag expected)
{ {
PackingFlag actual = field.AsEnumValue<PackingFlag>(); PackingFlag actual = field.AsEnumValue<PackingFlag>();
@@ -638,6 +639,8 @@ namespace SabreTools.Test.Core
[InlineData(PackingFlag.Partial, false, "partial")] [InlineData(PackingFlag.Partial, false, "partial")]
[InlineData(PackingFlag.Flat, true, "flat")] [InlineData(PackingFlag.Flat, true, "flat")]
[InlineData(PackingFlag.Flat, false, "flat")] [InlineData(PackingFlag.Flat, false, "flat")]
[InlineData(PackingFlag.FileOnly, true, "fileonly")]
[InlineData(PackingFlag.FileOnly, false, "fileonly")]
public void FromPackingFlagTest(PackingFlag field, bool useSecond, string? expected) public void FromPackingFlagTest(PackingFlag field, bool useSecond, string? expected)
{ {
string? actual = field.AsStringValue<PackingFlag>(useSecond); string? actual = field.AsStringValue<PackingFlag>(useSecond);
@@ -724,7 +727,7 @@ namespace SabreTools.Test.Core
[InlineData(MergingFlag.None, 12)] [InlineData(MergingFlag.None, 12)]
[InlineData(NodumpFlag.None, 4)] [InlineData(NodumpFlag.None, 4)]
[InlineData(OpenMSXSubType.NULL, 3)] [InlineData(OpenMSXSubType.NULL, 3)]
[InlineData(PackingFlag.None, 7)] [InlineData(PackingFlag.None, 8)]
[InlineData(Relation.NULL, 6)] [InlineData(Relation.NULL, 6)]
[InlineData(Runnable.NULL, 3)] [InlineData(Runnable.NULL, 3)]
[InlineData(SoftwareListStatus.None, 3)] [InlineData(SoftwareListStatus.None, 3)]