コード例 #1
0
        public override async Task <bool> TrackAddAsync(Track track)
        {
            // Map track to db model
            DBModels.Track dbTrack = autoMapper.Map <DBModels.Track>(track);

            // Add new track to database
            int recordsChanged;

            try { recordsChanged = await repository.TrackAddAsync(dbTrack); }
            catch { recordsChanged = 0; }
            return(recordsChanged > 0);
        }
コード例 #2
0
        public async Task TrackAddAsync_SavesItem()
        {
            Mock <DbSet <Track> >     mockTracks  = new Mock <DbSet <Track> >();
            Mock <MusicDemoDbContext> mockContext = new Mock <MusicDemoDbContext>();

            mockContext.Setup(m => m.Tracks).Returns(mockTracks.Object);

            MusicDemoRepository repo = new MusicDemoRepository(mockContext.Object);
            await repo.TrackAddAsync(new Track { Name = "MxPx" });

            mockTracks.Verify(m => m.Add(It.Is <Track>(a => a.Name == "MxPx")), Times.Once());
            mockContext.Verify(m => m.SaveChangesAsync(), Times.Once());
        }