protected void AssertThatReturnsInputAsOutputForStruct <T>(Func <T> assertThat, object testValue) where T : struct { assertThat.ThrowIfNull(nameof(assertThat)); var output = assertThat(); Assert.AreEqual(testValue, output, TestBaseStringResources.ExpectedOutputIsEqualToInput()); }
protected void AssertThatReturnsInputAsOutput <T>(Func <T> assertThat, object testValue) { assertThat.ThrowIfNull(nameof(assertThat)); var output = assertThat(); Assert.AreEqual(testValue, output, TestBaseStringResources.ExpectedOutputIsEqualToInput()); Assert.IsTrue(ReferenceEquals(testValue, output), TestBaseStringResources.ExpectedOutputIsReferenceEqualToInput()); }