Exemplo n.º 1
0
        private void InitializeTestData(out Genre genre, out Game game, out List <Genre> genres)
        {
            var gameBuilder  = new GameBuilder();
            var genreBuilder = new GenreBuilder();

            genre           = genreBuilder.WithName("Sport").WithId(Guid.NewGuid()).Build();
            genre.Languages = new List <GenreTranslation>();

            genres = new List <Genre>
            {
                genreBuilder.WithName("Sport").Build(),
                genreBuilder.WithName("Rally").Build(),
                genreBuilder.WithName("TBS").Build()
            };

            game = gameBuilder
                   .WithId(new Guid("2245390a-6aaa-4191-35f5-08d7223464b8"))
                   .WithKey("c21")
                   .WithName("Cry Souls")
                   .WithDescription("Cry Souls desc")
                   .WithUnitsInStock(10)
                   .WithPrice(10)
                   .WithPublisher("Unknown")
                   .WithGameGenres()
                   .Build();

            game.Languages = new List <GameTranslation>();
        }
Exemplo n.º 2
0
        private void InitializeTestData(out Game game,
                                        out Platform platform,
                                        out Publisher publisher,
                                        out Genre genre)
        {
            var genreBuilder        = new GenreBuilder();
            var gameBuilder         = new GameBuilder();
            var gamePlatformBuilder = new GamePlatformBuilder();
            var publisherBuilder    = new PublisherBuilder();
            var gameGenreBuilder    = new GameGenreBuilder();
            var platformTypeBuilder = new PlatformTypeBuilder();

            game = gameBuilder.WithId(new Guid("2245390a-6aaa-4191-35f5-08d7223464b8")).WithKey("c21")
                   .WithName("Cry Souls").WithDescription("Cry Souls desc").WithUnitsInStock(10).WithPrice(10).WithPublisher("Unknown").Build();

            game.GameGenres = new List <GameGenre>
            {
                gameGenreBuilder.WithGenre("Sport").Build()
            };

            game.GamePlatforms = new List <GamePlatform>
            {
                gamePlatformBuilder.WithPlatformType("Desktop").Build()
            };

            platform  = platformTypeBuilder.WithId(Guid.NewGuid()).WithType("Desktop").Build();
            publisher = publisherBuilder.WithCompanyName("Unknown").Build();

            genre = genreBuilder.WithName("Sport").WithId(new Guid("1255390a-6aaa-4191-35f5-08d7223464b8")).Build();
        }
Exemplo n.º 3
0
        public void Create_MissingAlbum_TrowsException()
        {
            //Arrange
            var genre = new GenreBuilder().Build();

            //Act

            //Assert
            Assert.That(() => _factory.Create(null, genre),
                        Throws.TypeOf <ArgumentException>()
                        .With.Message.EqualTo("Illegal parameter : Album"));
        }
Exemplo n.º 4
0
        public void Create_MismatchBetweenAlbumAndGenre_TrowsException()
        {
            //Arrange
            Random random = new Random();
            var    genre  = new GenreBuilder().WithId(random.Next(1, int.MaxValue)).Build();
            var    album  = new AlbumBuilder().WithGenreId(random.Next(1, int.MaxValue)).Build();

            //Act

            //Assert
            Assert.That(() => _factory.Create(album, genre),
                        Throws.TypeOf <ArgumentException>()
                        .With.Message.EqualTo("Genre ID mismatch"));
        }
Exemplo n.º 5
0
        public void Create_ValidAlbumAndValidGenre_CorrectlyMapped()
        {
            //Arrange
            var genre = new GenreBuilder().Build();
            var album = new AlbumBuilder().WithGenreId(genre.Id).Build();

            //Act
            var resultModel = _factory.Create(album, genre) as AlbumViewModel;

            //Assert
            Assert.That(resultModel, Is.Not.Null);
            Assert.That(resultModel.Genre, Is.EqualTo(genre.Name));
            Assert.That(resultModel.Title, Is.EqualTo(album.Title));
            Assert.That(resultModel.Artist, Is.EqualTo(album.Artist));
        }
        public void Details_ShowsDetailsOfAlbum()
        {
            //Arrange
            var genre          = new GenreBuilder().WithId().Build();
            var album          = new AlbumBuilder().WithGenreId(genre.Id).Build();
            var albumViewModel = new AlbumViewModelBuilder().Build();

            _controller._albumRepositoryMock.Setup(repo => repo.GetById(album.Id))
            .Returns(album);
            _controller._genreRepositoryMock.Setup(repo => repo.GetById(genre.Id)).Returns(genre);
            _controller._albumViewModelFactoryMock.Setup(factory => factory.Create(album, genre))
            .Returns(albumViewModel);

            //Act
            var resultView = _controller.Details(album.Id) as ViewResult;

            //Assert
            Assert.That(resultView, Is.Not.Null);
            _controller._albumRepositoryMock.Verify(repo => repo.GetById(album.Id), Times.Once);
            _controller._genreRepositoryMock.Verify(repo => repo.GetById(album.GenreId), Times.Once);
            _controller._albumViewModelFactoryMock.Verify(factory => factory.Create(album, genre), Times.Once);
            Assert.That(resultView.Model, Is.EqualTo(albumViewModel));
        }