Skip to content

Commit 7703e39

Browse files
committed
Allow providing a specific output name to TestBase.AssertEqual
1 parent f262d80 commit 7703e39

2 files changed

Lines changed: 20 additions & 9 deletions

File tree

src/Dibix.Testing/TestBase.cs

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -102,7 +102,8 @@ public async Task OnTestInitialize()
102102

103103
protected string GetEmbeddedResourceContent(string key) => ResourceUtility.GetEmbeddedResourceContent(this._assembly, key);
104104

105-
protected void AssertEqual(string expected, string actual, string extension, string message = null, bool normalizeLineEndings = false)
105+
protected void AssertEqual(string expected, string actual, string extension, string message = null, bool normalizeLineEndings = false) => this.AssertEqual(expected, actual, this.TestContext.TestName, extension, message, normalizeLineEndings);
106+
protected void AssertEqual(string expected, string actual, string outputName, string extension, string message = null, bool normalizeLineEndings = false)
106107
{
107108
string expectedNormalized = expected;
108109
string actualNormalized = actual;
@@ -114,7 +115,7 @@ protected void AssertEqual(string expected, string actual, string extension, str
114115
}
115116

116117
if (!Equals(expectedNormalized, actualNormalized))
117-
this.TestResultComposer.AddFileComparison(expectedNormalized, actualNormalized, extension);
118+
this.TestResultComposer.AddFileComparison(expectedNormalized, actualNormalized, outputName, extension);
118119

119120
Assert.AreEqual(expectedNormalized, actualNormalized, message);
120121
}

src/Dibix.Testing/Utilities/TestResultComposer.cs

Lines changed: 17 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -52,10 +52,10 @@ public string AddFile(string fileName, string content)
5252
return path;
5353
}
5454

55-
public void AddFileComparison(string expectedContent, string actualContent, string extension)
55+
public void AddFileComparison(string expectedContent, string actualContent, string outputName, string extension)
5656
{
57-
this.EnsureFileComparisonContent(this._expectedDirectory, extension, expectedContent);
58-
this.EnsureFileComparisonContent(this._actualDirectory, extension, actualContent);
57+
this.EnsureFileComparisonContent(this._expectedDirectory, outputName, extension, expectedContent);
58+
this.EnsureFileComparisonContent(this._actualDirectory, outputName, extension, actualContent);
5959
this.EnsureWinMergeStarter();
6060
}
6161

@@ -89,11 +89,21 @@ string FormatContent(EventLogEntry entry)
8989
.Take(count)
9090
.Each((x, i) => this.AddFile($"EventLogEntry_{i + 1}_{x.EntryType}.txt", FormatContent(x)));
9191
}
92-
93-
private void EnsureFileComparisonContent(string directory, string extension, string content)
92+
93+
private void EnsureFileComparisonContent(string path, string outputName, string extension, string content)
9494
{
95-
this.EnsureFileComparisonContent(Path.Combine(directory, $"{this._testContext.TestName}.{extension}"), content);
96-
this.EnsureFileComparisonContent(Path.Combine(this.TestDirectory, $"{new DirectoryInfo(directory).Name}.{extension}"), content);
95+
DirectoryInfo directory = new DirectoryInfo(path);
96+
string fileName = outputName;
97+
string alternativeFileName = directory.Name;
98+
99+
if (!String.IsNullOrEmpty(extension))
100+
{
101+
fileName = $"{fileName}.{extension}";
102+
alternativeFileName = $"{alternativeFileName}.{extension}";
103+
}
104+
105+
this.EnsureFileComparisonContent(Path.Combine(path, fileName), content);
106+
this.EnsureFileComparisonContent(Path.Combine(this.TestDirectory, alternativeFileName), content);
97107
}
98108
private void EnsureFileComparisonContent(string path, string content)
99109
{

0 commit comments

Comments
 (0)