public async Task ReturnCorrectQueryByIdResult() { var(connection, options) = await CreateUniqueMockDbConnectionForThisTest(); try { using (var context = new FittifyContext(options)) { var entityFromContext = await context .CardioSets .Include(i => i.ExerciseHistory) .FirstOrDefaultAsync(w => w.Id == 2); var serializedEntitesFromContext = JsonConvert.SerializeObject(entityFromContext, new JsonSerializerSettings() { ReferenceLoopHandling = ReferenceLoopHandling.Ignore }); var repo = new CardioSetRepository(context); var entity = await repo.GetById(2); var serializedEntityFromRepo = JsonConvert.SerializeObject(entity, new JsonSerializerSettings() { ReferenceLoopHandling = ReferenceLoopHandling.Ignore }); Assert.AreEqual(serializedEntitesFromContext, serializedEntityFromRepo); } } finally { connection.Close(); } }
public async Task ReturnCorrectlyQueriedCollection() { var(connection, options) = await CreateUniqueMockDbConnectionForThisTest(); try { using (var context = new FittifyContext(options)) { var entitiesFromContext = await context .CardioSets .Where(w => w.OwnerGuid == _ownerGuid && w.ExerciseHistoryId == 2 && w.DateTimeStart == new DateTime(1989, 11, 01, 14, 00, 00) && w.DateTimeEnd == new DateTime(1989, 11, 01, 16, 00, 00)) .Include(i => i.ExerciseHistory) .ToListAsync(); var serializedEntitesFromContext = JsonConvert.SerializeObject(entitiesFromContext, new JsonSerializerSettings() { ReferenceLoopHandling = ReferenceLoopHandling.Ignore }); var resourceParameters = new CardioSetResourceParameters() { OwnerGuid = _ownerGuid, ExerciseHistoryId = 2, FromDateTimeStart = new DateTime(1989, 11, 01, 14, 00, 00), UntilDateTimeEnd = new DateTime(1989, 11, 01, 16, 00, 00) }; var repo = new CardioSetRepository(context); var collection = await repo.GetPagedCollection(resourceParameters); var serializedEntitiesFromRepo = JsonConvert.SerializeObject(collection, new JsonSerializerSettings() { ReferenceLoopHandling = ReferenceLoopHandling.Ignore }); Assert.AreEqual(serializedEntitesFromContext, serializedEntitiesFromRepo); } } finally { connection.Close(); } }