public void TestThatColumnsIncludedInWhereClausesClearTheCacheWhenTheyAreChanged() { Caching.Instances.Main.FlushAll(); Gallery gallery = new Gallery(); gallery.Update(); Photo photo = new Photo(); photo.Status = Photo.StatusEnum.Moderate; photo.GalleryK = gallery.K; photo.Update(); Assert.AreEqual(1, gallery.ChildPhotos().Count); Assert.AreEqual(1, gallery.ChildPhotos(new Q(Photo.Columns.Status, Photo.StatusEnum.Moderate)).Count); Caching.Instances.Main.FlushAll(); Assert.AreEqual(0, gallery.ChildPhotos(new Q(Photo.Columns.Status, Photo.StatusEnum.Enabled)).Count); photo.Status = Photo.StatusEnum.Enabled; photo.Update(); Assert.AreEqual(0, gallery.ChildPhotos(new Q(Photo.Columns.Status, Photo.StatusEnum.Moderate)).Count); Assert.AreEqual(1, gallery.ChildPhotos(new Q(Photo.Columns.Status, Photo.StatusEnum.Enabled)).Count); }
public void UseOfAColumnWhichDoesNotHaveCausesInvalidationInAWhereClauseSetThrowsAnException() { Caching.Instances.Main.FlushAll(); Gallery gallery = new Gallery(); gallery.Update(); Photo photo = new Photo(); photo.Status = Photo.StatusEnum.Moderate; photo.GalleryK = gallery.K; photo.Update(); int count = gallery.ChildPhotos(new Q(Photo.Columns.ParentDateTime, DateTime.Now)).Count; }