Fix incorrect region two-letter code

This commit is contained in:
Matt Nadareski
2022-01-27 21:25:58 -08:00
parent b58a50d246
commit 612d4bb1f5
3 changed files with 32 additions and 4 deletions

View File

@@ -63,6 +63,7 @@
- Fix non-tag tag shortnames
- Fix parsing of non-tag tags again
- Disable unnecessary cuesheet parsing
- Fix incorrect region two-letter code
### 2.2 (2021-12-30)
- Fix Saturn header finding

View File

@@ -255,7 +255,7 @@ namespace MPF.Test.RedumpLib
/// Ensure that every Language that has an ISO 639-1 code is unique
/// </summary>
[Fact]
public void NoDuplicateTwoLetterCodeTest()
public void LanguageNoDuplicateTwoLetterCodeTest()
{
var fullLanguages = Enum.GetValues(typeof(Language)).Cast<Language?>().ToList();
var filteredLanguages = new Dictionary<string, Language?>();
@@ -282,7 +282,7 @@ namespace MPF.Test.RedumpLib
/// Ensure that every Language that has a standard/bibliographic ISO 639-2 code is unique
/// </summary>
[Fact]
public void NoDuplicateThreeLetterCodeTest()
public void LanguageNoDuplicateThreeLetterCodeTest()
{
var fullLanguages = Enum.GetValues(typeof(Language)).Cast<Language?>().ToList();
var filteredLanguages = new Dictionary<string, Language?>();
@@ -309,7 +309,7 @@ namespace MPF.Test.RedumpLib
/// Ensure that every Language that has a terminology ISO 639-2 code is unique
/// </summary>
[Fact]
public void NoDuplicateThreeLetterCodeAltTest()
public void LanguageNoDuplicateThreeLetterCodeAltTest()
{
var fullLanguages = Enum.GetValues(typeof(Language)).Cast<Language?>().ToList();
var filteredLanguages = new Dictionary<string, Language?>();
@@ -474,6 +474,33 @@ namespace MPF.Test.RedumpLib
Assert.NotNull(actual);
}
/// <summary>
/// Ensure that every Language that has an ISO 639-1 code is unique
/// </summary>
[Fact]
public void RegionNoDuplicateShortNameTest()
{
var fullRegions = Enum.GetValues(typeof(Region)).Cast<Region?>().ToList();
var filteredRegions = new Dictionary<string, Region?>();
int totalCount = 0;
foreach (Region? region in fullRegions)
{
string code = region.ShortName();
if (string.IsNullOrWhiteSpace(code))
continue;
// Throw if the code already exists
if (filteredRegions.ContainsKey(code))
throw new DuplicateNameException($"Code {code} already in dictionary");
filteredRegions[code] = region;
totalCount++;
}
Assert.Equal(totalCount, filteredRegions.Count);
}
/// <summary>
/// Generate a test set of Region values
/// </summary>

View File

@@ -2416,7 +2416,7 @@ namespace RedumpLib.Data
[HumanReadable(LongName = "Afghanistan", ShortName = "Af")]
Afghanistan,
[HumanReadable(LongName = "Åland Islands", ShortName = "Af")]
[HumanReadable(LongName = "Åland Islands", ShortName = "Ax")]
AlandIslands,
[HumanReadable(LongName = "Albania", ShortName = "Al")]