public void TestRunEnumerationOperation() { var oldTimestamp = 1234L; var newTimestamp = 3456L; var i = 0; var enumeration = new Func <long, long>((old) => { Assert.AreEqual(oldTimestamp, old); i++; return(newTimestamp); }); using (mockRepository.Record()) { keyValueStorage.Expect(f => f.Find <long>("zzzTimestamp.json")).Return(oldTimestamp); keyValueStorage.Expect(f => f.Write("zzzTimestamp.json", newTimestamp)); } var operation = new EnumerationOperation(keyValueStorage, "zzz", enumeration, () => 1L); var operationResult = operation.Run(); Assert.False(operationResult.HasValue); Assert.AreEqual(i, 1); }