public async Task Business_BusinessInfo_Create() { var testEntity = new BusinessInfo(); var resultEntity = new BusinessInfo(); var reader = new EntityReader <BusinessInfo>(); // Create should update original object, and pass back a fresh-from-db object testEntity.Fill(testEntities[Arithmetic.Random(1, testEntities.Count)]); using (var writer = new EntityWriter <BusinessInfo>(testEntity, new BusinessInfoSPConfig())) { resultEntity = await writer.SaveAsync(); } Assert.IsTrue(testEntity.Id != Defaults.Integer); Assert.IsTrue(testEntity.Key != Defaults.Guid); Assert.IsTrue(resultEntity.Id != Defaults.Integer); Assert.IsTrue(resultEntity.Key != Defaults.Guid); Assert.IsTrue(!testEntity.FailedRules.Any()); // Object in db should match in-memory objects testEntity = reader.Read(x => x.Id == resultEntity.Id).FirstOrDefaultSafe(); Assert.IsTrue(!testEntity.IsNew); Assert.IsTrue(testEntity.Id != Defaults.Integer); Assert.IsTrue(testEntity.Key != Defaults.Guid); Assert.IsTrue(testEntity.Id == resultEntity.Id); Assert.IsTrue(testEntity.Key == resultEntity.Key); Assert.IsTrue(!testEntity.FailedRules.Any()); BusinessInfoTests.RecycleBin.Add(testEntity.Key); }
public static async Task Cleanup() { var reader = new EntityReader <BusinessInfo>(); var toDelete = new BusinessInfo(); foreach (Guid item in RecycleBin) { toDelete = reader.GetAll().Where(x => x.Key == item).FirstOrDefaultSafe(); using (var db = new EntityWriter <BusinessInfo>(toDelete, new BusinessInfoSPConfig())) { await db.DeleteAsync(); } } }
public void Business_BusinessInfo_Serialize() { var searchChar = "i"; var originalObject = new BusinessInfo() { Name = searchChar, TaxNumber = searchChar }; var resultObject = new BusinessInfo(); var resultString = Defaults.String; var serializer = new JsonSerializer <BusinessInfo>(); resultString = serializer.Serialize(originalObject); Assert.IsTrue(resultString != Defaults.String); resultObject = serializer.Deserialize(resultString); Assert.IsTrue(resultObject.Name == searchChar); Assert.IsTrue(resultObject.TaxNumber == searchChar); }
public async Task Business_BusinessInfo_Read() { var reader = new EntityReader <BusinessInfo>(); var testEntity = new BusinessInfo(); var lastKey = Defaults.Guid; await Business_BusinessInfo_Create(); lastKey = BusinessInfoTests.RecycleBin.LastOrDefault(); testEntity = reader.Read(x => x.Key == lastKey).FirstOrDefaultSafe(); Assert.IsTrue(!testEntity.IsNew); Assert.IsTrue(testEntity.Id != Defaults.Integer); Assert.IsTrue(testEntity.Key != Defaults.Guid); Assert.IsTrue(testEntity.CreatedDate.Date == DateTime.UtcNow.Date); Assert.IsTrue(!testEntity.FailedRules.Any()); }
public async Task Business_BusinessInfo_Create_Key() { var testEntity = new BusinessInfo(); var resultEntity = new BusinessInfo(); var oldId = Defaults.Integer; var oldKey = Defaults.Guid; var newId = Defaults.Integer; var newKey = Defaults.Guid; // Create and insert record testEntity.Fill(testEntities[Arithmetic.Random(1, testEntities.Count)]); testEntity.Id = Defaults.Integer; testEntity.Key = Guid.NewGuid(); oldId = testEntity.Id; oldKey = testEntity.Key; Assert.IsTrue(testEntity.IsNew); Assert.IsTrue(testEntity.Id == Defaults.Integer); Assert.IsTrue(testEntity.Key != Defaults.Guid); Assert.IsTrue(!testEntity.FailedRules.Any()); // Do Insert and check passed entity and returned entity using (var writer = new EntityWriter <BusinessInfo>(testEntity, new BusinessInfoSPConfig())) { resultEntity = await writer.SaveAsync(); } Assert.IsTrue(testEntity.Key != Defaults.Guid); Assert.IsTrue(resultEntity.Id != Defaults.Integer); Assert.IsTrue(resultEntity.Key != Defaults.Guid); Assert.IsTrue(!resultEntity.FailedRules.Any()); // Pull from DB and retest testEntity = new EntityReader <BusinessInfo>().GetById(resultEntity.Id); Assert.IsTrue(!testEntity.IsNew); Assert.IsTrue(testEntity.Id != oldId); Assert.IsTrue(testEntity.Key == oldKey); Assert.IsTrue(testEntity.Id != Defaults.Integer); Assert.IsTrue(testEntity.Key != Defaults.Guid); Assert.IsTrue(!testEntity.FailedRules.Any()); // Cleanup RecycleBin.Add(testEntity.Key); }
public async Task Business_BusinessInfo_Update() { var reader = new EntityReader <BusinessInfo>(); var resultEntity = new BusinessInfo(); var testEntity = new BusinessInfo(); var uniqueValue = Guid.NewGuid().ToString().Replace("-", ""); var lastKey = Defaults.Guid; var originalId = Defaults.Integer; var originalKey = Defaults.Guid; await Business_BusinessInfo_Create(); lastKey = BusinessInfoTests.RecycleBin.LastOrDefault(); testEntity = reader.Read(x => x.Key == lastKey).FirstOrDefaultSafe(); originalId = testEntity.Id; originalKey = testEntity.Key; Assert.IsTrue(!testEntity.IsNew); Assert.IsTrue(testEntity.Id != Defaults.Integer); Assert.IsTrue(testEntity.Key != Defaults.Guid); testEntity.Name = uniqueValue; using (var writer = new EntityWriter <BusinessInfo>(testEntity, new BusinessInfoSPConfig())) { resultEntity = await writer.SaveAsync(); } Assert.IsTrue(!resultEntity.IsNew); Assert.IsTrue(resultEntity.Id != Defaults.Integer); Assert.IsTrue(resultEntity.Key != Defaults.Guid); Assert.IsTrue(testEntity.Id == resultEntity.Id && resultEntity.Id == originalId); Assert.IsTrue(testEntity.Key == resultEntity.Key && resultEntity.Key == originalKey); testEntity = reader.Read(x => x.Id == originalId).FirstOrDefaultSafe(); Assert.IsTrue(!testEntity.IsNew); Assert.IsTrue(testEntity.Id == resultEntity.Id && resultEntity.Id == originalId); Assert.IsTrue(testEntity.Key == resultEntity.Key && resultEntity.Key == originalKey); Assert.IsTrue(testEntity.Id != Defaults.Integer); Assert.IsTrue(testEntity.Key != Defaults.Guid); Assert.IsTrue(!testEntity.FailedRules.Any()); }
public async Task Business_BusinessInfo_Delete() { var reader = new EntityReader <BusinessInfo>(); var testEntity = new BusinessInfo(); var resultEntity = new BusinessInfo(); var lastKey = Defaults.Guid; var originalId = Defaults.Integer; var originalKey = Defaults.Guid; await Business_BusinessInfo_Create(); lastKey = BusinessInfoTests.RecycleBin.LastOrDefault(); testEntity = reader.Read(x => x.Key == lastKey).FirstOrDefaultSafe(); originalId = testEntity.Id; originalKey = testEntity.Key; Assert.IsTrue(testEntity.Id != Defaults.Integer); Assert.IsTrue(testEntity.Key != Defaults.Guid); Assert.IsTrue(testEntity.CreatedDate.Date == DateTime.UtcNow.Date); Assert.IsTrue(!testEntity.FailedRules.Any()); using (var writer = new EntityWriter <BusinessInfo>(testEntity, new BusinessInfoSPConfig())) { resultEntity = await writer.DeleteAsync(); } Assert.IsTrue(resultEntity.IsNew); Assert.IsTrue(!testEntity.FailedRules.Any()); testEntity = reader.Read(x => x.Id == originalId).FirstOrDefaultSafe(); Assert.IsTrue(testEntity.Id != originalId); Assert.IsTrue(testEntity.Key != originalKey); Assert.IsTrue(testEntity.IsNew); Assert.IsTrue(testEntity.Key == Defaults.Guid); Assert.IsTrue(!testEntity.FailedRules.Any()); // Remove from RecycleBin (its already marked deleted) RecycleBin.Remove(lastKey); }