diff --git a/SabreTools.Data.Extensions.Test/MetadataExtensionsTests.cs b/SabreTools.Data.Extensions.Test/MetadataExtensionsTests.cs
index df1984f8..145b5211 100644
--- a/SabreTools.Data.Extensions.Test/MetadataExtensionsTests.cs
+++ b/SabreTools.Data.Extensions.Test/MetadataExtensionsTests.cs
@@ -84,10 +84,10 @@ namespace SabreTools.Data.Extensions.Test
DictionaryBase? self = new Media
{
Name = "name",
- [Media.MD5Key] = "XXXXXX",
- [Media.SHA1Key] = "XXXXXX",
- [Media.SHA256Key] = "XXXXXX",
- [Media.SpamSumKey] = "XXXXXX",
+ MD5 = "XXXXXX",
+ SHA1 = "XXXXXX",
+ SHA256 = "XXXXXX",
+ SpamSum = "XXXXXX",
};
Rom? actual = self.ConvertToRom();
@@ -225,17 +225,17 @@ namespace SabreTools.Data.Extensions.Test
{
Media self = new Media
{
- [Media.MD5Key] = "XXXXXX",
- [Media.SHA1Key] = string.Empty,
- [Media.SHA256Key] = "XXXXXX",
- [Media.SpamSumKey] = string.Empty,
+ MD5 = "XXXXXX",
+ SHA1 = string.Empty,
+ SHA256 = "XXXXXX",
+ SpamSum = string.Empty,
};
Media other = new Media
{
- [Media.MD5Key] = string.Empty,
- [Media.SHA1Key] = "XXXXXX",
- [Media.SHA256Key] = string.Empty,
- [Media.SpamSumKey] = "XXXXXX",
+ MD5 = string.Empty,
+ SHA1 = "XXXXXX",
+ SHA256 = string.Empty,
+ SpamSum = "XXXXXX",
};
bool actual = self.HashMatch(other);
@@ -247,17 +247,17 @@ namespace SabreTools.Data.Extensions.Test
{
Media self = new Media
{
- [Media.MD5Key] = "XXXXXX",
- [Media.SHA1Key] = string.Empty,
- [Media.SHA256Key] = string.Empty,
- [Media.SpamSumKey] = string.Empty,
+ MD5 = "XXXXXX",
+ SHA1 = string.Empty,
+ SHA256 = string.Empty,
+ SpamSum = string.Empty,
};
Media other = new Media
{
- [Media.MD5Key] = "XXXXXX",
- [Media.SHA1Key] = "XXXXXX",
- [Media.SHA256Key] = "XXXXXX",
- [Media.SpamSumKey] = "XXXXXX",
+ MD5 = "XXXXXX",
+ SHA1 = "XXXXXX",
+ SHA256 = "XXXXXX",
+ SpamSum = "XXXXXX",
};
bool actual = self.HashMatch(other);
@@ -269,17 +269,17 @@ namespace SabreTools.Data.Extensions.Test
{
Media self = new Media
{
- [Media.MD5Key] = string.Empty,
- [Media.SHA1Key] = "XXXXXX",
- [Media.SHA256Key] = string.Empty,
- [Media.SpamSumKey] = string.Empty,
+ MD5 = string.Empty,
+ SHA1 = "XXXXXX",
+ SHA256 = string.Empty,
+ SpamSum = string.Empty,
};
Media other = new Media
{
- [Media.MD5Key] = "XXXXXX",
- [Media.SHA1Key] = "XXXXXX",
- [Media.SHA256Key] = "XXXXXX",
- [Media.SpamSumKey] = "XXXXXX",
+ MD5 = "XXXXXX",
+ SHA1 = "XXXXXX",
+ SHA256 = "XXXXXX",
+ SpamSum = "XXXXXX",
};
bool actual = self.HashMatch(other);
@@ -291,17 +291,17 @@ namespace SabreTools.Data.Extensions.Test
{
Media self = new Media
{
- [Media.MD5Key] = string.Empty,
- [Media.SHA1Key] = string.Empty,
- [Media.SHA256Key] = "XXXXXX",
- [Media.SpamSumKey] = string.Empty,
+ MD5 = string.Empty,
+ SHA1 = string.Empty,
+ SHA256 = "XXXXXX",
+ SpamSum = string.Empty,
};
Media other = new Media
{
- [Media.MD5Key] = "XXXXXX",
- [Media.SHA1Key] = "XXXXXX",
- [Media.SHA256Key] = "XXXXXX",
- [Media.SpamSumKey] = "XXXXXX",
+ MD5 = "XXXXXX",
+ SHA1 = "XXXXXX",
+ SHA256 = "XXXXXX",
+ SpamSum = "XXXXXX",
};
bool actual = self.HashMatch(other);
@@ -313,17 +313,17 @@ namespace SabreTools.Data.Extensions.Test
{
Media self = new Media
{
- [Media.MD5Key] = string.Empty,
- [Media.SHA1Key] = string.Empty,
- [Media.SHA256Key] = string.Empty,
- [Media.SpamSumKey] = "XXXXXX",
+ MD5 = string.Empty,
+ SHA1 = string.Empty,
+ SHA256 = string.Empty,
+ SpamSum = "XXXXXX",
};
Media other = new Media
{
- [Media.MD5Key] = "XXXXXX",
- [Media.SHA1Key] = "XXXXXX",
- [Media.SHA256Key] = "XXXXXX",
- [Media.SpamSumKey] = "XXXXXX",
+ MD5 = "XXXXXX",
+ SHA1 = "XXXXXX",
+ SHA256 = "XXXXXX",
+ SpamSum = "XXXXXX",
};
bool actual = self.HashMatch(other);
@@ -335,17 +335,17 @@ namespace SabreTools.Data.Extensions.Test
{
Media self = new Media
{
- [Media.MD5Key] = "XXXXXX",
- [Media.SHA1Key] = "XXXXXX",
- [Media.SHA256Key] = "XXXXXX",
- [Media.SpamSumKey] = "XXXXXX",
+ MD5 = "XXXXXX",
+ SHA1 = "XXXXXX",
+ SHA256 = "XXXXXX",
+ SpamSum = "XXXXXX",
};
Media other = new Media
{
- [Media.MD5Key] = "XXXXXX",
- [Media.SHA1Key] = "XXXXXX",
- [Media.SHA256Key] = "XXXXXX",
- [Media.SpamSumKey] = "XXXXXX",
+ MD5 = "XXXXXX",
+ SHA1 = "XXXXXX",
+ SHA256 = "XXXXXX",
+ SpamSum = "XXXXXX",
};
bool actual = self.HashMatch(other);
@@ -1029,10 +1029,10 @@ namespace SabreTools.Data.Extensions.Test
{
DictionaryBase self = new Media
{
- [Media.MD5Key] = "XXXXXX",
- [Media.SHA1Key] = "XXXXXX",
- [Media.SHA256Key] = "XXXXXX",
- [Media.SpamSumKey] = "XXXXXX",
+ MD5 = "XXXXXX",
+ SHA1 = "XXXXXX",
+ SHA256 = "XXXXXX",
+ SpamSum = "XXXXXX",
};
bool actual = self.HasZeroHash();
@@ -1044,10 +1044,10 @@ namespace SabreTools.Data.Extensions.Test
{
DictionaryBase self = new Media
{
- [Media.MD5Key] = HashType.MD5.ZeroString,
- [Media.SHA1Key] = string.Empty,
- [Media.SHA256Key] = string.Empty,
- [Media.SpamSumKey] = string.Empty,
+ MD5 = HashType.MD5.ZeroString,
+ SHA1 = string.Empty,
+ SHA256 = string.Empty,
+ SpamSum = string.Empty,
};
bool actual = self.HasZeroHash();
@@ -1059,10 +1059,10 @@ namespace SabreTools.Data.Extensions.Test
{
DictionaryBase self = new Media
{
- [Media.MD5Key] = string.Empty,
- [Media.SHA1Key] = HashType.SHA1.ZeroString,
- [Media.SHA256Key] = string.Empty,
- [Media.SpamSumKey] = string.Empty,
+ MD5 = string.Empty,
+ SHA1 = HashType.SHA1.ZeroString,
+ SHA256 = string.Empty,
+ SpamSum = string.Empty,
};
bool actual = self.HasZeroHash();
@@ -1074,10 +1074,10 @@ namespace SabreTools.Data.Extensions.Test
{
DictionaryBase self = new Media
{
- [Media.MD5Key] = string.Empty,
- [Media.SHA1Key] = string.Empty,
- [Media.SHA256Key] = HashType.SHA256.ZeroString,
- [Media.SpamSumKey] = string.Empty,
+ MD5 = string.Empty,
+ SHA1 = string.Empty,
+ SHA256 = HashType.SHA256.ZeroString,
+ SpamSum = string.Empty,
};
bool actual = self.HasZeroHash();
@@ -1089,10 +1089,10 @@ namespace SabreTools.Data.Extensions.Test
{
DictionaryBase self = new Media
{
- [Media.MD5Key] = string.Empty,
- [Media.SHA1Key] = string.Empty,
- [Media.SHA256Key] = string.Empty,
- [Media.SpamSumKey] = HashType.SpamSum.ZeroString,
+ MD5 = string.Empty,
+ SHA1 = string.Empty,
+ SHA256 = string.Empty,
+ SpamSum = HashType.SpamSum.ZeroString,
};
bool actual = self.HasZeroHash();
@@ -1104,10 +1104,10 @@ namespace SabreTools.Data.Extensions.Test
{
DictionaryBase self = new Media
{
- [Media.MD5Key] = HashType.MD5.ZeroString,
- [Media.SHA1Key] = HashType.SHA1.ZeroString,
- [Media.SHA256Key] = HashType.SHA256.ZeroString,
- [Media.SpamSumKey] = HashType.SpamSum.ZeroString,
+ MD5 = HashType.MD5.ZeroString,
+ SHA1 = HashType.SHA1.ZeroString,
+ SHA256 = HashType.SHA256.ZeroString,
+ SpamSum = HashType.SpamSum.ZeroString,
};
bool actual = self.HasZeroHash();
@@ -1532,10 +1532,10 @@ namespace SabreTools.Data.Extensions.Test
DictionaryBase self = new Media();
DictionaryBase other = new Media
{
- [Media.MD5Key] = "XXXXXX",
- [Media.SHA1Key] = "XXXXXX",
- [Media.SHA256Key] = "XXXXXX",
- [Media.SpamSumKey] = "XXXXXX",
+ MD5 = "XXXXXX",
+ SHA1 = "XXXXXX",
+ SHA256 = "XXXXXX",
+ SpamSum = "XXXXXX",
};
self.FillMissingHashes(other);
diff --git a/SabreTools.Data.Extensions/MetadataExtensions.cs b/SabreTools.Data.Extensions/MetadataExtensions.cs
index 415af12c..a1702042 100644
--- a/SabreTools.Data.Extensions/MetadataExtensions.cs
+++ b/SabreTools.Data.Extensions/MetadataExtensions.cs
@@ -314,6 +314,13 @@ namespace SabreTools.Data.Extensions
cloneMachine.Runnable = selfMachine.Runnable;
cloneMachine.Supported = selfMachine.Supported;
}
+ else if (self is Media selfMedia && clone is Media cloneMedia)
+ {
+ cloneMedia.MD5 = selfMedia.MD5;
+ cloneMedia.SHA1 = selfMedia.SHA1;
+ cloneMedia.SHA256 = selfMedia.SHA256;
+ cloneMedia.SpamSum = selfMedia.SpamSum;
+ }
else if (self is Part selfPart && clone is Part clonePart)
{
clonePart.Interface = selfPart.Interface;
@@ -431,10 +438,10 @@ namespace SabreTools.Data.Extensions
return new Rom
{
Name = name,
- [Rom.MD5Key] = media.ReadString(Media.MD5Key),
- [Rom.SHA1Key] = media.ReadString(Media.SHA1Key),
- [Rom.SHA256Key] = media.ReadString(Media.SHA256Key),
- [Rom.SpamSumKey] = media.ReadString(Media.SpamSumKey),
+ [Rom.MD5Key] = media.MD5,
+ [Rom.SHA1Key] = media.SHA1,
+ [Rom.SHA256Key] = media.SHA256,
+ [Rom.SpamSumKey] = media.SpamSum,
};
}
@@ -516,21 +523,10 @@ namespace SabreTools.Data.Extensions
return false;
// Return if all hashes match according to merge rules
- string? selfMd5 = self.ReadString(Media.MD5Key);
- string? otherMd5 = other.ReadString(Media.MD5Key);
- bool conditionalMd5 = ConditionalHashEquals(selfMd5, otherMd5);
-
- string? selfSha1 = self.ReadString(Media.SHA1Key);
- string? otherSha1 = other.ReadString(Media.SHA1Key);
- bool conditionalSha1 = ConditionalHashEquals(selfSha1, otherSha1);
-
- string? selfSha256 = self.ReadString(Media.SHA256Key);
- string? otherSha256 = other.ReadString(Media.SHA256Key);
- bool conditionalSha256 = ConditionalHashEquals(selfSha256, otherSha256);
-
- string? selfSpamSum = self.ReadString(Media.SpamSumKey);
- string? otherSpamSum = other.ReadString(Media.SpamSumKey);
- bool conditionalSpamSum = ConditionalHashEquals(selfSpamSum, otherSpamSum);
+ bool conditionalMd5 = ConditionalHashEquals(self.MD5, other.MD5);
+ bool conditionalSha1 = ConditionalHashEquals(self.SHA1, other.SHA1);
+ bool conditionalSha256 = ConditionalHashEquals(self.SHA256, other.SHA256);
+ bool conditionalSpamSum = ConditionalHashEquals(self.SpamSum, other.SpamSum);
return conditionalMd5
&& conditionalSha1
@@ -667,17 +663,17 @@ namespace SabreTools.Data.Extensions
///
private static bool HasCommonHash(this Media self, Media other)
{
- bool md5Null = string.IsNullOrEmpty(self.ReadString(Media.MD5Key));
- md5Null ^= string.IsNullOrEmpty(other.ReadString(Media.MD5Key));
+ bool md5Null = string.IsNullOrEmpty(self.MD5);
+ md5Null ^= string.IsNullOrEmpty(other.MD5);
- bool sha1Null = string.IsNullOrEmpty(self.ReadString(Media.SHA1Key));
- sha1Null ^= string.IsNullOrEmpty(other.ReadString(Media.SHA1Key));
+ bool sha1Null = string.IsNullOrEmpty(self.SHA1);
+ sha1Null ^= string.IsNullOrEmpty(other.SHA1);
- bool sha256Null = string.IsNullOrEmpty(self.ReadString(Media.SHA256Key));
- sha256Null ^= string.IsNullOrEmpty(other.ReadString(Media.SHA256Key));
+ bool sha256Null = string.IsNullOrEmpty(self.SHA256);
+ sha256Null ^= string.IsNullOrEmpty(other.SHA256);
- bool spamsumNull = string.IsNullOrEmpty(self.ReadString(Media.SpamSumKey));
- spamsumNull ^= string.IsNullOrEmpty(other.ReadString(Media.SpamSumKey));
+ bool spamsumNull = string.IsNullOrEmpty(self.SpamSum);
+ spamsumNull ^= string.IsNullOrEmpty(other.SpamSum);
return !md5Null
|| !sha1Null
@@ -761,10 +757,10 @@ namespace SabreTools.Data.Extensions
///
private static bool HasHashes(this Media media)
{
- bool md5Null = string.IsNullOrEmpty(media.ReadString(Media.MD5Key));
- bool sha1Null = string.IsNullOrEmpty(media.ReadString(Media.SHA1Key));
- bool sha256Null = string.IsNullOrEmpty(media.ReadString(Media.SHA256Key));
- bool spamsumNull = string.IsNullOrEmpty(media.ReadString(Media.SpamSumKey));
+ bool md5Null = string.IsNullOrEmpty(media.MD5);
+ bool sha1Null = string.IsNullOrEmpty(media.SHA1);
+ bool sha256Null = string.IsNullOrEmpty(media.SHA256);
+ bool spamsumNull = string.IsNullOrEmpty(media.SpamSum);
return !md5Null
|| !sha1Null
@@ -826,16 +822,16 @@ namespace SabreTools.Data.Extensions
///
private static bool HasZeroHash(this Media media)
{
- string? md5 = media.ReadString(Media.MD5Key);
+ string? md5 = media.MD5;
bool md5Null = string.IsNullOrEmpty(md5) || string.Equals(md5, HashType.MD5.ZeroString, StringComparison.OrdinalIgnoreCase);
- string? sha1 = media.ReadString(Media.SHA1Key);
+ string? sha1 = media.SHA1;
bool sha1Null = string.IsNullOrEmpty(sha1) || string.Equals(sha1, HashType.SHA1.ZeroString, StringComparison.OrdinalIgnoreCase);
- string? sha256 = media.ReadString(Media.SHA256Key);
+ string? sha256 = media.SHA256;
bool sha256Null = string.IsNullOrEmpty(sha256) || string.Equals(sha256, HashType.SHA256.ZeroString, StringComparison.OrdinalIgnoreCase);
- string? spamsum = media.ReadString(Media.SpamSumKey);
+ string? spamsum = media.SpamSum;
bool spamsumNull = string.IsNullOrEmpty(spamsum) || string.Equals(spamsum, HashType.SpamSum.ZeroString, StringComparison.OrdinalIgnoreCase);
return md5Null
@@ -968,25 +964,25 @@ namespace SabreTools.Data.Extensions
if (self is null || other is null)
return;
- string? selfMd5 = self.ReadString(Media.MD5Key);
- string? otherMd5 = other.ReadString(Media.MD5Key);
+ string? selfMd5 = self.MD5;
+ string? otherMd5 = other.MD5;
if (string.IsNullOrEmpty(selfMd5) && !string.IsNullOrEmpty(otherMd5))
- self[Media.MD5Key] = otherMd5;
+ self.MD5 = otherMd5;
- string? selfSha1 = self.ReadString(Media.SHA1Key);
- string? otherSha1 = other.ReadString(Media.SHA1Key);
+ string? selfSha1 = self.SHA1;
+ string? otherSha1 = other.SHA1;
if (string.IsNullOrEmpty(selfSha1) && !string.IsNullOrEmpty(otherSha1))
- self[Media.SHA1Key] = otherSha1;
+ self.SHA1 = otherSha1;
- string? selfSha256 = self.ReadString(Media.SHA256Key);
- string? otherSha256 = other.ReadString(Media.SHA256Key);
+ string? selfSha256 = self.SHA256;
+ string? otherSha256 = other.SHA256;
if (string.IsNullOrEmpty(selfSha256) && !string.IsNullOrEmpty(otherSha256))
- self[Media.SHA256Key] = otherSha256;
+ self.SHA256 = otherSha256;
- string? selfSpamSum = self.ReadString(Media.SpamSumKey);
- string? otherSpamSum = other.ReadString(Media.SpamSumKey);
+ string? selfSpamSum = self.SpamSum;
+ string? otherSpamSum = other.SpamSum;
if (string.IsNullOrEmpty(selfSpamSum) && !string.IsNullOrEmpty(otherSpamSum))
- self[Media.SpamSumKey] = otherSpamSum;
+ self.SpamSum = otherSpamSum;
}
///
diff --git a/SabreTools.Data.Models/Metadata/Media.cs b/SabreTools.Data.Models/Metadata/Media.cs
index cb45c2cc..3e6f2a86 100644
--- a/SabreTools.Data.Models/Metadata/Media.cs
+++ b/SabreTools.Data.Models/Metadata/Media.cs
@@ -3,28 +3,22 @@ using Newtonsoft.Json;
namespace SabreTools.Data.Models.Metadata
{
+ // TODO: ICloneable
+ // TODO: IEquatable
[JsonObject("media"), XmlRoot("media")]
public class Media : DatItem
{
#region Properties
+ public string? MD5 { get; set; }
+
public string? Name { get; set; }
- #endregion
+ public string? SHA1 { get; set; }
- #region Keys
+ public string? SHA256 { get; set; }
- /// string
- public const string MD5Key = "md5";
-
- /// string
- public const string SHA1Key = "sha1";
-
- /// string
- public const string SHA256Key = "sha256";
-
- /// string
- public const string SpamSumKey = "spamsum";
+ public string? SpamSum { get; set; }
#endregion
diff --git a/SabreTools.Metadata.DatFiles.Test/DatFileTests.FromMetadata.cs b/SabreTools.Metadata.DatFiles.Test/DatFileTests.FromMetadata.cs
index f2d6c838..191e5771 100644
--- a/SabreTools.Metadata.DatFiles.Test/DatFileTests.FromMetadata.cs
+++ b/SabreTools.Metadata.DatFiles.Test/DatFileTests.FromMetadata.cs
@@ -684,11 +684,11 @@ namespace SabreTools.Metadata.DatFiles.Test
{
return new Data.Models.Metadata.Media
{
- [Data.Models.Metadata.Media.MD5Key] = HashType.MD5.ZeroString,
+ MD5 = HashType.MD5.ZeroString,
Name = "name",
- [Data.Models.Metadata.Media.SHA1Key] = HashType.SHA1.ZeroString,
- [Data.Models.Metadata.Media.SHA256Key] = HashType.SHA256.ZeroString,
- [Data.Models.Metadata.Media.SpamSumKey] = HashType.SpamSum.ZeroString,
+ SHA1 = HashType.SHA1.ZeroString,
+ SHA256 = HashType.SHA256.ZeroString,
+ SpamSum = HashType.SpamSum.ZeroString,
};
}
@@ -1415,11 +1415,11 @@ namespace SabreTools.Metadata.DatFiles.Test
private static void ValidateMedia(Media? media)
{
Assert.NotNull(media);
- Assert.Equal(HashType.MD5.ZeroString, media.ReadString(Data.Models.Metadata.Media.MD5Key));
+ Assert.Equal(HashType.MD5.ZeroString, media.MD5);
Assert.Equal("name", media.Name);
- Assert.Equal(HashType.SHA1.ZeroString, media.ReadString(Data.Models.Metadata.Media.SHA1Key));
- Assert.Equal(HashType.SHA256.ZeroString, media.ReadString(Data.Models.Metadata.Media.SHA256Key));
- Assert.Equal(HashType.SpamSum.ZeroString, media.ReadString(Data.Models.Metadata.Media.SpamSumKey));
+ Assert.Equal(HashType.SHA1.ZeroString, media.SHA1);
+ Assert.Equal(HashType.SHA256.ZeroString, media.SHA256);
+ Assert.Equal(HashType.SpamSum.ZeroString, media.SpamSum);
}
private static void ValidatePart(Part? part)
diff --git a/SabreTools.Metadata.DatFiles.Test/DatFileTests.ToMetadata.cs b/SabreTools.Metadata.DatFiles.Test/DatFileTests.ToMetadata.cs
index a5637a63..9f06ee63 100644
--- a/SabreTools.Metadata.DatFiles.Test/DatFileTests.ToMetadata.cs
+++ b/SabreTools.Metadata.DatFiles.Test/DatFileTests.ToMetadata.cs
@@ -950,11 +950,11 @@ namespace SabreTools.Metadata.DatFiles.Test
private static void ValidateMetadataMedia(Data.Models.Metadata.Media? media)
{
Assert.NotNull(media);
- Assert.Equal(HashType.MD5.ZeroString, media.ReadString(Data.Models.Metadata.Media.MD5Key));
+ Assert.Equal(HashType.MD5.ZeroString, media.MD5);
Assert.Equal("name", media.Name);
- Assert.Equal(HashType.SHA1.ZeroString, media.ReadString(Data.Models.Metadata.Media.SHA1Key));
- Assert.Equal(HashType.SHA256.ZeroString, media.ReadString(Data.Models.Metadata.Media.SHA256Key));
- Assert.Equal(HashType.SpamSum.ZeroString, media.ReadString(Data.Models.Metadata.Media.SpamSumKey));
+ Assert.Equal(HashType.SHA1.ZeroString, media.SHA1);
+ Assert.Equal(HashType.SHA256.ZeroString, media.SHA256);
+ Assert.Equal(HashType.SpamSum.ZeroString, media.SpamSum);
}
private static void ValidateMetadataPart(Data.Models.Metadata.Part? part)
diff --git a/SabreTools.Metadata.DatFiles.Test/DatFileTests.cs b/SabreTools.Metadata.DatFiles.Test/DatFileTests.cs
index b773c286..b4f8cd89 100644
--- a/SabreTools.Metadata.DatFiles.Test/DatFileTests.cs
+++ b/SabreTools.Metadata.DatFiles.Test/DatFileTests.cs
@@ -1448,12 +1448,14 @@ namespace SabreTools.Metadata.DatFiles.Test
machine.Write(Data.Models.Metadata.Machine.PublisherKey, "publisher");
machine.Write(Data.Models.Metadata.Machine.CategoryKey, "category");
- DatItem item = new Media();
+ DatItem item = new Media
+ {
+ MD5 = "md5",
+ SHA1 = "sha1",
+ SHA256 = "sha256",
+ SpamSum = "spamsum",
+ };
item.SetName("name");
- item.Write(Data.Models.Metadata.Media.MD5Key, "md5");
- item.Write(Data.Models.Metadata.Media.SHA1Key, "sha1");
- item.Write(Data.Models.Metadata.Media.SHA256Key, "sha256");
- item.Write(Data.Models.Metadata.Media.SpamSumKey, "spamsum");
string actual = DatFile.FormatPrefixPostfix(item, machine, fix);
Assert.Equal(expected, actual);
@@ -1731,8 +1733,7 @@ namespace SabreTools.Metadata.DatFiles.Test
public void GetDuplicateSuffix_Media_MD5()
{
string hash = "XXXXXX";
- DatItem datItem = new Media();
- datItem.Write(Data.Models.Metadata.Media.MD5Key, hash);
+ DatItem datItem = new Media() { MD5 = hash };
string actual = DatFile.GetDuplicateSuffix(datItem);
Assert.Equal($"_{hash}", actual);
@@ -1742,8 +1743,7 @@ namespace SabreTools.Metadata.DatFiles.Test
public void GetDuplicateSuffix_Media_SHA1()
{
string hash = "XXXXXX";
- DatItem datItem = new Media();
- datItem.Write(Data.Models.Metadata.Media.SHA1Key, hash);
+ DatItem datItem = new Media() { SHA1 = hash };
string actual = DatFile.GetDuplicateSuffix(datItem);
Assert.Equal($"_{hash}", actual);
@@ -1753,8 +1753,7 @@ namespace SabreTools.Metadata.DatFiles.Test
public void GetDuplicateSuffix_Media_SHA256()
{
string hash = "XXXXXX";
- DatItem datItem = new Media();
- datItem.Write(Data.Models.Metadata.Media.SHA256Key, hash);
+ DatItem datItem = new Media() { SHA256 = hash };
string actual = DatFile.GetDuplicateSuffix(datItem);
Assert.Equal($"_{hash}", actual);
@@ -1764,8 +1763,7 @@ namespace SabreTools.Metadata.DatFiles.Test
public void GetDuplicateSuffix_Media_SpamSum()
{
string hash = "XXXXXX";
- DatItem datItem = new Media();
- datItem.Write(Data.Models.Metadata.Media.SpamSumKey, hash);
+ DatItem datItem = new Media() { SpamSum = hash };
string actual = DatFile.GetDuplicateSuffix(datItem);
Assert.Equal($"_{hash}", actual);
diff --git a/SabreTools.Metadata.DatFiles.Test/DatStatisticsTests.cs b/SabreTools.Metadata.DatFiles.Test/DatStatisticsTests.cs
index 3e9827f3..37541b0c 100644
--- a/SabreTools.Metadata.DatFiles.Test/DatStatisticsTests.cs
+++ b/SabreTools.Metadata.DatFiles.Test/DatStatisticsTests.cs
@@ -284,10 +284,10 @@ namespace SabreTools.Metadata.DatFiles.Test
{
var media = new Media();
- media.Write(Data.Models.Metadata.Media.MD5Key, HashType.MD5.ZeroString);
- media.Write(Data.Models.Metadata.Media.SHA1Key, HashType.SHA1.ZeroString);
- media.Write(Data.Models.Metadata.Media.SHA256Key, HashType.SHA256.ZeroString);
- media.Write(Data.Models.Metadata.Media.SpamSumKey, HashType.SpamSum.ZeroString);
+ media.MD5 = HashType.MD5.ZeroString;
+ media.SHA1 = HashType.SHA1.ZeroString;
+ media.SHA256 = HashType.SHA256.ZeroString;
+ media.SpamSum = HashType.SpamSum.ZeroString;
return media;
}
diff --git a/SabreTools.Metadata.DatFiles.Test/FormatsTests.cs b/SabreTools.Metadata.DatFiles.Test/FormatsTests.cs
index deabf3d3..d9e32108 100644
--- a/SabreTools.Metadata.DatFiles.Test/FormatsTests.cs
+++ b/SabreTools.Metadata.DatFiles.Test/FormatsTests.cs
@@ -442,7 +442,7 @@ namespace SabreTools.Metadata.DatFiles.Test
Assert.NotNull(actual);
Assert.True(actual.SequenceEqual([
nameof(Data.Models.Metadata.Media.Name),
- Data.Models.Metadata.Media.MD5Key,
+ nameof(Data.Models.Metadata.Media.MD5),
]));
}
@@ -549,7 +549,7 @@ namespace SabreTools.Metadata.DatFiles.Test
Assert.NotNull(actual);
Assert.True(actual.SequenceEqual([
nameof(Data.Models.Metadata.Media.Name),
- Data.Models.Metadata.Media.SHA1Key,
+ nameof(Data.Models.Metadata.Media.SHA1),
]));
}
@@ -590,7 +590,7 @@ namespace SabreTools.Metadata.DatFiles.Test
Assert.NotNull(actual);
Assert.True(actual.SequenceEqual([
nameof(Data.Models.Metadata.Media.Name),
- Data.Models.Metadata.Media.SHA256Key,
+ nameof(Data.Models.Metadata.Media.SHA256),
]));
}
@@ -681,7 +681,7 @@ namespace SabreTools.Metadata.DatFiles.Test
Assert.NotNull(actual);
Assert.True(actual.SequenceEqual([
nameof(Data.Models.Metadata.Media.Name),
- Data.Models.Metadata.Media.SpamSumKey,
+ nameof(Data.Models.Metadata.Media.SpamSum),
]));
}
@@ -1154,7 +1154,7 @@ namespace SabreTools.Metadata.DatFiles.Test
Assert.NotNull(actual);
Assert.True(actual.SequenceEqual([
nameof(Data.Models.Metadata.Media.Name),
- Data.Models.Metadata.Media.SHA1Key,
+ nameof(Data.Models.Metadata.Media.SHA1),
]));
}
@@ -1406,7 +1406,7 @@ namespace SabreTools.Metadata.DatFiles.Test
Assert.NotNull(actual);
Assert.True(actual.SequenceEqual([
nameof(Data.Models.Metadata.Media.Name),
- Data.Models.Metadata.Media.SHA1Key,
+ nameof(Data.Models.Metadata.Media.SHA1),
]));
}
@@ -1464,7 +1464,7 @@ namespace SabreTools.Metadata.DatFiles.Test
Assert.NotNull(actual);
Assert.True(actual.SequenceEqual([
nameof(Data.Models.Metadata.Media.Name),
- Data.Models.Metadata.Media.SHA1Key,
+ nameof(Data.Models.Metadata.Media.SHA1),
]));
}
@@ -1522,7 +1522,7 @@ namespace SabreTools.Metadata.DatFiles.Test
Assert.NotNull(actual);
Assert.True(actual.SequenceEqual([
nameof(Data.Models.Metadata.Media.Name),
- Data.Models.Metadata.Media.SHA1Key,
+ nameof(Data.Models.Metadata.Media.SHA1),
]));
}
diff --git a/SabreTools.Metadata.DatFiles.Test/ItemDictionaryDBTests.cs b/SabreTools.Metadata.DatFiles.Test/ItemDictionaryDBTests.cs
index 4e249bff..35c0235b 100644
--- a/SabreTools.Metadata.DatFiles.Test/ItemDictionaryDBTests.cs
+++ b/SabreTools.Metadata.DatFiles.Test/ItemDictionaryDBTests.cs
@@ -96,9 +96,8 @@ namespace SabreTools.Metadata.DatFiles.Test
Source source = new Source(0, source: null);
Machine machine = new Machine();
- DatItem media = new Media();
+ DatItem media = new Media() { SHA1 = "deadbeef" };
media.SetName("item");
- media.Write(Data.Models.Metadata.Media.SHA1Key, "deadbeef");
var dict = new ItemDictionaryDB();
long sourceIndex = dict.AddSource(source);
diff --git a/SabreTools.Metadata.DatFiles.Test/ItemDictionaryTests.cs b/SabreTools.Metadata.DatFiles.Test/ItemDictionaryTests.cs
index b92fd822..160c9ee9 100644
--- a/SabreTools.Metadata.DatFiles.Test/ItemDictionaryTests.cs
+++ b/SabreTools.Metadata.DatFiles.Test/ItemDictionaryTests.cs
@@ -96,9 +96,8 @@ namespace SabreTools.Metadata.DatFiles.Test
Source source = new Source(0, source: null);
Machine machine = new Machine();
- DatItem media = new Media();
+ DatItem media = new Media() { SHA1 = "deadbeef" };
media.SetName("item");
- media.Write(Data.Models.Metadata.Media.SHA1Key, "deadbeef");
media.Source = source;
media.Machine = machine;
diff --git a/SabreTools.Metadata.DatFiles/DatFile.cs b/SabreTools.Metadata.DatFiles/DatFile.cs
index 150560c7..27c3bf96 100644
--- a/SabreTools.Metadata.DatFiles/DatFile.cs
+++ b/SabreTools.Metadata.DatFiles/DatFile.cs
@@ -523,7 +523,7 @@ namespace SabreTools.Metadata.DatFiles
else if (item is Media media)
{
// We can only write out if there's a SHA-1
- string? sha1 = media.ReadString(Data.Models.Metadata.Media.SHA1Key);
+ string? sha1 = media.SHA1;
if (!string.IsNullOrEmpty(sha1))
{
name = Utilities.GetDepotPath(sha1, Modifiers.OutputDepot.Depth)?.Replace('\\', '/');
@@ -620,10 +620,10 @@ namespace SabreTools.Metadata.DatFiles
}
else if (item is Media media)
{
- md5 = media.ReadString(Data.Models.Metadata.Media.MD5Key) ?? string.Empty;
- sha1 = media.ReadString(Data.Models.Metadata.Media.SHA1Key) ?? string.Empty;
- sha256 = media.ReadString(Data.Models.Metadata.Media.SHA256Key) ?? string.Empty;
- spamsum = media.ReadString(Data.Models.Metadata.Media.SpamSumKey) ?? string.Empty;
+ md5 = media.MD5 ?? string.Empty;
+ sha1 = media.SHA1 ?? string.Empty;
+ sha256 = media.SHA256 ?? string.Empty;
+ spamsum = media.SpamSum ?? string.Empty;
}
else if (item is Rom rom)
{
@@ -1072,19 +1072,19 @@ namespace SabreTools.Metadata.DatFiles
///
private static string GetDuplicateSuffix(Media datItem)
{
- string? md5 = datItem.ReadString(Data.Models.Metadata.Media.MD5Key);
+ string? md5 = datItem.MD5;
if (!string.IsNullOrEmpty(md5))
return $"_{md5}";
- string? sha1 = datItem.ReadString(Data.Models.Metadata.Media.SHA1Key);
+ string? sha1 = datItem.SHA1;
if (!string.IsNullOrEmpty(sha1))
return $"_{sha1}";
- string? sha256 = datItem.ReadString(Data.Models.Metadata.Media.SHA256Key);
+ string? sha256 = datItem.SHA256;
if (!string.IsNullOrEmpty(sha256))
return $"_{sha256}";
- string? spamSum = datItem.ReadString(Data.Models.Metadata.Media.SpamSumKey);
+ string? spamSum = datItem.SpamSum;
if (!string.IsNullOrEmpty(spamSum))
return $"_{spamSum}";
diff --git a/SabreTools.Metadata.DatFiles/DatStatistics.cs b/SabreTools.Metadata.DatFiles/DatStatistics.cs
index 146f6f95..2cc3a271 100644
--- a/SabreTools.Metadata.DatFiles/DatStatistics.cs
+++ b/SabreTools.Metadata.DatFiles/DatStatistics.cs
@@ -359,10 +359,10 @@ namespace SabreTools.Metadata.DatFiles
/// Item to add info from
private void AddItemStatistics(Media media)
{
- AddHashCount(HashType.MD5, string.IsNullOrEmpty(media.ReadString(Data.Models.Metadata.Media.MD5Key)) ? 0 : 1);
- AddHashCount(HashType.SHA1, string.IsNullOrEmpty(media.ReadString(Data.Models.Metadata.Media.SHA1Key)) ? 0 : 1);
- AddHashCount(HashType.SHA256, string.IsNullOrEmpty(media.ReadString(Data.Models.Metadata.Media.SHA256Key)) ? 0 : 1);
- AddHashCount(HashType.SpamSum, string.IsNullOrEmpty(media.ReadString(Data.Models.Metadata.Media.SpamSumKey)) ? 0 : 1);
+ AddHashCount(HashType.MD5, string.IsNullOrEmpty(media.MD5) ? 0 : 1);
+ AddHashCount(HashType.SHA1, string.IsNullOrEmpty(media.SHA1) ? 0 : 1);
+ AddHashCount(HashType.SHA256, string.IsNullOrEmpty(media.SHA256) ? 0 : 1);
+ AddHashCount(HashType.SpamSum, string.IsNullOrEmpty(media.SpamSum) ? 0 : 1);
}
///
@@ -488,10 +488,10 @@ namespace SabreTools.Metadata.DatFiles
/// Item to remove info for
private void RemoveItemStatistics(Media media)
{
- RemoveHashCount(HashType.MD5, string.IsNullOrEmpty(media.ReadString(Data.Models.Metadata.Media.MD5Key)) ? 0 : 1);
- RemoveHashCount(HashType.SHA1, string.IsNullOrEmpty(media.ReadString(Data.Models.Metadata.Media.SHA1Key)) ? 0 : 1);
- RemoveHashCount(HashType.SHA256, string.IsNullOrEmpty(media.ReadString(Data.Models.Metadata.Media.SHA256Key)) ? 0 : 1);
- RemoveHashCount(HashType.SpamSum, string.IsNullOrEmpty(media.ReadString(Data.Models.Metadata.Media.SpamSumKey)) ? 0 : 1);
+ RemoveHashCount(HashType.MD5, string.IsNullOrEmpty(media.MD5) ? 0 : 1);
+ RemoveHashCount(HashType.SHA1, string.IsNullOrEmpty(media.SHA1) ? 0 : 1);
+ RemoveHashCount(HashType.SHA256, string.IsNullOrEmpty(media.SHA256) ? 0 : 1);
+ RemoveHashCount(HashType.SpamSum, string.IsNullOrEmpty(media.SpamSum) ? 0 : 1);
}
///
diff --git a/SabreTools.Metadata.DatFiles/Formats/Logiqx.cs b/SabreTools.Metadata.DatFiles/Formats/Logiqx.cs
index 3e31fb2f..e57375ed 100644
--- a/SabreTools.Metadata.DatFiles/Formats/Logiqx.cs
+++ b/SabreTools.Metadata.DatFiles/Formats/Logiqx.cs
@@ -317,12 +317,12 @@ namespace SabreTools.Metadata.DatFiles.Formats
case Media media:
if (string.IsNullOrEmpty(media.Name))
missingFields.Add(nameof(Data.Models.Metadata.Media.Name));
- if (string.IsNullOrEmpty(media.ReadString(Data.Models.Metadata.Media.MD5Key))
- && string.IsNullOrEmpty(media.ReadString(Data.Models.Metadata.Media.SHA1Key))
- && string.IsNullOrEmpty(media.ReadString(Data.Models.Metadata.Media.SHA256Key))
- && string.IsNullOrEmpty(media.ReadString(Data.Models.Metadata.Media.SpamSumKey)))
+ if (string.IsNullOrEmpty(media.MD5)
+ && string.IsNullOrEmpty(media.SHA1)
+ && string.IsNullOrEmpty(media.SHA256)
+ && string.IsNullOrEmpty(media.SpamSum))
{
- missingFields.Add(Data.Models.Metadata.Media.SHA1Key);
+ missingFields.Add(nameof(Data.Models.Metadata.Media.SHA1));
}
break;
diff --git a/SabreTools.Metadata.DatFiles/Formats/Md5File.cs b/SabreTools.Metadata.DatFiles/Formats/Md5File.cs
index d3b5baa4..1814519f 100644
--- a/SabreTools.Metadata.DatFiles/Formats/Md5File.cs
+++ b/SabreTools.Metadata.DatFiles/Formats/Md5File.cs
@@ -45,8 +45,8 @@ namespace SabreTools.Metadata.DatFiles.Formats
break;
case Media medium:
- if (string.IsNullOrEmpty(medium.ReadString(Data.Models.Metadata.Media.MD5Key)))
- missingFields.Add(Data.Models.Metadata.Media.MD5Key);
+ if (string.IsNullOrEmpty(medium.MD5))
+ missingFields.Add(nameof(Data.Models.Metadata.Media.MD5));
break;
case Rom rom:
diff --git a/SabreTools.Metadata.DatFiles/Formats/SeparatedValue.cs b/SabreTools.Metadata.DatFiles/Formats/SeparatedValue.cs
index 52613e24..f8309329 100644
--- a/SabreTools.Metadata.DatFiles/Formats/SeparatedValue.cs
+++ b/SabreTools.Metadata.DatFiles/Formats/SeparatedValue.cs
@@ -82,12 +82,12 @@ namespace SabreTools.Metadata.DatFiles.Formats
break;
case Media media:
- if (string.IsNullOrEmpty(media.ReadString(Data.Models.Metadata.Media.MD5Key))
- && string.IsNullOrEmpty(media.ReadString(Data.Models.Metadata.Media.SHA1Key))
- && string.IsNullOrEmpty(media.ReadString(Data.Models.Metadata.Media.SHA256Key))
- && string.IsNullOrEmpty(media.ReadString(Data.Models.Metadata.Media.SpamSumKey)))
+ if (string.IsNullOrEmpty(media.MD5)
+ && string.IsNullOrEmpty(media.SHA1)
+ && string.IsNullOrEmpty(media.SHA256)
+ && string.IsNullOrEmpty(media.SpamSum))
{
- missingFields.Add(Data.Models.Metadata.Media.SHA1Key);
+ missingFields.Add(nameof(Data.Models.Metadata.Media.SHA1));
}
break;
diff --git a/SabreTools.Metadata.DatFiles/Formats/Sha1File.cs b/SabreTools.Metadata.DatFiles/Formats/Sha1File.cs
index ef7ddfe2..d8a4296d 100644
--- a/SabreTools.Metadata.DatFiles/Formats/Sha1File.cs
+++ b/SabreTools.Metadata.DatFiles/Formats/Sha1File.cs
@@ -45,8 +45,8 @@ namespace SabreTools.Metadata.DatFiles.Formats
break;
case Media medium:
- if (string.IsNullOrEmpty(medium.ReadString(Data.Models.Metadata.Media.SHA1Key)))
- missingFields.Add(Data.Models.Metadata.Media.SHA1Key);
+ if (string.IsNullOrEmpty(medium.SHA1))
+ missingFields.Add(nameof(Data.Models.Metadata.Media.SHA1));
break;
case Rom rom:
diff --git a/SabreTools.Metadata.DatFiles/Formats/Sha256File.cs b/SabreTools.Metadata.DatFiles/Formats/Sha256File.cs
index e24a29d3..2a486680 100644
--- a/SabreTools.Metadata.DatFiles/Formats/Sha256File.cs
+++ b/SabreTools.Metadata.DatFiles/Formats/Sha256File.cs
@@ -39,8 +39,8 @@ namespace SabreTools.Metadata.DatFiles.Formats
switch (datItem)
{
case Media medium:
- if (string.IsNullOrEmpty(medium.ReadString(Data.Models.Metadata.Media.SHA256Key)))
- missingFields.Add(Data.Models.Metadata.Media.SHA256Key);
+ if (string.IsNullOrEmpty(medium.SHA256))
+ missingFields.Add(nameof(Data.Models.Metadata.Media.SHA256));
break;
case Rom rom:
diff --git a/SabreTools.Metadata.DatFiles/Formats/SpamSumFile.cs b/SabreTools.Metadata.DatFiles/Formats/SpamSumFile.cs
index 17661e36..8383c5a3 100644
--- a/SabreTools.Metadata.DatFiles/Formats/SpamSumFile.cs
+++ b/SabreTools.Metadata.DatFiles/Formats/SpamSumFile.cs
@@ -39,8 +39,8 @@ namespace SabreTools.Metadata.DatFiles.Formats
switch (datItem)
{
case Media medium:
- if (string.IsNullOrEmpty(medium.ReadString(Data.Models.Metadata.Media.SpamSumKey)))
- missingFields.Add(Data.Models.Metadata.Media.SpamSumKey);
+ if (string.IsNullOrEmpty(medium.SpamSum))
+ missingFields.Add(nameof(Data.Models.Metadata.Media.SpamSum));
break;
case Rom rom:
diff --git a/SabreTools.Metadata.DatFiles/ItemDictionary.cs b/SabreTools.Metadata.DatFiles/ItemDictionary.cs
index acd8c9f9..ae78be01 100644
--- a/SabreTools.Metadata.DatFiles/ItemDictionary.cs
+++ b/SabreTools.Metadata.DatFiles/ItemDictionary.cs
@@ -124,10 +124,10 @@ namespace SabreTools.Metadata.DatFiles
else if (item is Media media)
{
// If the file has aboslutely no hashes, skip and log
- if (string.IsNullOrEmpty(media.ReadString(Data.Models.Metadata.Media.MD5Key))
- && string.IsNullOrEmpty(media.ReadString(Data.Models.Metadata.Media.SHA1Key))
- && string.IsNullOrEmpty(media.ReadString(Data.Models.Metadata.Media.SHA256Key))
- && string.IsNullOrEmpty(media.ReadString(Data.Models.Metadata.Media.SpamSumKey)))
+ if (string.IsNullOrEmpty(media.MD5)
+ && string.IsNullOrEmpty(media.SHA1)
+ && string.IsNullOrEmpty(media.SHA256)
+ && string.IsNullOrEmpty(media.SpamSum))
{
_logger.Verbose($"Incomplete entry for '{media.Name}' will be output as nodump");
}
diff --git a/SabreTools.Metadata.DatFiles/ItemDictionaryDB.cs b/SabreTools.Metadata.DatFiles/ItemDictionaryDB.cs
index f75d98e4..7d071d4a 100644
--- a/SabreTools.Metadata.DatFiles/ItemDictionaryDB.cs
+++ b/SabreTools.Metadata.DatFiles/ItemDictionaryDB.cs
@@ -213,10 +213,10 @@ namespace SabreTools.Metadata.DatFiles
else if (item is Media media)
{
// If the file has aboslutely no hashes, skip and log
- if (string.IsNullOrEmpty(media.ReadString(Data.Models.Metadata.Media.MD5Key))
- && string.IsNullOrEmpty(media.ReadString(Data.Models.Metadata.Media.SHA1Key))
- && string.IsNullOrEmpty(media.ReadString(Data.Models.Metadata.Media.SHA256Key))
- && string.IsNullOrEmpty(media.ReadString(Data.Models.Metadata.Media.SpamSumKey)))
+ if (string.IsNullOrEmpty(media.MD5)
+ && string.IsNullOrEmpty(media.SHA1)
+ && string.IsNullOrEmpty(media.SHA256)
+ && string.IsNullOrEmpty(media.SpamSum))
{
_logger.Verbose($"Incomplete entry for '{media.Name}' will be output as nodump");
}
diff --git a/SabreTools.Metadata.DatItems.Test/Formats/MediaTests.cs b/SabreTools.Metadata.DatItems.Test/Formats/MediaTests.cs
index 81783000..3fd13ea8 100644
--- a/SabreTools.Metadata.DatItems.Test/Formats/MediaTests.cs
+++ b/SabreTools.Metadata.DatItems.Test/Formats/MediaTests.cs
@@ -17,10 +17,10 @@ namespace SabreTools.Metadata.DatItems.Formats.Test
Media media = new Media();
media.Name = "name";
- media.Write(Data.Models.Metadata.Media.MD5Key, HashType.MD5.ZeroString);
- media.Write(Data.Models.Metadata.Media.SHA1Key, HashType.SHA1.ZeroString);
- media.Write(Data.Models.Metadata.Media.SHA256Key, HashType.SHA256.ZeroString);
- media.Write(Data.Models.Metadata.Media.SpamSumKey, HashType.SpamSum.ZeroString);
+ media.MD5 = HashType.MD5.ZeroString;
+ media.SHA1 = HashType.SHA1.ZeroString;
+ media.SHA256 = HashType.SHA256.ZeroString;
+ media.SpamSum = HashType.SpamSum.ZeroString;
media.DupeType = DupeType.All | DupeType.External;
media.Machine = machine;
media.RemoveFlag = false;
@@ -59,10 +59,10 @@ namespace SabreTools.Metadata.DatItems.Formats.Test
self.FillMissingInformation(other);
- Assert.Null(self.ReadString(Data.Models.Metadata.Media.MD5Key));
- Assert.Null(self.ReadString(Data.Models.Metadata.Media.SHA1Key));
- Assert.Null(self.ReadString(Data.Models.Metadata.Media.SHA256Key));
- Assert.Null(self.ReadString(Data.Models.Metadata.Media.SpamSumKey));
+ Assert.Null(self.MD5);
+ Assert.Null(self.SHA1);
+ Assert.Null(self.SHA256);
+ Assert.Null(self.SpamSum);
}
[Fact]
@@ -71,17 +71,17 @@ namespace SabreTools.Metadata.DatItems.Formats.Test
Media self = new Media();
Media other = new Media();
- other.Write(Data.Models.Metadata.Media.MD5Key, "XXXXXX");
- other.Write(Data.Models.Metadata.Media.SHA1Key, "XXXXXX");
- other.Write(Data.Models.Metadata.Media.SHA256Key, "XXXXXX");
- other.Write(Data.Models.Metadata.Media.SpamSumKey, "XXXXXX");
+ other.MD5 = "XXXXXX";
+ other.SHA1 = "XXXXXX";
+ other.SHA256 = "XXXXXX";
+ other.SpamSum = "XXXXXX";
self.FillMissingInformation(other);
- Assert.Equal("XXXXXX", self.ReadString(Data.Models.Metadata.Media.MD5Key));
- Assert.Equal("XXXXXX", self.ReadString(Data.Models.Metadata.Media.SHA1Key));
- Assert.Equal("XXXXXX", self.ReadString(Data.Models.Metadata.Media.SHA256Key));
- Assert.Equal("XXXXXX", self.ReadString(Data.Models.Metadata.Media.SpamSumKey));
+ Assert.Equal("XXXXXX", self.MD5);
+ Assert.Equal("XXXXXX", self.SHA1);
+ Assert.Equal("XXXXXX", self.SHA256);
+ Assert.Equal("XXXXXX", self.SpamSum);
}
#endregion
@@ -100,10 +100,10 @@ namespace SabreTools.Metadata.DatItems.Formats.Test
public void HasHashes_MD5_True()
{
Media self = new Media();
- self.Write(Data.Models.Metadata.Media.MD5Key, "XXXXXX");
- self.Write(Data.Models.Metadata.Media.SHA1Key, string.Empty);
- self.Write(Data.Models.Metadata.Media.SHA256Key, string.Empty);
- self.Write(Data.Models.Metadata.Media.SpamSumKey, string.Empty);
+ self.MD5 = "XXXXXX";
+ self.SHA1 = string.Empty;
+ self.SHA256 = string.Empty;
+ self.SpamSum = string.Empty;
bool actual = self.HasHashes();
Assert.True(actual);
@@ -113,10 +113,10 @@ namespace SabreTools.Metadata.DatItems.Formats.Test
public void HasHashes_SHA1_True()
{
Media self = new Media();
- self.Write(Data.Models.Metadata.Media.MD5Key, string.Empty);
- self.Write(Data.Models.Metadata.Media.SHA1Key, "XXXXXX");
- self.Write(Data.Models.Metadata.Media.SHA256Key, string.Empty);
- self.Write(Data.Models.Metadata.Media.SpamSumKey, string.Empty);
+ self.MD5 = string.Empty;
+ self.SHA1 = "XXXXXX";
+ self.SHA256 = string.Empty;
+ self.SpamSum = string.Empty;
bool actual = self.HasHashes();
Assert.True(actual);
@@ -126,10 +126,10 @@ namespace SabreTools.Metadata.DatItems.Formats.Test
public void HasHashes_SHA256_True()
{
Media self = new Media();
- self.Write(Data.Models.Metadata.Media.MD5Key, string.Empty);
- self.Write(Data.Models.Metadata.Media.SHA1Key, string.Empty);
- self.Write(Data.Models.Metadata.Media.SHA256Key, "XXXXXX");
- self.Write(Data.Models.Metadata.Media.SpamSumKey, string.Empty);
+ self.MD5 = string.Empty;
+ self.SHA1 = string.Empty;
+ self.SHA256 = "XXXXXX";
+ self.SpamSum = string.Empty;
bool actual = self.HasHashes();
Assert.True(actual);
@@ -139,10 +139,10 @@ namespace SabreTools.Metadata.DatItems.Formats.Test
public void HasHashes_SpamSum_True()
{
Media self = new Media();
- self.Write(Data.Models.Metadata.Media.MD5Key, string.Empty);
- self.Write(Data.Models.Metadata.Media.SHA1Key, string.Empty);
- self.Write(Data.Models.Metadata.Media.SHA256Key, string.Empty);
- self.Write(Data.Models.Metadata.Media.SpamSumKey, "XXXXXX");
+ self.MD5 = string.Empty;
+ self.SHA1 = string.Empty;
+ self.SHA256 = string.Empty;
+ self.SpamSum = "XXXXXX";
bool actual = self.HasHashes();
Assert.True(actual);
@@ -152,10 +152,10 @@ namespace SabreTools.Metadata.DatItems.Formats.Test
public void HasHashes_All_True()
{
Media self = new Media();
- self.Write(Data.Models.Metadata.Media.MD5Key, "XXXXXX");
- self.Write(Data.Models.Metadata.Media.SHA1Key, "XXXXXX");
- self.Write(Data.Models.Metadata.Media.SHA256Key, "XXXXXX");
- self.Write(Data.Models.Metadata.Media.SpamSumKey, "XXXXXX");
+ self.MD5 = "XXXXXX";
+ self.SHA1 = "XXXXXX";
+ self.SHA256 = "XXXXXX";
+ self.SpamSum = "XXXXXX";
bool actual = self.HasHashes();
Assert.True(actual);
@@ -177,10 +177,10 @@ namespace SabreTools.Metadata.DatItems.Formats.Test
public void HasZeroHash_NonZeroHash_False()
{
Media self = new Media();
- self.Write(Data.Models.Metadata.Media.MD5Key, "XXXXXX");
- self.Write(Data.Models.Metadata.Media.SHA1Key, "XXXXXX");
- self.Write(Data.Models.Metadata.Media.SHA256Key, "XXXXXX");
- self.Write(Data.Models.Metadata.Media.SpamSumKey, "XXXXXX");
+ self.MD5 = "XXXXXX";
+ self.SHA1 = "XXXXXX";
+ self.SHA256 = "XXXXXX";
+ self.SpamSum = "XXXXXX";
bool actual = self.HasZeroHash();
Assert.False(actual);
@@ -190,10 +190,10 @@ namespace SabreTools.Metadata.DatItems.Formats.Test
public void HasZeroHash_ZeroMD5_True()
{
Media self = new Media();
- self.Write(Data.Models.Metadata.Media.MD5Key, HashType.MD5.ZeroString);
- self.Write(Data.Models.Metadata.Media.SHA1Key, string.Empty);
- self.Write(Data.Models.Metadata.Media.SHA256Key, string.Empty);
- self.Write(Data.Models.Metadata.Media.SpamSumKey, string.Empty);
+ self.MD5 = HashType.MD5.ZeroString;
+ self.SHA1 = string.Empty;
+ self.SHA256 = string.Empty;
+ self.SpamSum = string.Empty;
bool actual = self.HasZeroHash();
Assert.True(actual);
@@ -203,10 +203,10 @@ namespace SabreTools.Metadata.DatItems.Formats.Test
public void HasZeroHash_ZeroSHA1_True()
{
Media self = new Media();
- self.Write(Data.Models.Metadata.Media.MD5Key, string.Empty);
- self.Write(Data.Models.Metadata.Media.SHA1Key, HashType.SHA1.ZeroString);
- self.Write(Data.Models.Metadata.Media.SHA256Key, string.Empty);
- self.Write(Data.Models.Metadata.Media.SpamSumKey, string.Empty);
+ self.MD5 = string.Empty;
+ self.SHA1 = HashType.SHA1.ZeroString;
+ self.SHA256 = string.Empty;
+ self.SpamSum = string.Empty;
bool actual = self.HasZeroHash();
Assert.True(actual);
@@ -216,10 +216,10 @@ namespace SabreTools.Metadata.DatItems.Formats.Test
public void HasZeroHash_ZeroSHA256_True()
{
Media self = new Media();
- self.Write(Data.Models.Metadata.Media.MD5Key, string.Empty);
- self.Write(Data.Models.Metadata.Media.SHA1Key, string.Empty);
- self.Write(Data.Models.Metadata.Media.SHA256Key, HashType.SHA256.ZeroString);
- self.Write(Data.Models.Metadata.Media.SpamSumKey, string.Empty);
+ self.MD5 = string.Empty;
+ self.SHA1 = string.Empty;
+ self.SHA256 = HashType.SHA256.ZeroString;
+ self.SpamSum = string.Empty;
bool actual = self.HasZeroHash();
Assert.True(actual);
@@ -229,10 +229,10 @@ namespace SabreTools.Metadata.DatItems.Formats.Test
public void HasZeroHash_ZeroSpamSum_True()
{
Media self = new Media();
- self.Write(Data.Models.Metadata.Media.MD5Key, string.Empty);
- self.Write(Data.Models.Metadata.Media.SHA1Key, string.Empty);
- self.Write(Data.Models.Metadata.Media.SHA256Key, string.Empty);
- self.Write(Data.Models.Metadata.Media.SpamSumKey, HashType.SpamSum.ZeroString);
+ self.MD5 = string.Empty;
+ self.SHA1 = string.Empty;
+ self.SHA256 = string.Empty;
+ self.SpamSum = HashType.SpamSum.ZeroString;
bool actual = self.HasZeroHash();
Assert.True(actual);
@@ -242,10 +242,10 @@ namespace SabreTools.Metadata.DatItems.Formats.Test
public void HasZeroHash_ZeroAll_True()
{
Media self = new Media();
- self.Write(Data.Models.Metadata.Media.MD5Key, HashType.MD5.ZeroString);
- self.Write(Data.Models.Metadata.Media.SHA1Key, HashType.SHA1.ZeroString);
- self.Write(Data.Models.Metadata.Media.SHA256Key, HashType.SHA256.ZeroString);
- self.Write(Data.Models.Metadata.Media.SpamSumKey, HashType.SpamSum.ZeroString);
+ self.MD5 = HashType.MD5.ZeroString;
+ self.SHA1 = HashType.SHA1.ZeroString;
+ self.SHA256 = HashType.SHA256.ZeroString;
+ self.SpamSum = HashType.SpamSum.ZeroString;
bool actual = self.HasZeroHash();
Assert.True(actual);
@@ -308,12 +308,13 @@ namespace SabreTools.Metadata.DatItems.Formats.Test
Machine machine = new Machine();
machine.Name = "Machine";
- DatItem datItem = new Media();
- datItem.Write(Data.Models.Metadata.Media.MD5Key, "DEADBEEF");
- datItem.Write(Data.Models.Metadata.Media.SHA1Key, "DEADBEEF");
- datItem.Write(Data.Models.Metadata.Media.SHA256Key, "DEADBEEF");
- datItem.Write(Data.Models.Metadata.Media.SpamSumKey, "DEADBEEF");
-
+ DatItem datItem = new Media
+ {
+ MD5 = "DEADBEEF",
+ SHA1 = "DEADBEEF",
+ SHA256 = "DEADBEEF",
+ SpamSum = "DEADBEEF"
+ };
string actual = datItem.GetKey(bucketedBy, machine, source, lower, norename);
Assert.Equal(expected, actual);
}
diff --git a/SabreTools.Metadata.DatItems/Formats/Media.cs b/SabreTools.Metadata.DatItems/Formats/Media.cs
index 75bc3f0c..fc949752 100644
--- a/SabreTools.Metadata.DatItems/Formats/Media.cs
+++ b/SabreTools.Metadata.DatItems/Formats/Media.cs
@@ -13,6 +13,12 @@ namespace SabreTools.Metadata.DatItems.Formats
{
#region Fields
+ public string? MD5
+ {
+ get => (_internal as Data.Models.Metadata.Media)?.MD5;
+ set => (_internal as Data.Models.Metadata.Media)?.MD5 = value;
+ }
+
/// />
public override Data.Models.Metadata.ItemType ItemType
=> Data.Models.Metadata.ItemType.Media;
@@ -23,6 +29,24 @@ namespace SabreTools.Metadata.DatItems.Formats
set => (_internal as Data.Models.Metadata.Media)?.Name = value;
}
+ public string? SHA1
+ {
+ get => (_internal as Data.Models.Metadata.Media)?.SHA1;
+ set => (_internal as Data.Models.Metadata.Media)?.SHA1 = value;
+ }
+
+ public string? SHA256
+ {
+ get => (_internal as Data.Models.Metadata.Media)?.SHA256;
+ set => (_internal as Data.Models.Metadata.Media)?.SHA256 = value;
+ }
+
+ public string? SpamSum
+ {
+ get => (_internal as Data.Models.Metadata.Media)?.SpamSum;
+ set => (_internal as Data.Models.Metadata.Media)?.SpamSum = value;
+ }
+
#endregion
#region Constructors
@@ -37,17 +61,14 @@ namespace SabreTools.Metadata.DatItems.Formats
DupeType = 0x00;
// Process hash values
- string? md5 = ReadString(Data.Models.Metadata.Media.MD5Key);
- if (md5 is not null)
- Write(Data.Models.Metadata.Media.MD5Key, TextHelper.NormalizeMD5(md5));
+ if (MD5 is not null)
+ MD5 = TextHelper.NormalizeMD5(MD5);
- string? sha1 = ReadString(Data.Models.Metadata.Media.SHA1Key);
- if (sha1 is not null)
- Write(Data.Models.Metadata.Media.SHA1Key, TextHelper.NormalizeSHA1(sha1));
+ if (SHA1 is not null)
+ SHA1 = TextHelper.NormalizeSHA1(SHA1);
- string? sha256 = ReadString(Data.Models.Metadata.Media.SHA256Key);
- if (sha256 is not null)
- Write(Data.Models.Metadata.Media.SHA256Key, TextHelper.NormalizeSHA256(sha256));
+ if (SHA256 is not null)
+ SHA256 = TextHelper.NormalizeSHA256(SHA256);
}
public Media(Data.Models.Metadata.Media item, Machine machine, Source source) : this(item)
@@ -117,19 +138,19 @@ namespace SabreTools.Metadata.DatItems.Formats
switch (bucketedBy)
{
case ItemKey.MD5:
- key = ReadString(Data.Models.Metadata.Media.MD5Key);
+ key = MD5;
break;
case ItemKey.SHA1:
- key = ReadString(Data.Models.Metadata.Media.SHA1Key);
+ key = SHA1;
break;
case ItemKey.SHA256:
- key = ReadString(Data.Models.Metadata.Media.SHA256Key);
+ key = SHA256;
break;
case ItemKey.SpamSum:
- key = ReadString(Data.Models.Metadata.Media.SpamSumKey);
+ key = SpamSum;
break;
// Let the base handle generic stuff
diff --git a/SabreTools.Metadata.Filter/FilterObject.cs b/SabreTools.Metadata.Filter/FilterObject.cs
index 486430f2..77230f7f 100644
--- a/SabreTools.Metadata.Filter/FilterObject.cs
+++ b/SabreTools.Metadata.Filter/FilterObject.cs
@@ -752,6 +752,19 @@ namespace SabreTools.Metadata.Filter
checkValue = item.Supported?.AsStringValue();
return true;
+ case Media item when fieldName == "md5":
+ checkValue = item.MD5;
+ return true;
+ case Media item when fieldName == "sha1":
+ checkValue = item.SHA1;
+ return true;
+ case Media item when fieldName == "sha256":
+ checkValue = item.SHA256;
+ return true;
+ case Media item when fieldName == "spamsum":
+ checkValue = item.SpamSum;
+ return true;
+
case Original item when fieldName == "content":
checkValue = item.Content;
return true;
diff --git a/SabreTools.Metadata.Test/DictionaryBaseExtensionsTests.cs b/SabreTools.Metadata.Test/DictionaryBaseExtensionsTests.cs
index fcc21628..6843ca01 100644
--- a/SabreTools.Metadata.Test/DictionaryBaseExtensionsTests.cs
+++ b/SabreTools.Metadata.Test/DictionaryBaseExtensionsTests.cs
@@ -125,18 +125,18 @@ namespace SabreTools.Metadata.Test
DictionaryBase self = new Media
{
Name = "name",
- [Media.MD5Key] = "XXXXXX",
- [Media.SHA1Key] = string.Empty,
- [Media.SHA256Key] = "XXXXXX",
- [Media.SpamSumKey] = string.Empty,
+ MD5 = "XXXXXX",
+ SHA1 = string.Empty,
+ SHA256 = "XXXXXX",
+ SpamSum = string.Empty,
};
DictionaryBase other = new Media
{
Name = "name",
- [Media.MD5Key] = string.Empty,
- [Media.SHA1Key] = "XXXXXX",
- [Media.SHA256Key] = string.Empty,
- [Media.SpamSumKey] = "XXXXXX",
+ MD5 = string.Empty,
+ SHA1 = "XXXXXX",
+ SHA256 = string.Empty,
+ SpamSum = "XXXXXX",
};
bool actual = self.EqualTo(other);
@@ -149,18 +149,18 @@ namespace SabreTools.Metadata.Test
DictionaryBase self = new Media
{
Name = "name",
- [Media.MD5Key] = "XXXXXX",
- [Media.SHA1Key] = string.Empty,
- [Media.SHA256Key] = string.Empty,
- [Media.SpamSumKey] = string.Empty,
+ MD5 = "XXXXXX",
+ SHA1 = string.Empty,
+ SHA256 = string.Empty,
+ SpamSum = string.Empty,
};
DictionaryBase other = new Media
{
Name = "name",
- [Media.MD5Key] = "XXXXXX",
- [Media.SHA1Key] = "XXXXXX",
- [Media.SHA256Key] = "XXXXXX",
- [Media.SpamSumKey] = "XXXXXX",
+ MD5 = "XXXXXX",
+ SHA1 = "XXXXXX",
+ SHA256 = "XXXXXX",
+ SpamSum = "XXXXXX",
};
bool actual = self.EqualTo(other);
@@ -173,18 +173,18 @@ namespace SabreTools.Metadata.Test
DictionaryBase self = new Media
{
Name = "name",
- [Media.MD5Key] = string.Empty,
- [Media.SHA1Key] = "XXXXXX",
- [Media.SHA256Key] = string.Empty,
- [Media.SpamSumKey] = string.Empty,
+ MD5 = string.Empty,
+ SHA1 = "XXXXXX",
+ SHA256 = string.Empty,
+ SpamSum = string.Empty,
};
DictionaryBase other = new Media
{
Name = "name",
- [Media.MD5Key] = "XXXXXX",
- [Media.SHA1Key] = "XXXXXX",
- [Media.SHA256Key] = "XXXXXX",
- [Media.SpamSumKey] = "XXXXXX",
+ MD5 = "XXXXXX",
+ SHA1 = "XXXXXX",
+ SHA256 = "XXXXXX",
+ SpamSum = "XXXXXX",
};
bool actual = self.EqualTo(other);
@@ -197,18 +197,18 @@ namespace SabreTools.Metadata.Test
DictionaryBase self = new Media
{
Name = "name",
- [Media.MD5Key] = string.Empty,
- [Media.SHA1Key] = string.Empty,
- [Media.SHA256Key] = "XXXXXX",
- [Media.SpamSumKey] = string.Empty,
+ MD5 = string.Empty,
+ SHA1 = string.Empty,
+ SHA256 = "XXXXXX",
+ SpamSum = string.Empty,
};
DictionaryBase other = new Media
{
Name = "name",
- [Media.MD5Key] = "XXXXXX",
- [Media.SHA1Key] = "XXXXXX",
- [Media.SHA256Key] = "XXXXXX",
- [Media.SpamSumKey] = "XXXXXX",
+ MD5 = "XXXXXX",
+ SHA1 = "XXXXXX",
+ SHA256 = "XXXXXX",
+ SpamSum = "XXXXXX",
};
bool actual = self.EqualTo(other);
@@ -221,18 +221,18 @@ namespace SabreTools.Metadata.Test
DictionaryBase self = new Media
{
Name = "name",
- [Media.MD5Key] = string.Empty,
- [Media.SHA1Key] = string.Empty,
- [Media.SHA256Key] = string.Empty,
- [Media.SpamSumKey] = "XXXXXX",
+ MD5 = string.Empty,
+ SHA1 = string.Empty,
+ SHA256 = string.Empty,
+ SpamSum = "XXXXXX",
};
DictionaryBase other = new Media
{
Name = "name",
- [Media.MD5Key] = "XXXXXX",
- [Media.SHA1Key] = "XXXXXX",
- [Media.SHA256Key] = "XXXXXX",
- [Media.SpamSumKey] = "XXXXXX",
+ MD5 = "XXXXXX",
+ SHA1 = "XXXXXX",
+ SHA256 = "XXXXXX",
+ SpamSum = "XXXXXX",
};
bool actual = self.EqualTo(other);
@@ -245,18 +245,18 @@ namespace SabreTools.Metadata.Test
DictionaryBase self = new Media
{
Name = "name",
- [Media.MD5Key] = "XXXXXX",
- [Media.SHA1Key] = "XXXXXX",
- [Media.SHA256Key] = "XXXXXX",
- [Media.SpamSumKey] = "XXXXXX",
+ MD5 = "XXXXXX",
+ SHA1 = "XXXXXX",
+ SHA256 = "XXXXXX",
+ SpamSum = "XXXXXX",
};
DictionaryBase other = new Media
{
Name = "name",
- [Media.MD5Key] = "XXXXXX",
- [Media.SHA1Key] = "XXXXXX",
- [Media.SHA256Key] = "XXXXXX",
- [Media.SpamSumKey] = "XXXXXX",
+ MD5 = "XXXXXX",
+ SHA1 = "XXXXXX",
+ SHA256 = "XXXXXX",
+ SpamSum = "XXXXXX",
};
bool actual = self.EqualTo(other);
diff --git a/SabreTools.Serialization.CrossModel.Test/ClrMameProTests.cs b/SabreTools.Serialization.CrossModel.Test/ClrMameProTests.cs
index 07d56805..e585e699 100644
--- a/SabreTools.Serialization.CrossModel.Test/ClrMameProTests.cs
+++ b/SabreTools.Serialization.CrossModel.Test/ClrMameProTests.cs
@@ -148,10 +148,10 @@ namespace SabreTools.Serialization.CrossModel.Test
var media = new Data.Models.ClrMamePro.Media
{
Name = "name",
- MD5 = "XXXXXX",
- SHA1 = "XXXXXX",
- SHA256 = "XXXXXX",
- SpamSum = "XXXXXX",
+ MD5 = "md5",
+ SHA1 = "sha1",
+ SHA256 = "sha256",
+ SpamSum = "spamsum",
};
var chip = new Data.Models.ClrMamePro.Chip
@@ -427,10 +427,10 @@ namespace SabreTools.Serialization.CrossModel.Test
{
Assert.NotNull(media);
Assert.Equal("name", media.Name);
- Assert.Equal("XXXXXX", media.MD5);
- Assert.Equal("XXXXXX", media.SHA1);
- Assert.Equal("XXXXXX", media.SHA256);
- Assert.Equal("XXXXXX", media.SpamSum);
+ Assert.Equal("md5", media.MD5);
+ Assert.Equal("sha1", media.SHA1);
+ Assert.Equal("sha256", media.SHA256);
+ Assert.Equal("spamsum", media.SpamSum);
}
///
diff --git a/SabreTools.Serialization.CrossModel.Test/LogiqxTests.cs b/SabreTools.Serialization.CrossModel.Test/LogiqxTests.cs
index b6b78d2c..9f86e1cc 100644
--- a/SabreTools.Serialization.CrossModel.Test/LogiqxTests.cs
+++ b/SabreTools.Serialization.CrossModel.Test/LogiqxTests.cs
@@ -186,10 +186,10 @@ namespace SabreTools.Serialization.CrossModel.Test
var media = new Data.Models.Logiqx.Media
{
Name = "name",
- MD5 = "XXXXXX",
- SHA1 = "XXXXXX",
- SHA256 = "XXXXXX",
- SpamSum = "XXXXXX",
+ MD5 = "md5",
+ SHA1 = "sha1",
+ SHA256 = "sha256",
+ SpamSum = "spamsum",
};
var deviceRef = new Data.Models.Logiqx.DeviceRef
@@ -510,10 +510,10 @@ namespace SabreTools.Serialization.CrossModel.Test
{
Assert.NotNull(media);
Assert.Equal("name", media.Name);
- Assert.Equal("XXXXXX", media.MD5);
- Assert.Equal("XXXXXX", media.SHA1);
- Assert.Equal("XXXXXX", media.SHA256);
- Assert.Equal("XXXXXX", media.SpamSum);
+ Assert.Equal("md5", media.MD5);
+ Assert.Equal("sha1", media.SHA1);
+ Assert.Equal("sha256", media.SHA256);
+ Assert.Equal("spamsum", media.SpamSum);
}
///
diff --git a/SabreTools.Serialization.CrossModel.Test/SeparatedValueTests.cs b/SabreTools.Serialization.CrossModel.Test/SeparatedValueTests.cs
index 3afef91f..d9510877 100644
--- a/SabreTools.Serialization.CrossModel.Test/SeparatedValueTests.cs
+++ b/SabreTools.Serialization.CrossModel.Test/SeparatedValueTests.cs
@@ -61,10 +61,10 @@ namespace SabreTools.Serialization.CrossModel.Test
GameDescription = "description",
Type = "media",
DiskName = "XXXXXX",
- MD5 = "XXXXXX",
- SHA1 = "XXXXXX",
- SHA256 = "XXXXXX",
- SpamSum = "XXXXXX",
+ MD5 = "md5",
+ SHA1 = "sha1",
+ SHA256 = "sha256",
+ SpamSum = "spamsum",
};
var rom = new Data.Models.SeparatedValue.Row
@@ -145,12 +145,12 @@ namespace SabreTools.Serialization.CrossModel.Test
Assert.Equal("XXXXXX", row.DiskName);
Assert.Null(row.Size);
Assert.Null(row.CRC);
- Assert.Equal("XXXXXX", row.MD5);
- Assert.Equal("XXXXXX", row.SHA1);
- Assert.Equal("XXXXXX", row.SHA256);
+ Assert.Equal("md5", row.MD5);
+ Assert.Equal("sha1", row.SHA1);
+ Assert.Equal("sha256", row.SHA256);
Assert.Null(row.SHA384);
Assert.Null(row.SHA512);
- Assert.Equal("XXXXXX", row.SpamSum);
+ Assert.Equal("spamsum", row.SpamSum);
Assert.Null(row.Status);
}
diff --git a/SabreTools.Serialization.CrossModel/ClrMamePro.Deserializer.cs b/SabreTools.Serialization.CrossModel/ClrMamePro.Deserializer.cs
index 1b5748fd..fcce54b6 100644
--- a/SabreTools.Serialization.CrossModel/ClrMamePro.Deserializer.cs
+++ b/SabreTools.Serialization.CrossModel/ClrMamePro.Deserializer.cs
@@ -247,10 +247,10 @@ namespace SabreTools.Serialization.CrossModel
var media = new Media
{
Name = item.Name,
- MD5 = item.ReadString(Data.Models.Metadata.Media.MD5Key),
- SHA1 = item.ReadString(Data.Models.Metadata.Media.SHA1Key),
- SHA256 = item.ReadString(Data.Models.Metadata.Media.SHA256Key),
- SpamSum = item.ReadString(Data.Models.Metadata.Media.SpamSumKey),
+ MD5 = item.MD5,
+ SHA1 = item.SHA1,
+ SHA256 = item.SHA256,
+ SpamSum = item.SpamSum,
};
return media;
}
diff --git a/SabreTools.Serialization.CrossModel/ClrMamePro.Serializer.cs b/SabreTools.Serialization.CrossModel/ClrMamePro.Serializer.cs
index 7df8a8af..44565ac2 100644
--- a/SabreTools.Serialization.CrossModel/ClrMamePro.Serializer.cs
+++ b/SabreTools.Serialization.CrossModel/ClrMamePro.Serializer.cs
@@ -260,10 +260,10 @@ namespace SabreTools.Serialization.CrossModel
var media = new Data.Models.Metadata.Media
{
Name = item.Name,
- [Data.Models.Metadata.Media.MD5Key] = item.MD5,
- [Data.Models.Metadata.Media.SHA1Key] = item.SHA1,
- [Data.Models.Metadata.Media.SHA256Key] = item.SHA256,
- [Data.Models.Metadata.Media.SpamSumKey] = item.SpamSum,
+ MD5 = item.MD5,
+ SHA1 = item.SHA1,
+ SHA256 = item.SHA256,
+ SpamSum = item.SpamSum,
};
return media;
}
diff --git a/SabreTools.Serialization.CrossModel/Logiqx.Deserializer.cs b/SabreTools.Serialization.CrossModel/Logiqx.Deserializer.cs
index a265cf11..152e1d59 100644
--- a/SabreTools.Serialization.CrossModel/Logiqx.Deserializer.cs
+++ b/SabreTools.Serialization.CrossModel/Logiqx.Deserializer.cs
@@ -269,10 +269,10 @@ namespace SabreTools.Serialization.CrossModel
var media = new Media
{
Name = item.Name,
- MD5 = item.ReadString(Data.Models.Metadata.Media.MD5Key),
- SHA1 = item.ReadString(Data.Models.Metadata.Media.SHA1Key),
- SHA256 = item.ReadString(Data.Models.Metadata.Media.SHA256Key),
- SpamSum = item.ReadString(Data.Models.Metadata.Media.SpamSumKey),
+ MD5 = item.MD5,
+ SHA1 = item.SHA1,
+ SHA256 = item.SHA256,
+ SpamSum = item.SpamSum,
};
return media;
}
diff --git a/SabreTools.Serialization.CrossModel/Logiqx.Serializer.cs b/SabreTools.Serialization.CrossModel/Logiqx.Serializer.cs
index ffb914f1..afe6f728 100644
--- a/SabreTools.Serialization.CrossModel/Logiqx.Serializer.cs
+++ b/SabreTools.Serialization.CrossModel/Logiqx.Serializer.cs
@@ -263,10 +263,10 @@ namespace SabreTools.Serialization.CrossModel
var media = new Data.Models.Metadata.Media
{
Name = item.Name,
- [Data.Models.Metadata.Media.MD5Key] = item.MD5,
- [Data.Models.Metadata.Media.SHA1Key] = item.SHA1,
- [Data.Models.Metadata.Media.SHA256Key] = item.SHA256,
- [Data.Models.Metadata.Media.SpamSumKey] = item.SpamSum,
+ MD5 = item.MD5,
+ SHA1 = item.SHA1,
+ SHA256 = item.SHA256,
+ SpamSum = item.SpamSum,
};
return media;
}
diff --git a/SabreTools.Serialization.CrossModel/SeparatedValue.Deserializer.cs b/SabreTools.Serialization.CrossModel/SeparatedValue.Deserializer.cs
index 2d9c5377..acc2cfdc 100644
--- a/SabreTools.Serialization.CrossModel/SeparatedValue.Deserializer.cs
+++ b/SabreTools.Serialization.CrossModel/SeparatedValue.Deserializer.cs
@@ -114,12 +114,12 @@ namespace SabreTools.Serialization.CrossModel
DiskName = item.Name,
Size = null,
CRC = null,
- MD5 = item.ReadString(Data.Models.Metadata.Media.MD5Key),
- SHA1 = item.ReadString(Data.Models.Metadata.Media.SHA1Key),
- SHA256 = item.ReadString(Data.Models.Metadata.Media.SHA256Key),
+ MD5 = item.MD5,
+ SHA1 = item.SHA1,
+ SHA256 = item.SHA256,
SHA384 = null,
SHA512 = null,
- SpamSum = item.ReadString(Data.Models.Metadata.Media.SpamSumKey),
+ SpamSum = item.SpamSum,
};
return row;
}
diff --git a/SabreTools.Serialization.CrossModel/SeparatedValue.Serializer.cs b/SabreTools.Serialization.CrossModel/SeparatedValue.Serializer.cs
index a3fb9f8e..89ce378a 100644
--- a/SabreTools.Serialization.CrossModel/SeparatedValue.Serializer.cs
+++ b/SabreTools.Serialization.CrossModel/SeparatedValue.Serializer.cs
@@ -97,10 +97,10 @@ namespace SabreTools.Serialization.CrossModel
"media" => new Data.Models.Metadata.Media
{
Name = item.DiskName,
- [Data.Models.Metadata.Media.MD5Key] = item.MD5,
- [Data.Models.Metadata.Media.SHA1Key] = item.SHA1,
- [Data.Models.Metadata.Media.SHA256Key] = item.SHA256,
- [Data.Models.Metadata.Media.SpamSumKey] = item.SpamSum,
+ MD5 = item.MD5,
+ SHA1 = item.SHA1,
+ SHA256 = item.SHA256,
+ SpamSum = item.SpamSum,
},
"rom" => new Data.Models.Metadata.Rom
{
diff --git a/SabreTools.Serialization.Readers.Test/ClrMameProTests.cs b/SabreTools.Serialization.Readers.Test/ClrMameProTests.cs
index 088fc654..814a7f34 100644
--- a/SabreTools.Serialization.Readers.Test/ClrMameProTests.cs
+++ b/SabreTools.Serialization.Readers.Test/ClrMameProTests.cs
@@ -265,10 +265,10 @@ namespace SabreTools.Serialization.Readers.Test
var media = new Data.Models.ClrMamePro.Media
{
Name = "name",
- MD5 = "XXXXXX",
- SHA1 = "XXXXXX",
- SHA256 = "XXXXXX",
- SpamSum = "XXXXXX",
+ MD5 = "md5",
+ SHA1 = "sha1",
+ SHA256 = "sha256",
+ SpamSum = "spamsum",
};
var chip = new Data.Models.ClrMamePro.Chip
@@ -544,10 +544,10 @@ namespace SabreTools.Serialization.Readers.Test
{
Assert.NotNull(media);
Assert.Equal("name", media.Name);
- Assert.Equal("XXXXXX", media.MD5);
- Assert.Equal("XXXXXX", media.SHA1);
- Assert.Equal("XXXXXX", media.SHA256);
- Assert.Equal("XXXXXX", media.SpamSum);
+ Assert.Equal("md5", media.MD5);
+ Assert.Equal("sha1", media.SHA1);
+ Assert.Equal("sha256", media.SHA256);
+ Assert.Equal("spamsum", media.SpamSum);
}
///
diff --git a/SabreTools.Serialization.Readers.Test/LogiqxTests.cs b/SabreTools.Serialization.Readers.Test/LogiqxTests.cs
index 0717566b..90eb74a1 100644
--- a/SabreTools.Serialization.Readers.Test/LogiqxTests.cs
+++ b/SabreTools.Serialization.Readers.Test/LogiqxTests.cs
@@ -251,10 +251,10 @@ namespace SabreTools.Serialization.Readers.Test
var media = new Data.Models.Logiqx.Media
{
Name = "name",
- MD5 = "XXXXXX",
- SHA1 = "XXXXXX",
- SHA256 = "XXXXXX",
- SpamSum = "XXXXXX",
+ MD5 = "md5",
+ SHA1 = "sha1",
+ SHA256 = "sha256",
+ SpamSum = "spamsum",
};
var deviceRef = new Data.Models.Logiqx.DeviceRef
@@ -558,10 +558,10 @@ namespace SabreTools.Serialization.Readers.Test
{
Assert.NotNull(media);
Assert.Equal("name", media.Name);
- Assert.Equal("XXXXXX", media.MD5);
- Assert.Equal("XXXXXX", media.SHA1);
- Assert.Equal("XXXXXX", media.SHA256);
- Assert.Equal("XXXXXX", media.SpamSum);
+ Assert.Equal("md5", media.MD5);
+ Assert.Equal("sha1", media.SHA1);
+ Assert.Equal("sha256", media.SHA256);
+ Assert.Equal("spamsum", media.SpamSum);
}
///
diff --git a/SabreTools.Serialization.Readers.Test/SeparatedValueTests.cs b/SabreTools.Serialization.Readers.Test/SeparatedValueTests.cs
index 9a91d9fe..9b59072a 100644
--- a/SabreTools.Serialization.Readers.Test/SeparatedValueTests.cs
+++ b/SabreTools.Serialization.Readers.Test/SeparatedValueTests.cs
@@ -156,10 +156,10 @@ namespace SabreTools.Serialization.Readers.Test
GameDescription = "description",
Type = "media",
DiskName = "XXXXXX",
- MD5 = "XXXXXX",
- SHA1 = "XXXXXX",
- SHA256 = "XXXXXX",
- SpamSum = "XXXXXX",
+ MD5 = "md5",
+ SHA1 = "sha1",
+ SHA256 = "sha256",
+ SpamSum = "spamsum",
};
var rom = new Data.Models.SeparatedValue.Row
@@ -252,14 +252,14 @@ namespace SabreTools.Serialization.Readers.Test
Assert.Equal("XXXXXX", row.DiskName);
Assert.Null(row.Size);
Assert.NotNull(row.CRC); Assert.Empty(row.CRC);
- Assert.Equal("XXXXXX", row.MD5);
- Assert.Equal("XXXXXX", row.SHA1);
- Assert.Equal("XXXXXX", row.SHA256);
+ Assert.Equal("md5", row.MD5);
+ Assert.Equal("sha1", row.SHA1);
+ Assert.Equal("sha256", row.SHA256);
if (longHeader)
{
Assert.NotNull(row.SHA384); Assert.Empty(row.SHA384);
Assert.NotNull(row.SHA512); Assert.Empty(row.SHA512);
- Assert.Equal("XXXXXX", row.SpamSum);
+ Assert.Equal("spamsum", row.SpamSum);
}
else
{