//=============================================================== public static void ExplicitKeyRepository(ExplicitKeyRepository <TestClass> repo) { const string objectKey = "wrongKey"; const string explicitKey = "rightKey"; var testObject = new TestClass(objectKey, "myValue"); repo.Insert(testObject, explicitKey); repo.SaveChanges(); var savedObj = repo.Find(objectKey); Assert.Null(savedObj); savedObj = repo.Find(explicitKey); Assert.NotNull(savedObj); Assert.AreEqual(testObject.ID, savedObj.Object.ID); Assert.AreEqual(testObject.StringValue, savedObj.Object.StringValue); repo.RemoveByKey(explicitKey); repo.SaveChanges(); savedObj = repo.Find(explicitKey); Assert.Null(savedObj); }
//=============================================================== public static void All(Repository<TestClass> implicitKeyRepository, Repository<TestClass, String> typedKeyRepository = null, ExplicitKeyRepository<TestClass> explicitKeyRepository= null) { InsertAndRemove(implicitKeyRepository); Items(implicitKeyRepository); ChangeTracking(implicitKeyRepository); BatchInsertAndRemove(implicitKeyRepository); Exists(implicitKeyRepository); if (typedKeyRepository != null) { TypedRepositoryTest(typedKeyRepository); } if (explicitKeyRepository != null) { ExplicitKeyRepository(explicitKeyRepository); } }
//=============================================================== public static void ExplicitKeyRepository(ExplicitKeyRepository<TestClass> repo) { const string objectKey = "wrongKey"; const string explicitKey = "rightKey"; var testObject = new TestClass(objectKey, "myValue"); repo.Insert(testObject, explicitKey); repo.SaveChanges(); var savedObj = repo.Find(objectKey); Assert.Null(savedObj); savedObj = repo.Find(explicitKey); Assert.NotNull(savedObj); Assert.AreEqual(testObject.ID, savedObj.Object.ID); Assert.AreEqual(testObject.StringValue, savedObj.Object.StringValue); repo.RemoveByKey(explicitKey); repo.SaveChanges(); savedObj = repo.Find(explicitKey); Assert.Null(savedObj); }
//=============================================================== public static void All(Repository <TestClass> implicitKeyRepository, Repository <TestClass, String> typedKeyRepository = null, ExplicitKeyRepository <TestClass> explicitKeyRepository = null) { InsertAndRemove(implicitKeyRepository); Items(implicitKeyRepository); ChangeTracking(implicitKeyRepository); ChangeTrackingEnumeratedObjects(implicitKeyRepository); BatchInsertAndRemove(implicitKeyRepository); Exists(implicitKeyRepository); if (typedKeyRepository != null) { TypedRepositoryTest(typedKeyRepository); } if (explicitKeyRepository != null) { ExplicitKeyRepository(explicitKeyRepository); } }