Skip to content

Commit 0423306

Browse files
authored
Remove Assert.AreEqual/AreNotEqual overloads with object object (#1429)
1 parent 0d93a75 commit 0423306

18 files changed

+4
-253
lines changed

src/TestFramework/TestFramework/Assertions/Assert.AreEqual.cs

+1-167
Original file line numberDiff line numberDiff line change
@@ -2,11 +2,7 @@
22
// Licensed under the MIT license. See LICENSE file in the project root for full license information.
33

44
using System;
5-
using System.Diagnostics.CodeAnalysis;
65
using System.Globalization;
7-
using System.Reflection;
8-
using System.Runtime.CompilerServices;
9-
using System.Threading.Tasks;
106

117
namespace Microsoft.VisualStudio.TestTools.UnitTesting;
128

@@ -98,28 +94,12 @@ public static void AreEqual<T>(T? expected, T? actual, string? message, params o
9894
if (!object.Equals(expected, actual))
9995
{
10096
string userMessage = BuildUserMessage(message, parameters);
101-
string finalMessage;
102-
if (actual != null && expected != null && !actual.GetType().Equals(expected.GetType()))
103-
{
104-
// This is for cases like: Assert.AreEqual(42L, 42) -> Expected: <42>, Actual: <42>
105-
finalMessage = string.Format(
106-
CultureInfo.CurrentCulture,
107-
FrameworkMessages.AreEqualDifferentTypesFailMsg,
108-
userMessage,
109-
ReplaceNulls(expected),
110-
expected.GetType().FullName,
111-
ReplaceNulls(actual),
112-
actual.GetType().FullName);
113-
}
114-
else
115-
{
116-
finalMessage = string.Format(
97+
string finalMessage = string.Format(
11798
CultureInfo.CurrentCulture,
11899
FrameworkMessages.AreEqualFailMsg,
119100
userMessage,
120101
ReplaceNulls(expected),
121102
ReplaceNulls(actual));
122-
}
123103

124104
ThrowAssertFailed("Assert.AreEqual", finalMessage);
125105
}
@@ -217,152 +197,6 @@ public static void AreNotEqual<T>(T? notExpected, T? actual, string? message, pa
217197
}
218198
}
219199

220-
/// <summary>
221-
/// Tests whether the specified objects are equal and throws an exception
222-
/// if the two objects are not equal. Different numeric types are treated
223-
/// as unequal even if the logical values are equal. 42L is not equal to 42.
224-
/// </summary>
225-
/// <param name="expected">
226-
/// The first object to compare. This is the object the tests expects.
227-
/// </param>
228-
/// <param name="actual">
229-
/// The second object to compare. This is the object produced by the code under test.
230-
/// </param>
231-
/// <exception cref="AssertFailedException">
232-
/// Thrown if <paramref name="expected"/> is not equal to
233-
/// <paramref name="actual"/>.
234-
/// </exception>
235-
public static void AreEqual(object? expected, object? actual)
236-
{
237-
AreEqual(expected, actual, string.Empty, null);
238-
}
239-
240-
/// <summary>
241-
/// Tests whether the specified objects are equal and throws an exception
242-
/// if the two objects are not equal. Different numeric types are treated
243-
/// as unequal even if the logical values are equal. 42L is not equal to 42.
244-
/// </summary>
245-
/// <param name="expected">
246-
/// The first object to compare. This is the object the tests expects.
247-
/// </param>
248-
/// <param name="actual">
249-
/// The second object to compare. This is the object produced by the code under test.
250-
/// </param>
251-
/// <param name="message">
252-
/// The message to include in the exception when <paramref name="actual"/>
253-
/// is not equal to <paramref name="expected"/>. The message is shown in
254-
/// test results.
255-
/// </param>
256-
/// <exception cref="AssertFailedException">
257-
/// Thrown if <paramref name="expected"/> is not equal to
258-
/// <paramref name="actual"/>.
259-
/// </exception>
260-
public static void AreEqual(object? expected, object? actual, string? message)
261-
{
262-
AreEqual(expected, actual, message, null);
263-
}
264-
265-
/// <summary>
266-
/// Tests whether the specified objects are equal and throws an exception
267-
/// if the two objects are not equal. Different numeric types are treated
268-
/// as unequal even if the logical values are equal. 42L is not equal to 42.
269-
/// </summary>
270-
/// <param name="expected">
271-
/// The first object to compare. This is the object the tests expects.
272-
/// </param>
273-
/// <param name="actual">
274-
/// The second object to compare. This is the object produced by the code under test.
275-
/// </param>
276-
/// <param name="message">
277-
/// The message to include in the exception when <paramref name="actual"/>
278-
/// is not equal to <paramref name="expected"/>. The message is shown in
279-
/// test results.
280-
/// </param>
281-
/// <param name="parameters">
282-
/// An array of parameters to use when formatting <paramref name="message"/>.
283-
/// </param>
284-
/// <exception cref="AssertFailedException">
285-
/// Thrown if <paramref name="expected"/> is not equal to
286-
/// <paramref name="actual"/>.
287-
/// </exception>
288-
public static void AreEqual(object? expected, object? actual, string? message, params object?[]? parameters)
289-
{
290-
AreEqual<object>(expected, actual, message, parameters);
291-
}
292-
293-
/// <summary>
294-
/// Tests whether the specified objects are unequal and throws an exception
295-
/// if the two objects are equal. Different numeric types are treated
296-
/// as unequal even if the logical values are equal. 42L is not equal to 42.
297-
/// </summary>
298-
/// <param name="notExpected">
299-
/// The first object to compare. This is the value the test expects not
300-
/// to match <paramref name="actual"/>.
301-
/// </param>
302-
/// <param name="actual">
303-
/// The second object to compare. This is the object produced by the code under test.
304-
/// </param>
305-
/// <exception cref="AssertFailedException">
306-
/// Thrown if <paramref name="notExpected"/> is equal to <paramref name="actual"/>.
307-
/// </exception>
308-
public static void AreNotEqual(object? notExpected, object? actual)
309-
{
310-
AreNotEqual(notExpected, actual, string.Empty, null);
311-
}
312-
313-
/// <summary>
314-
/// Tests whether the specified objects are unequal and throws an exception
315-
/// if the two objects are equal. Different numeric types are treated
316-
/// as unequal even if the logical values are equal. 42L is not equal to 42.
317-
/// </summary>
318-
/// <param name="notExpected">
319-
/// The first object to compare. This is the value the test expects not
320-
/// to match <paramref name="actual"/>.
321-
/// </param>
322-
/// <param name="actual">
323-
/// The second object to compare. This is the object produced by the code under test.
324-
/// </param>
325-
/// <param name="message">
326-
/// The message to include in the exception when <paramref name="actual"/>
327-
/// is equal to <paramref name="notExpected"/>. The message is shown in
328-
/// test results.
329-
/// </param>
330-
/// <exception cref="AssertFailedException">
331-
/// Thrown if <paramref name="notExpected"/> is equal to <paramref name="actual"/>.
332-
/// </exception>
333-
public static void AreNotEqual(object? notExpected, object? actual, string? message)
334-
{
335-
AreNotEqual(notExpected, actual, message, null);
336-
}
337-
338-
/// <summary>
339-
/// Tests whether the specified objects are unequal and throws an exception
340-
/// if the two objects are equal. Different numeric types are treated
341-
/// as unequal even if the logical values are equal. 42L is not equal to 42.
342-
/// </summary>
343-
/// <param name="notExpected">
344-
/// The first object to compare. This is the value the test expects not
345-
/// to match <paramref name="actual"/>.
346-
/// </param>
347-
/// <param name="actual">
348-
/// The second object to compare. This is the object produced by the code under test.
349-
/// </param>
350-
/// <param name="message">
351-
/// The message to include in the exception when <paramref name="actual"/>
352-
/// is equal to <paramref name="notExpected"/>. The message is shown in
353-
/// test results.
354-
/// </param>
355-
/// <param name="parameters">
356-
/// An array of parameters to use when formatting <paramref name="message"/>.
357-
/// </param>
358-
/// <exception cref="AssertFailedException">
359-
/// Thrown if <paramref name="notExpected"/> is equal to <paramref name="actual"/>.
360-
/// </exception>
361-
public static void AreNotEqual(object? notExpected, object? actual, string? message, params object?[]? parameters)
362-
{
363-
AreNotEqual<object>(notExpected, actual, message, parameters);
364-
}
365-
366200
/// <summary>
367201
/// Tests whether the specified floats are equal and throws an exception
368202
/// if they are not equal.

src/TestFramework/TestFramework/PublicAPI/PublicAPI.Shipped.txt

-6
Original file line numberDiff line numberDiff line change
@@ -240,9 +240,6 @@ static Microsoft.VisualStudio.TestTools.UnitTesting.Assert.AreEqual(float expect
240240
static Microsoft.VisualStudio.TestTools.UnitTesting.Assert.AreEqual(long expected, long actual, long delta) -> void
241241
static Microsoft.VisualStudio.TestTools.UnitTesting.Assert.AreEqual(long expected, long actual, long delta, string? message) -> void
242242
static Microsoft.VisualStudio.TestTools.UnitTesting.Assert.AreEqual(long expected, long actual, long delta, string? message, params object?[]? parameters) -> void
243-
static Microsoft.VisualStudio.TestTools.UnitTesting.Assert.AreEqual(object? expected, object? actual) -> void
244-
static Microsoft.VisualStudio.TestTools.UnitTesting.Assert.AreEqual(object? expected, object? actual, string? message) -> void
245-
static Microsoft.VisualStudio.TestTools.UnitTesting.Assert.AreEqual(object? expected, object? actual, string? message, params object?[]? parameters) -> void
246243
static Microsoft.VisualStudio.TestTools.UnitTesting.Assert.AreEqual(string? expected, string? actual, bool ignoreCase) -> void
247244
static Microsoft.VisualStudio.TestTools.UnitTesting.Assert.AreEqual(string? expected, string? actual, bool ignoreCase, string? message) -> void
248245
static Microsoft.VisualStudio.TestTools.UnitTesting.Assert.AreEqual(string? expected, string? actual, bool ignoreCase, string? message, params object?[]? parameters) -> void
@@ -264,9 +261,6 @@ static Microsoft.VisualStudio.TestTools.UnitTesting.Assert.AreNotEqual(float not
264261
static Microsoft.VisualStudio.TestTools.UnitTesting.Assert.AreNotEqual(long notExpected, long actual, long delta) -> void
265262
static Microsoft.VisualStudio.TestTools.UnitTesting.Assert.AreNotEqual(long notExpected, long actual, long delta, string? message) -> void
266263
static Microsoft.VisualStudio.TestTools.UnitTesting.Assert.AreNotEqual(long notExpected, long actual, long delta, string? message, params object?[]? parameters) -> void
267-
static Microsoft.VisualStudio.TestTools.UnitTesting.Assert.AreNotEqual(object? notExpected, object? actual) -> void
268-
static Microsoft.VisualStudio.TestTools.UnitTesting.Assert.AreNotEqual(object? notExpected, object? actual, string? message) -> void
269-
static Microsoft.VisualStudio.TestTools.UnitTesting.Assert.AreNotEqual(object? notExpected, object? actual, string? message, params object?[]? parameters) -> void
270264
static Microsoft.VisualStudio.TestTools.UnitTesting.Assert.AreNotEqual(string? notExpected, string? actual, bool ignoreCase) -> void
271265
static Microsoft.VisualStudio.TestTools.UnitTesting.Assert.AreNotEqual(string? notExpected, string? actual, bool ignoreCase, string? message) -> void
272266
static Microsoft.VisualStudio.TestTools.UnitTesting.Assert.AreNotEqual(string? notExpected, string? actual, bool ignoreCase, string? message, params object?[]? parameters) -> void

src/TestFramework/TestFramework/Resources/FrameworkMessages.Designer.cs

+1-10
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/TestFramework/TestFramework/Resources/FrameworkMessages.resx

-3
Original file line numberDiff line numberDiff line change
@@ -135,9 +135,6 @@
135135
<data name="AreEqualCaseFailMsg" xml:space="preserve">
136136
<value>Expected:&lt;{1}&gt;. Case is different for actual value:&lt;{2}&gt;. {0}</value>
137137
</data>
138-
<data name="AreEqualDifferentTypesFailMsg" xml:space="preserve">
139-
<value>Expected:&lt;{1} ({2})&gt;. Actual:&lt;{3} ({4})&gt;. {0}</value>
140-
</data>
141138
<data name="AreNotEqualFailMsg" xml:space="preserve">
142139
<value>Expected any value except:&lt;{1}&gt;. Actual:&lt;{2}&gt;. {0}</value>
143140
</data>

src/TestFramework/TestFramework/Resources/xlf/FrameworkMessages.cs.xlf

-5
Original file line numberDiff line numberDiff line change
@@ -32,11 +32,6 @@
3232
<target state="translated">Očekáváno:&lt;{1}&gt;. Případ je rozdílný pro aktuální hodnotu:&lt;{2}&gt;. {0}</target>
3333
<note></note>
3434
</trans-unit>
35-
<trans-unit id="AreEqualDifferentTypesFailMsg">
36-
<source>Expected:&lt;{1} ({2})&gt;. Actual:&lt;{3} ({4})&gt;. {0}</source>
37-
<target state="translated">Očekáváno:&lt;{1} ({2})&gt;. Aktuálně:&lt;{3} ({4})&gt;. {0}</target>
38-
<note></note>
39-
</trans-unit>
4035
<trans-unit id="AreNotEqualFailMsg">
4136
<source>Expected any value except:&lt;{1}&gt;. Actual:&lt;{2}&gt;. {0}</source>
4237
<target state="translated">Nebyla očekávána žádná hodnota kromě:&lt;{1}&gt;. Aktuálně:&lt;{2}&gt;. {0}</target>

src/TestFramework/TestFramework/Resources/xlf/FrameworkMessages.de.xlf

-5
Original file line numberDiff line numberDiff line change
@@ -32,11 +32,6 @@
3232
<target state="translated">Erwartet:&lt;{1}&gt;. Die Großschreibung des tatsächlichen Werts weicht davon ab:&lt;{2}&gt;. {0}</target>
3333
<note></note>
3434
</trans-unit>
35-
<trans-unit id="AreEqualDifferentTypesFailMsg">
36-
<source>Expected:&lt;{1} ({2})&gt;. Actual:&lt;{3} ({4})&gt;. {0}</source>
37-
<target state="translated">Erwartet:&lt;{1} ({2})&gt;. Tatsächlich:&lt;{3} ({4})&gt;. {0}</target>
38-
<note></note>
39-
</trans-unit>
4035
<trans-unit id="AreNotEqualFailMsg">
4136
<source>Expected any value except:&lt;{1}&gt;. Actual:&lt;{2}&gt;. {0}</source>
4237
<target state="translated">Es wurde ein beliebiger Wert erwartet außer:&lt;{1}&gt;. Tatsächlich:&lt;{2}&gt;. {0}</target>

src/TestFramework/TestFramework/Resources/xlf/FrameworkMessages.es.xlf

-5
Original file line numberDiff line numberDiff line change
@@ -32,11 +32,6 @@
3232
<target state="translated">Se esperaba:&lt;{1}&gt;. La caja es diferente para el valor actual:&lt;{2}&gt;. {0}</target>
3333
<note></note>
3434
</trans-unit>
35-
<trans-unit id="AreEqualDifferentTypesFailMsg">
36-
<source>Expected:&lt;{1} ({2})&gt;. Actual:&lt;{3} ({4})&gt;. {0}</source>
37-
<target state="translated">Se esperaba:&lt;{1} ({2})&gt;, pero es:&lt;{3} ({4})&gt;. {0}</target>
38-
<note></note>
39-
</trans-unit>
4035
<trans-unit id="AreNotEqualFailMsg">
4136
<source>Expected any value except:&lt;{1}&gt;. Actual:&lt;{2}&gt;. {0}</source>
4237
<target state="translated">Se esperaba cualquier valor excepto &lt;{1}&gt;, pero es &lt;{2}&gt;. {0}</target>

src/TestFramework/TestFramework/Resources/xlf/FrameworkMessages.fr.xlf

-5
Original file line numberDiff line numberDiff line change
@@ -32,11 +32,6 @@
3232
<target state="translated">Attendu :&lt;{1}&gt;. La casse est différente pour la valeur réelle :&lt;{2}&gt;. {0}</target>
3333
<note></note>
3434
</trans-unit>
35-
<trans-unit id="AreEqualDifferentTypesFailMsg">
36-
<source>Expected:&lt;{1} ({2})&gt;. Actual:&lt;{3} ({4})&gt;. {0}</source>
37-
<target state="translated">Attendu : &lt;{1} ({2})&gt;, Réel : &lt;{3} ({4})&gt;. {0}</target>
38-
<note></note>
39-
</trans-unit>
4035
<trans-unit id="AreNotEqualFailMsg">
4136
<source>Expected any value except:&lt;{1}&gt;. Actual:&lt;{2}&gt;. {0}</source>
4237
<target state="translated">Toute valeur attendue sauf :&lt;{1}&gt;. Réel :&lt;{2}&gt;. {0}</target>

src/TestFramework/TestFramework/Resources/xlf/FrameworkMessages.it.xlf

-5
Original file line numberDiff line numberDiff line change
@@ -32,11 +32,6 @@
3232
<target state="translated">Previsto:&lt;{1}&gt;. La combinazione di maiuscole e minuscole è diversa per il valore effettivo:&lt;{2}&gt;. {0}</target>
3333
<note></note>
3434
</trans-unit>
35-
<trans-unit id="AreEqualDifferentTypesFailMsg">
36-
<source>Expected:&lt;{1} ({2})&gt;. Actual:&lt;{3} ({4})&gt;. {0}</source>
37-
<target state="translated">Previsto:&lt;{1} ({2})&gt;. Effettivo:&lt;{3} ({4})&gt;. {0}</target>
38-
<note></note>
39-
</trans-unit>
4035
<trans-unit id="AreNotEqualFailMsg">
4136
<source>Expected any value except:&lt;{1}&gt;. Actual:&lt;{2}&gt;. {0}</source>
4237
<target state="translated">Previsto qualsiasi valore tranne:&lt;{1}&gt;. Effettivo:&lt;{2}&gt;. {0}</target>

src/TestFramework/TestFramework/Resources/xlf/FrameworkMessages.ja.xlf

-5
Original file line numberDiff line numberDiff line change
@@ -32,11 +32,6 @@
3232
<target state="translated">&lt;{1}&gt; が必要です。実際の値: &lt;{2}&gt; では大文字と小文字が異なります。{0}</target>
3333
<note></note>
3434
</trans-unit>
35-
<trans-unit id="AreEqualDifferentTypesFailMsg">
36-
<source>Expected:&lt;{1} ({2})&gt;. Actual:&lt;{3} ({4})&gt;. {0}</source>
37-
<target state="translated">&lt;{1} ({2})&gt; が必要ですが、&lt;{3} ({4})&gt; が指定されました。{0}</target>
38-
<note></note>
39-
</trans-unit>
4035
<trans-unit id="AreNotEqualFailMsg">
4136
<source>Expected any value except:&lt;{1}&gt;. Actual:&lt;{2}&gt;. {0}</source>
4237
<target state="translated">&lt;{1}&gt; 以外の任意の値が必要ですが、&lt;{2}&gt; が指定されています。{0}</target>

src/TestFramework/TestFramework/Resources/xlf/FrameworkMessages.ko.xlf

-5
Original file line numberDiff line numberDiff line change
@@ -32,11 +32,6 @@
3232
<target state="translated">예상 값: &lt;{1}&gt;. 대/소문자가 다른 실제 값: &lt;{2}&gt;. {0}</target>
3333
<note></note>
3434
</trans-unit>
35-
<trans-unit id="AreEqualDifferentTypesFailMsg">
36-
<source>Expected:&lt;{1} ({2})&gt;. Actual:&lt;{3} ({4})&gt;. {0}</source>
37-
<target state="translated">예상 값: &lt;{1} ({2})&gt;. 실제 값: &lt;{3} ({4})&gt;. {0}</target>
38-
<note></note>
39-
</trans-unit>
4035
<trans-unit id="AreNotEqualFailMsg">
4136
<source>Expected any value except:&lt;{1}&gt;. Actual:&lt;{2}&gt;. {0}</source>
4237
<target state="translated">예상 값: &lt;{1}&gt;을(를) 제외한 모든 값. 실제 값: &lt;{2}&gt;. {0}</target>

src/TestFramework/TestFramework/Resources/xlf/FrameworkMessages.pl.xlf

-5
Original file line numberDiff line numberDiff line change
@@ -32,11 +32,6 @@
3232
<target state="translated">Oczekiwano:&lt;{1}&gt;. Przypadek różni się od rzeczywistej wartości:&lt;{2}&gt;. {0}</target>
3333
<note></note>
3434
</trans-unit>
35-
<trans-unit id="AreEqualDifferentTypesFailMsg">
36-
<source>Expected:&lt;{1} ({2})&gt;. Actual:&lt;{3} ({4})&gt;. {0}</source>
37-
<target state="translated">Oczekiwana:&lt;{1} ({2})&gt;. Rzeczywista:&lt;{3} ({4})&gt;. {0}</target>
38-
<note></note>
39-
</trans-unit>
4035
<trans-unit id="AreNotEqualFailMsg">
4136
<source>Expected any value except:&lt;{1}&gt;. Actual:&lt;{2}&gt;. {0}</source>
4237
<target state="translated">Oczekiwano dowolnej wartości za wyjątkiem:&lt;{1}&gt;. Rzeczywista:&lt;{2}&gt;. {0}</target>

src/TestFramework/TestFramework/Resources/xlf/FrameworkMessages.pt-BR.xlf

-5
Original file line numberDiff line numberDiff line change
@@ -32,11 +32,6 @@
3232
<target state="translated">Esperado:&lt;{1}&gt;. Capitalização é diferente para o valor real:&lt;{2}&gt;. {0}</target>
3333
<note></note>
3434
</trans-unit>
35-
<trans-unit id="AreEqualDifferentTypesFailMsg">
36-
<source>Expected:&lt;{1} ({2})&gt;. Actual:&lt;{3} ({4})&gt;. {0}</source>
37-
<target state="translated">Esperado:&lt;{1} ({2})&gt;. Real:&lt;{3} ({4})&gt;. {0}</target>
38-
<note></note>
39-
</trans-unit>
4035
<trans-unit id="AreNotEqualFailMsg">
4136
<source>Expected any value except:&lt;{1}&gt;. Actual:&lt;{2}&gt;. {0}</source>
4237
<target state="translated">Esperado qualquer valor exceto:&lt;{1}&gt;. Real:&lt;{2}&gt;. {0}</target>

0 commit comments

Comments
 (0)