コード例 #1
0
        public async Task MusicsController_GetMusicById_ReturnOk()
        {
            var options = new DbContextOptionsBuilder <MyMusicDbContext>()
                          .UseInMemoryDatabase(databaseName: "TestNewListDb").Options;

            using (var context = new MyMusicDbContext(options))
            {
                _UnitOfWork   = new UnitOfWork(context);
                _musicService = new MusicService(_UnitOfWork);
                var controller = new MusicsController(_musicService, _mapper);


                var listMusic = new List <MyMusic.Core.Model.Music>();

                var musicTest = new List <MyMusic.Core.Model.Music>()
                {
                    new MyMusic.Core.Model.Music()
                    {
                        Id       = 1,
                        Name     = "Music Name1",
                        ArtistId = 1,
                        Artist   = new Core.Model.Artist()
                        {
                            Id     = 1,
                            Name   = "ArtistName",
                            Musics = listMusic
                        }
                    },

                    new MyMusic.Core.Model.Music()
                    {
                        Id       = 2,
                        Name     = "Music Name2",
                        ArtistId = 2,
                        Artist   = new Core.Model.Artist()
                        {
                            Id     = 2,
                            Name   = "ArtistName",
                            Musics = listMusic
                        }
                    }
                };

                await context.Musics.AddRangeAsync(musicTest);

                await context.SaveChangesAsync();

                var result = controller.GetMusicById(1).GetAwaiter().GetResult().Result as OkObjectResult;
                Assert.IsType <OkObjectResult>(result);
                var musicResourse = Assert.IsType <MusicResource>(result.Value);

                Assert.Equal(1, musicResourse.Id);
                Assert.Equal("Music Name1", musicResourse.Name);
            };
        }