コード例 #1
0
        public async Task ReturnCorrectlyQueriedById()
        {
            var(connection, options) = await CreateUniqueMockDbConnectionForThisTest(_listWorkoutHistories);

            try
            {
                using (var context = new FittifyContext(options))
                {
                    var entityFromContext = await context
                                            .WorkoutHistories
                                            .Include(i => i.Workout)
                                            .Include(i => i.ExerciseHistories)
                                            .FirstOrDefaultAsync(w => w.Id == 1);

                    var serializedEntityFromContext = JsonConvert.SerializeObject(entityFromContext,
                                                                                  new JsonSerializerSettings()
                    {
                        ReferenceLoopHandling = ReferenceLoopHandling.Ignore
                    });

                    var repo   = new WorkoutHistoryRepository(context);
                    var entity = await repo.GetById(1);

                    var serializedEntityFromRepo = JsonConvert.SerializeObject(entity,
                                                                               new JsonSerializerSettings()
                    {
                        ReferenceLoopHandling = ReferenceLoopHandling.Ignore
                    });
                    Assert.AreEqual(serializedEntityFromContext, serializedEntityFromRepo);
                }
            }
            finally
            {
                connection.Close();
            }
        }