Ejemplo n.º 1
0
        public async Task Create_new_MeetUp_from_new_meetupDto_has_ids_and_same_values()
        {
            //arrange
            AppDbContext      appDbContext  = AppDbContextMocker.GetAppDbContext("test_2");
            IMeetUpRepository _repo         = new MeetUpRepository(appDbContext);
            IMeetUpManager    meetUpManager = new MeetUpManager();

            CreateMeetUpDto newM = new CreateMeetUpDto()
            {
                Date        = DateTime.Now,
                CostPerSeat = 0M,
                Location    = "New Location",
                SeatRows    = 10,
                SeatsPerRow = 10
            };

            MeetUp mu = meetUpManager.CreateNewMeetUp(newM.Date.Value, newM.Location, newM.SeatRows, newM.SeatsPerRow, newM.CostPerSeat.Value);

            //act
            mu = _repo.Create(mu);
            await _repo.SaveChangesAsync();

            //assert
            Assert.True(mu.Id == 3);
            Assert.Equal(newM.Location, mu.Location);
            Assert.Equal(3, mu.SeatGrid.Id);
            Assert.Equal(100, mu.SeatGrid.Seats?.Count);

            //clean up otherwise the other test will complain about key tracking.
            await appDbContext.DisposeAsync();
        }
Ejemplo n.º 2
0
        public async Task Updating_meetup_from_untracked_should_update()
        {
            //arrange
            MeetUp meetUp = new MeetUp()
            {
                Id          = 1,
                CostPerSeat = 1M,
                Location    = "Updated Location",
                Date        = DateTime.Now.AddDays(2)
            };
            AppDbContext      appDbContext = AppDbContextMocker.GetAppDbContext("test_3");
            IMeetUpRepository _repo        = new MeetUpRepository(appDbContext);

            //act
            _repo.Update(meetUp);
            await _repo.SaveChangesAsync();

            var getEnt = _repo.FetchById(meetUp.Id);

            //assert
            Assert.Equal(meetUp.Id, getEnt.Id);
            Assert.Equal(meetUp.Location, getEnt.Location);//default location is Location 1
            Assert.True(getEnt.SeatGrid != null);


            await appDbContext.DisposeAsync();
        }
Ejemplo n.º 3
0
        public async Task Removing_record_should_remove_all_children()
        {
            //arrange
            MeetUp meetUp = new MeetUp()
            {
                Id          = 1,
                CostPerSeat = 0M,
                Location    = "Delete Record",
                Date        = DateTime.Now.AddDays(2)
            };
            AppDbContext      appDbContext = AppDbContextMocker.GetAppDbContext("test_4");
            IMeetUpRepository _repo        = new MeetUpRepository(appDbContext);

            //act
            _repo.Delete(meetUp); // delete by entity
            await _repo.SaveChangesAsync();

            var delEnt = await _repo.FindByIdAsync(meetUp.Id);

            _repo.Delete(2);
            await _repo.SaveChangesAsync();

            var delEnt2 = await _repo.FindByIdAsync(2);

            var all = await _repo.FindByExpressionAsync(m => m.Id > 0);

            var anyGrids = appDbContext.SeatGrids.Where(x => x.Id > 0);

            //assert
            Assert.Null(delEnt);
            Assert.Null(delEnt2);
            Assert.True(all.Count() == 0);
            Assert.True(anyGrids.Count() == 0);

            await appDbContext.DisposeAsync();
        }