Beispiel #1
0
    public void Remove_ShouldRemoveValue()
    {
        var memoryCacheMock = new Mock <IMemoryCache>();

        memoryCacheMock.Setup(c => c.Remove(It.IsAny <object>()))
        .Verifiable();

        var cache = new MemoryFlow(memoryCacheMock.Object);

        cache.Remove("key");

        memoryCacheMock.Verify(c => c.Remove(It.IsAny <object>()), Times.Once);
    }
Beispiel #2
0
    public void TryGetValue_ShouldNotGetValueWhenValueIsDefaultUserDefinedStruct()
    {
        object storedValue;
        var    memoryCacheMock = new Mock <IMemoryCache>();

        memoryCacheMock.Setup(c => c.TryGetValue(It.IsAny <object>(), out storedValue))
        .Returns(false)
        .Verifiable();

        var cache    = new MemoryFlow(memoryCacheMock.Object);
        var expected = cache.TryGetValue("key", out DefaultStruct value);

        Assert.False(expected);
        Assert.Equal(default, value);
Beispiel #3
0
    public void TryGetValue_ShouldNotGetValueWhenValueIsNull()
    {
        object storedValue;
        var    memoryCacheMock = new Mock <IMemoryCache>();

        memoryCacheMock.Setup(c => c.TryGetValue(It.IsAny <object>(), out storedValue))
        .Returns(false)
        .Verifiable();

        var cache    = new MemoryFlow(memoryCacheMock.Object);
        var expected = cache.TryGetValue <object>("key", out var value);

        Assert.False(expected);
        Assert.Null(value);
        memoryCacheMock.Verify(c => c.TryGetValue(It.IsAny <object>(), out storedValue), Times.Once);
    }
Beispiel #4
0
    public void Set_ShouldSetValueWhenValueIsNull()
    {
        var entryMock = new Mock <ICacheEntry>();

        entryMock.SetupSet(e => e.Value = It.IsAny <object>())
        .Verifiable();

        var memoryCacheMock = new Mock <IMemoryCache>();

        memoryCacheMock.Setup(c => c.CreateEntry(It.IsAny <object>()))
        .Returns(entryMock.Object)
        .Verifiable();

        var value = (DefaultClass)null;
        var cache = new MemoryFlow(memoryCacheMock.Object);

        cache.Set("key", value, TimeSpan.MaxValue);

        entryMock.VerifySet(e => e.Value = It.IsAny <object>(), Times.Once);
        memoryCacheMock.Verify(c => c.CreateEntry(It.IsAny <object>()), Times.Once);
    }
Beispiel #5
0
    public void Set_ShouldNotSetValueWhenValueIsDefaultUserDefinedStruct()
    {
        var entryMock = new Mock <ICacheEntry>();

        entryMock.SetupSet(e => e.Value = It.IsAny <object>())
        .Verifiable();

        var memoryCacheMock = new Mock <IMemoryCache>();

        memoryCacheMock.Setup(c => c.CreateEntry(It.IsAny <object>()))
        .Returns(entryMock.Object)
        .Verifiable();

        var value = default(DefaultStruct);
        var cache = new MemoryFlow(memoryCacheMock.Object);

        cache.Set("key", value, TimeSpan.MaxValue);

        entryMock.VerifySet(e => e.Value = It.IsAny <object>(), Times.Never);
        memoryCacheMock.Verify(c => c.CreateEntry(It.IsAny <object>()), Times.Never);
    }