Fix mana affix column leakage
This commit is contained in:
@@ -137,6 +137,70 @@ public sealed class StandardCriticalTableParserIntegrationTests
|
||||
Assert.DoesNotContain('\uF06C', row100C.DescriptionText);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public async Task Mana_affix_boundaries_keep_71_75_a_and_b_separate()
|
||||
{
|
||||
var entry = LoadManifest().Tables.Single(item => string.Equals(item.Slug, "mana", StringComparison.Ordinal));
|
||||
var parseResult = await LoadParseResultAsync(entry);
|
||||
var row71A = parseResult.Table.Results.Single(item =>
|
||||
string.Equals(item.RollBandLabel, "71-75", StringComparison.Ordinal) &&
|
||||
string.Equals(item.ColumnKey, "A", StringComparison.Ordinal));
|
||||
var row71B = parseResult.Table.Results.Single(item =>
|
||||
string.Equals(item.RollBandLabel, "71-75", StringComparison.Ordinal) &&
|
||||
string.Equals(item.ColumnKey, "B", StringComparison.Ordinal));
|
||||
|
||||
Assert.DoesNotContain("+10H -", row71A.RawAffixText, StringComparison.Ordinal);
|
||||
Assert.Contains("+10H -", row71B.RawAffixText, StringComparison.Ordinal);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public async Task Mana_affix_boundaries_keep_71_75_d_and_e_separate()
|
||||
{
|
||||
var entry = LoadManifest().Tables.Single(item => string.Equals(item.Slug, "mana", StringComparison.Ordinal));
|
||||
var parseResult = await LoadParseResultAsync(entry);
|
||||
var row71D = parseResult.Table.Results.Single(item =>
|
||||
string.Equals(item.RollBandLabel, "71-75", StringComparison.Ordinal) &&
|
||||
string.Equals(item.ColumnKey, "D", StringComparison.Ordinal));
|
||||
var row71E = parseResult.Table.Results.Single(item =>
|
||||
string.Equals(item.RollBandLabel, "71-75", StringComparison.Ordinal) &&
|
||||
string.Equals(item.ColumnKey, "E", StringComparison.Ordinal));
|
||||
|
||||
Assert.DoesNotContain("+16H - 6", row71D.RawAffixText, StringComparison.Ordinal);
|
||||
Assert.Contains("+16H - 6", row71E.RawAffixText, StringComparison.Ordinal);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public async Task Mana_affix_boundaries_keep_91_95_b_and_c_separate()
|
||||
{
|
||||
var entry = LoadManifest().Tables.Single(item => string.Equals(item.Slug, "mana", StringComparison.Ordinal));
|
||||
var parseResult = await LoadParseResultAsync(entry);
|
||||
var row91B = parseResult.Table.Results.Single(item =>
|
||||
string.Equals(item.RollBandLabel, "91-95", StringComparison.Ordinal) &&
|
||||
string.Equals(item.ColumnKey, "B", StringComparison.Ordinal));
|
||||
var row91C = parseResult.Table.Results.Single(item =>
|
||||
string.Equals(item.RollBandLabel, "91-95", StringComparison.Ordinal) &&
|
||||
string.Equals(item.ColumnKey, "C", StringComparison.Ordinal));
|
||||
|
||||
Assert.DoesNotContain("+19H - 9", row91B.RawAffixText, StringComparison.Ordinal);
|
||||
Assert.Contains("+19H - 9", row91C.RawAffixText, StringComparison.Ordinal);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public async Task Mana_affix_boundaries_keep_86_90_b_and_c_separate()
|
||||
{
|
||||
var entry = LoadManifest().Tables.Single(item => string.Equals(item.Slug, "mana", StringComparison.Ordinal));
|
||||
var parseResult = await LoadParseResultAsync(entry);
|
||||
var row86B = parseResult.Table.Results.Single(item =>
|
||||
string.Equals(item.RollBandLabel, "86-90", StringComparison.Ordinal) &&
|
||||
string.Equals(item.ColumnKey, "B", StringComparison.Ordinal));
|
||||
var row86C = parseResult.Table.Results.Single(item =>
|
||||
string.Equals(item.RollBandLabel, "86-90", StringComparison.Ordinal) &&
|
||||
string.Equals(item.ColumnKey, "C", StringComparison.Ordinal));
|
||||
|
||||
Assert.DoesNotContain("+16H - 8", row86B.RawAffixText, StringComparison.Ordinal);
|
||||
Assert.Contains("+16H - 8", row86C.RawAffixText, StringComparison.Ordinal);
|
||||
}
|
||||
|
||||
private static async Task<StandardCriticalTableParseResult> LoadParseResultAsync(CriticalImportManifestEntry entry)
|
||||
{
|
||||
var xmlPath = Path.Combine(GetArtifactCacheRoot(), $"{entry.Slug}.xml");
|
||||
|
||||
Reference in New Issue
Block a user