public void ShouldThrowArgumentException_WhenGetPicturesEventArgsAdvertIdPropertyIsNotPositive(int invalidAdvertId)
        {
            var advertDetailViewMock = new Mock <IAdvertDetailView>();
            var advertServiceMock    = new Mock <IAdvertServices>();
            var pictureServiceMock   = new Mock <IPictureServices>();

            var advertDetailPresenter = new AdvertDetailPresenter(
                advertDetailViewMock.Object,
                pictureServiceMock.Object,
                advertServiceMock.Object);

            var getPicturesEventArgs = new GetPicturesEventArgs(invalidAdvertId);

            Assert.That(
                () => advertDetailPresenter.View_OnGetPicturesByAdvertId(null, getPicturesEventArgs),
                Throws.InstanceOf <ArgumentException>());
        }
        public void InvokeIPictureService_GetPicturesByAdvertIdMethodOnce()
        {
            var advertDetailViewMock = new Mock <IAdvertDetailView>();

            advertDetailViewMock.SetupGet(view => view.Model).Returns(new AdvertDetailViewModel());

            var advertServiceMock  = new Mock <IAdvertServices>();
            var pictureServiceMock = new Mock <IPictureServices>();

            var advertDetailPresenter = new AdvertDetailPresenter(
                advertDetailViewMock.Object,
                pictureServiceMock.Object,
                advertServiceMock.Object);

            var getPicturesEventArgs = new GetPicturesEventArgs(3);

            advertDetailPresenter.View_OnGetPicturesByAdvertId(null, getPicturesEventArgs);

            pictureServiceMock.Verify(service => service.GetPicturesByAdvertId(It.IsAny <int>()), Times.Once);
        }