コード例 #1
0
        public void ReturnAllBands_WithTheGivenGenre()
        {
            string genre    = "Metal";
            var    eventArg = new BandByGenreEventArgs()
            {
                Genre = genre
            };

            var viewMock = new Mock <IBandsByGenreDisplayView>();

            viewMock.Setup(x => x.Model).Returns(new BandsByGenreDisplayModel());

            Guid genreId          = Guid.NewGuid();
            var  genreServiceMock = new Mock <IGenreService>();

            genreServiceMock.Setup(x => x.GetGenre(genreId));

            var bands = this.GetBands();

            bands.Where(x => x.Genre.GenreName == genre).ToList();

            var bandServiceMock = new Mock <IBandService>();

            bandServiceMock.Setup(x => x.GetBandsByGenre(genre)).Returns(bands);

            var bandsByGenrePresenter = new BandsByGenreDisplayPresenter(
                viewMock.Object,
                genreServiceMock.Object,
                bandServiceMock.Object);

            viewMock.Raise(x => x.LoadBandsByGenre += null, eventArg);

            CollectionAssert.AreEquivalent(bands, viewMock.Object.Model.BandsByGenre);
        }
コード例 #2
0
        public void CreatesAnInstace_InheritingPresenter()
        {
            var viewMock         = new Mock <IBandsByGenreDisplayView>();
            var genreServiceMock = new Mock <IGenreService>();
            var bandServiceMock  = new Mock <IBandService>();

            var bandsByGenrePresenter = new BandsByGenreDisplayPresenter(
                viewMock.Object,
                genreServiceMock.Object,
                bandServiceMock.Object);

            Assert.That(bandsByGenrePresenter, Is.InstanceOf <Presenter <IBandsByGenreDisplayView> >());
        }
コード例 #3
0
        public void CreatesAnInstance_WhenServicesAreValud()
        {
            var viewMock         = new Mock <IBandsByGenreDisplayView>();
            var genreServiceMock = new Mock <IGenreService>();
            var bandServiceMock  = new Mock <IBandService>();

            var bandsByGenrePresenter = new BandsByGenreDisplayPresenter(
                viewMock.Object,
                genreServiceMock.Object,
                bandServiceMock.Object);

            Assert.That(bandsByGenrePresenter, Is.Not.Null);
        }
コード例 #4
0
        public void NotThrow_WhenServicesAreValid()
        {
            var viewMock         = new Mock <IBandsByGenreDisplayView>();
            var genreServiceMock = new Mock <IGenreService>();
            var bandServiceMock  = new Mock <IBandService>();

            Assert.DoesNotThrow(() =>
            {
                var bandsByGenrePresenter = new BandsByGenreDisplayPresenter(
                    viewMock.Object,
                    genreServiceMock.Object,
                    bandServiceMock.Object);
            });
        }
コード例 #5
0
        public void ThrowArgumentNullException_WhenBandService_IsNull()
        {
            var          viewMock        = new Mock <IBandsByGenreDisplayView>();
            var          genreService    = new Mock <IGenreService>();
            IBandService bandServiceMock = null;

            Assert.Throws <ArgumentNullException>(() =>
            {
                var bandsByGenrePresenter = new BandsByGenreDisplayPresenter(
                    viewMock.Object,
                    genreService.Object,
                    bandServiceMock);
            });
        }
コード例 #6
0
        public void ReturnInstancesOfGenre_WhenEventIsRaised()
        {
            var viewMock = new Mock <IBandsByGenreDisplayView>();

            viewMock.Setup(x => x.Model).Returns(new BandsByGenreDisplayModel());

            var genres = this.GetGenres();

            var genreServiceMock = new Mock <IGenreService>();

            genreServiceMock.Setup(x => x.GetAllGenres()).Returns(genres);

            var bandServiceMock = new Mock <IBandService>();

            var bandsByGenrePresenter = new BandsByGenreDisplayPresenter(
                viewMock.Object,
                genreServiceMock.Object,
                bandServiceMock.Object);

            viewMock.Raise(v => v.LoadGenres += null, EventArgs.Empty);
            CollectionAssert.AllItemsAreInstancesOfType(viewMock.Object.Model.Genres, typeof(Genre));
        }
コード例 #7
0
        public void LoadAllGenres_WhenEventIsRaised()
        {
            var viewMock = new Mock <IBandsByGenreDisplayView>();

            viewMock.Setup(x => x.Model).Returns(new BandsByGenreDisplayModel());

            var genres = this.GetGenres();

            var genreServiceMock = new Mock <IGenreService>();

            genreServiceMock.Setup(x => x.GetAllGenres()).Returns(genres);

            var bandServiceMock = new Mock <IBandService>();

            var bandsByGenrePresenter = new BandsByGenreDisplayPresenter(
                viewMock.Object,
                genreServiceMock.Object,
                bandServiceMock.Object);

            viewMock.Raise(v => v.LoadGenres += null, EventArgs.Empty);

            CollectionAssert.AreEquivalent(genres, viewMock.Object.Model.Genres);
        }