public void CachingDecorator_TwoIdenticalCallsToMultiParamMethodInQuickSuccession_MethodWasCalledOnlyOnce() { var refObj = new FakeReferenceObject(); _cachedMultiProvider.Provide(_sampleParam1, true, refObj); _cachedMultiProvider.Provide(_sampleParam1, true, refObj); Assert.AreEqual(1, _fakeMultiProvider.CallsMadeOnProvide.Count); }
public void CachingDecorator_TwoIdenticalCallsToReferenceObjectMethodInQuickSuccession_MethodWasCalledOnlyOnce() { var refObj = new FakeReferenceObject(); _cachedReferenceObjectProvider.Provide(refObj); _cachedReferenceObjectProvider.Provide(refObj); Assert.AreEqual(1, _fakeReferenceObjectProvider.CallsMadeOnProvide.Count); }
public void CachingDecorator_TwoIdenticalCallsToReferenceObjectMethodWithDelayBetween_MethodWasCalledTwice() { var refObj = new FakeReferenceObject(); _cachedReferenceObjectProvider.Provide(refObj); Thread.Sleep(_expirationDuration); _cachedReferenceObjectProvider.Provide(refObj); Assert.AreEqual(2, _fakeReferenceObjectProvider.CallsMadeOnProvide.Count); }
public void CachingDecorator_DifferentInputCallsToMultiParamMethod_MethodWasCalledTheCorrectNumberOfTimes() { var refObj1 = new FakeReferenceObject(); var refObj2 = new FakeReferenceObject(); _cachedMultiProvider.Provide(_sampleParam1, true, refObj1); _cachedMultiProvider.Provide(_sampleParam1, true, refObj2); _cachedMultiProvider.Provide(_sampleParam1, false, refObj1); _cachedMultiProvider.Provide(_sampleParam1, false, refObj2); _cachedMultiProvider.Provide(_sampleParam2, true, refObj1); _cachedMultiProvider.Provide(_sampleParam2, true, refObj2); _cachedMultiProvider.Provide(_sampleParam2, false, refObj1); _cachedMultiProvider.Provide(_sampleParam2, false, refObj2); Assert.AreEqual(8, _fakeMultiProvider.CallsMadeOnProvide.Count); }
public string Provide(string param1, bool param2, FakeReferenceObject param3) { CallsMadeOnProvide.Add(new Tuple <string, bool, FakeReferenceObject>(param1, param2, param3)); return("provided"); }
public string Provide(FakeReferenceObject param) { CallsMadeOnProvide.Add(param); return("provided"); }