Example #1
0
    public void ValueFor_ReturnsDefaultValue_CachesDefaultValue(
        string dummyValue)
    {
        // Arrange
        var sut = new CachedValueForTestClassReturningDefaultOfGuid(true);

        // Act
        var result1 = sut.ValueFor(dummyValue);
        var result2 = sut.ValueFor(dummyValue);

        // Assert
        sut.CallCounter.Should().Be(1);
        result2.Should().Be(result1);
    }
Example #2
0
    public void ValueFor_ReturnsDefaultValue_DoesNotCacheDefaultValue(
        string dummyValue)
    {
        // Arrange
        var sut = new CachedValueForTestClassReturningDefaultOfGuid(false);

        // Act
        var result1 = sut.ValueFor(dummyValue);
        var result2 = sut.ValueFor(dummyValue);

        // Assert
#pragma warning disable xUnit2005 // Do not use identity check on value type
        Assert.NotSame(result2, result1);
#pragma warning restore xUnit2005 // Do not use identity check on value type
        sut.CallCounter.Should().Be(2);
        result2.Should().Be(result1);
    }