From bd32ec38375263f6b1a77a1a0757c032d8f0f2b3 Mon Sep 17 00:00:00 2001 From: Gert Driesen Date: Tue, 23 Oct 2018 02:26:17 +0200 Subject: [PATCH] Add basic test for RouteValueEqualityComparer.Equals(...). (#883) --- .../RouteValueEqualityComparerTest.cs | 41 +++++++++++++++++++ 1 file changed, 41 insertions(+) create mode 100644 test/Microsoft.AspNetCore.Routing.Tests/RouteValueEqualityComparerTest.cs diff --git a/test/Microsoft.AspNetCore.Routing.Tests/RouteValueEqualityComparerTest.cs b/test/Microsoft.AspNetCore.Routing.Tests/RouteValueEqualityComparerTest.cs new file mode 100644 index 0000000000..4f6dc0a87d --- /dev/null +++ b/test/Microsoft.AspNetCore.Routing.Tests/RouteValueEqualityComparerTest.cs @@ -0,0 +1,41 @@ +// Copyright (c) .NET Foundation. All rights reserved. +// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information. + +using Xunit; + +namespace Microsoft.AspNetCore.Routing +{ + public class RouteValueEqualityComparerTest + { + private readonly RouteValueEqualityComparer _comparer; + + public RouteValueEqualityComparerTest() + { + _comparer = new RouteValueEqualityComparer(); + } + + [Theory] + [InlineData(5, 7, false)] + [InlineData("foo", "foo", true)] + [InlineData("foo", "FoO", true)] + [InlineData("foo", "boo", false)] + [InlineData("7", 7, true)] + [InlineData(7, "7", true)] + [InlineData(5.7d, 5.7d, true)] + [InlineData(null, null, true)] + [InlineData(null, "foo", false)] + [InlineData("foo", null, false)] + [InlineData(null, "", true)] + [InlineData("", null, true)] + [InlineData("", "", true)] + [InlineData("", "foo", false)] + [InlineData("foo", "", false)] + [InlineData(true, true, true)] + [InlineData(true, false, false)] + public void EqualsTest(object x, object y, bool expected) + { + var actual = _comparer.Equals(x, y); + Assert.Equal(expected, actual); + } + } +}