예제 #1
0
        public ExercisesRepositoryTests()
        {
            Runner      = MongoDbRunner.StartForDebugging();
            MongoClient = new MongoClient(Runner.ConnectionString);
            MongoClient.DropDatabase("exercisesTestDatabase");
            Database   = MongoClient.GetDatabase("exercisesTestDatabase");
            Collection = Database.GetCollection <Exercise>("exercisesTestCollection");

            ExercisesRepository = new ExercisesRepository(Collection);
        }
예제 #2
0
        public void Given_Exercise_When_GetExercisesAsyncsIsCalled_Then_ShouldReturnZeroExercises()
        {
            RunOnDatabase(context =>
            {
                // ARRANGE
                var exercisesRepository = new ExercisesRepository(context);

                // ACT
                var exercise = exercisesRepository.GetAllAsync();
                var counter  = exercise.Result.Count;

                // ASSERT
                counter.Should().Be(0);
            });
        }
예제 #3
0
        public void Given_Exercise_When_UpdateExerciseAsync_Then_ShouldBeTrue()
        {
            RunOnDatabase(context => {
                // ARRANGE
                DatabaseContext databaseContext = context;

                var exercisesRepository = new ExercisesRepository(context);

                databaseContext.Roles.Add(Role.Create("student"));
                databaseContext.SaveChanges();
                var userType = databaseContext.Roles.FirstOrDefault();

                databaseContext.TestTypes.Add(TestType.Create("Grila"));
                databaseContext.SaveChanges();
                var testType = databaseContext.TestTypes.FirstOrDefault();

                if (userType != null)
                {
                    databaseContext.Users.Add(User.Create("Johny", "Bravo", "johnnybravo", "*****@*****.**", "#$$RR#$TED"));
                }
                databaseContext.SaveChanges();
                var user = databaseContext.Users.FirstOrDefault();

                if (user != null && testType != null)
                {
                    databaseContext.Tests.Add(Test.Create("NumeleTestului", "DescriereaTextului", user.Id,
                                                          testType.Id));
                }
                databaseContext.SaveChanges();
                var test = databaseContext.Tests.FirstOrDefault();


                if (test != null)
                {
                    var exercise = Exercise.Create("Problema1", test.Id);
                    databaseContext.Add(exercise);
                    databaseContext.SaveChanges();
                    exercise.Update("Problema2", test.Id, false);

                    // ACT
                    var result = exercisesRepository.UpdateAsync(exercise);
                    // ASSERT
                    result.Result.Should().Be(true);
                }
            });
        }
예제 #4
0
 public ExercisesService(ExercisesRepository repo)
 {
     _repo = repo;
 }
        public ExerciseLogic()
        {
            HomeworksContext context = ContextFactory.GetNewContext();

            exerciseRepository = new ExercisesRepository(context);
        }