public MEpisode Insert(EpisodeInsertRequest request) { var mostRecentEpisode = ctx.Episodes.OrderByDescending(x => x.Id).FirstOrDefault(); if (mostRecentEpisode != null) { request.OverallNumberOfEpisode = mostRecentEpisode.OverallNumberOfEpisode + 1; } else { request.OverallNumberOfEpisode = 1; } var ep = _mapper.Map <Episode>(request); ctx.Episodes.Add(ep); ctx.SaveChanges(); foreach (var c in request.MainCharacters) { var mc = new EpisodeCharacter { CharacterId = c.Id, EpisodeId = ep.Id }; ctx.EpisodeCharacters.Add(mc); } ctx.SaveChanges(); return(_mapper.Map <MEpisode>(ep)); }
public CharacterRepositoryTests() { var connection = new SqliteConnection("DataSource=:memory:"); connection.Open(); var builder = new DbContextOptionsBuilder <FuturamaContext>() .UseSqlite(connection); _context = new FuturamaContext(builder.Options); _context.Database.EnsureCreated(); var actor = new Actor { Name = "Billy West" }; var episode = new Episode { Title = "Episode no. 1" }; var episodeCharacter = new EpisodeCharacter(); var episodes = new[] { episodeCharacter }; var character = new Character { Name = "Fry", Species = "Human", Actor = actor, Episodes = episodes }; episodeCharacter.Characters = character; episodeCharacter.Episode = episode; _context.Characters.Add(character); _context.SaveChanges(); }
public void Verify_Add_Should_AddTheEntityToTheContext() { // Arrange Mock<IDbSet<EpisodeCharacter>> mockSetEpisodeCharacters; var mockContext = EpisodeCharactersMockingSetup.DoMockingSetupForContext(false, out mockSetEpisodeCharacters); var repository = new EpisodeCharactersRepository(mockContext.Object); var episodeCharacters = new EpisodeCharacter { Active = true, CustomKey = "SALVATORE-RAA", }; // Act repository.Add(episodeCharacters); // Assert mockSetEpisodeCharacters.Verify(x => x.Add(episodeCharacters), Times.Once); }
public void Verify_Add_Should_AddTheEntityToTheContext() { // Arrange Mock <IDbSet <EpisodeCharacter> > mockSetEpisodeCharacters; var mockContext = EpisodeCharactersMockingSetup.DoMockingSetupForContext(false, out mockSetEpisodeCharacters); var repository = new EpisodeCharactersRepository(mockContext.Object); var episodeCharacters = new EpisodeCharacter { Active = true, CustomKey = "SALVATORE-RAA", }; // Act repository.Add(episodeCharacters); // Assert mockSetEpisodeCharacters.Verify(x => x.Add(episodeCharacters), Times.Once); }
public void Verify_MapToEntity_WithExistingEntity_AssignsEpisodeCharacterProperties() { // Arrange var mapper = new EpisodeCharacterMapper(); var model = EpisodeCharactersMockingSetup.DoMockingSetupForEpisodeCharacterModel(); // Act IEpisodeCharacter existingEntity = new EpisodeCharacter { Id = 1 }; mapper.MapToEntity(model.Object, ref existingEntity); // Assert // <None> // Related Objects Assert.Equal(model.Object.EpisodeId, existingEntity.EpisodeId); Assert.Equal(model.Object.CharacterId, existingEntity.CharacterId); // Associated Objects // <None> }