public void GetFromDatabase_WhenLifetimeHasNotExpired_DoesNotReload() { var database = new LazyDatabase(TimeSpan.FromHours(100)); var people = new PersonRepository(); database.Get(1, people.GetSingle); database.TryGet(1, out Person p); database.TryGet(1, out p); Assert.AreEqual(1, people.TimesLoaded); }
public void GetFromDatabase_WhenLifetimeIsOverridenAndHasExpired_Reloads() { var database = new LazyDatabase(); var people = new PersonRepository(); database.TryAddTable <int, Person>(people.GetSingle, TimeSpan.Zero); database.TryGet(1, out Person p); database.TryGet(1, out p); database.Get(1, people.GetSingle); Assert.AreEqual(3, people.TimesLoaded); }
public void TryGet_WithNoTableConfigured_ReturnsFalse() { var database = new LazyDatabase(); var result = database.TryGet <int, Person>(1, out var person); Assert.IsFalse(result); Assert.IsNull(person); }