public void CreateAnInstance_WhenParametersAreCorrect()
        {
            var searchViewMock     = new Mock <ISearchView>();
            var advertServiceMock  = new Mock <IAdvertServices>();
            var pictureServiceMock = new Mock <IPictureServices>();

            var actualInstance = new SearcherPresenter(searchViewMock.Object, advertServiceMock.Object, pictureServiceMock.Object);

            Assert.That(actualInstance, Is.Not.Null);
        }
        public void SetCorrectValueToAdvertServiceField()
        {
            var searchViewMock     = new Mock <ISearchView>();
            var advertServiceMock  = new Mock <IAdvertServices>();
            var pictureServiceMock = new Mock <IPictureServices>();

            var actualInstance = new SearcherPresenter(searchViewMock.Object, advertServiceMock.Object, pictureServiceMock.Object);

            var bindingFlags            = BindingFlags.NonPublic | BindingFlags.Instance;
            var advertServiceField      = typeof(SearcherPresenter).GetField("advertService", bindingFlags);
            var advertServiceFieldValue = advertServiceField.GetValue(actualInstance);

            Assert.That(advertServiceFieldValue, Is.Not.Null);
        }
示例#3
0
        public void ShouldThrowArgumentExceptionWithCorrectMessage_WhenGetPicturePathEventArgsAdvertIdPropertyIsNotPositive(int invalidADvertId)
        {
            var searchViewMock     = new Mock <ISearchView>();
            var advertServiceMock  = new Mock <IAdvertServices>();
            var pictureServiceMock = new Mock <IPictureServices>();

            var searcherPresenter = new SearcherPresenter(searchViewMock.Object, advertServiceMock.Object, pictureServiceMock.Object);

            var getPicturePathEvetnArgs = new GetPicturePathEventArgs(invalidADvertId);

            Assert.That(
                () => searcherPresenter.View_OnGetPicturePath(null, getPicturePathEvetnArgs),
                Throws.InstanceOf <ArgumentException>());
        }
示例#4
0
        public void InvokeIPictureService_GetFirstPicturesNameByAdvertIdMethodOnce()
        {
            var searchViewMock = new Mock <ISearchView>();

            searchViewMock.SetupGet(view => view.Model).Returns(new SearchViewModel());

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

            var searcherPresenter = new SearcherPresenter(searchViewMock.Object, advertServiceMock.Object, pictureServiceMock.Object);

            var getPicturePathEvetnArgs = new GetPicturePathEventArgs(3);

            searcherPresenter.View_OnGetPicturePath(null, getPicturePathEvetnArgs);

            pictureServiceMock.Verify(service => service.GetFirstPicturesNameByAdvertId(It.IsAny <int>()), Times.Once);
        }
        public void ShouldThrowArgumentExceptionWithCorrectMessage_WhenMaxPricePropertyIsNotPositive(int testMaxPrice)
        {
            int vehicleId = 3;
            int cityId    = 3;
            int minPrice  = 3;
            int maxPrice  = testMaxPrice;
            int yearFrom  = 3;
            int yearTo    = 3;

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

            var searcherPresenter = new SearcherPresenter(searchViewMock.Object, advertServiceMock.Object, pictureServiceMock.Object);

            var searchEventArgs = new SearchEventArgs(cityId, minPrice, maxPrice, yearFrom, yearTo, vehicleId);

            Assert.That(
                () => searcherPresenter.View_OnSearchAdverts(null, searchEventArgs),
                Throws.InstanceOf <ArgumentException>());
        }
示例#6
0
        public void AddPicturePathToViewModel_WhenOnGetPicturePathEventIsRaised(string testPicturePath)
        {
            // Arrange
            var searchViewMock = new Mock <ISearchView>();

            searchViewMock.SetupGet(view => view.Model).Returns(new SearchViewModel());

            var advertServiceMock = new Mock <IAdvertServices>();

            var pictureServiceMock = new Mock <IPictureServices>();

            pictureServiceMock.Setup(p => p.GetFirstPicturesNameByAdvertId(It.IsAny <int>())).Returns(testPicturePath);

            var searcherPresenter = new SearcherPresenter(searchViewMock.Object, advertServiceMock.Object, pictureServiceMock.Object);

            var getPictureEvetnArgs = new GetPicturePathEventArgs(3);

            // Act
            searchViewMock.Raise(v => v.OnGetPicturePath += null, getPictureEvetnArgs);

            // Assert
            CollectionAssert.AreEquivalent(testPicturePath, searchViewMock.Object.Model.PicturePath);
        }
        public void InvokeAdvertService_GetAdvertsByMultipleParametersMethodOnce()
        {
            int vehicleId = 3;
            int cityId    = 3;
            int minPrice  = 3;
            int maxPrice  = 3;
            int yearFrom  = 3;
            int yearTo    = 3;

            var searchViewMock = new Mock <ISearchView>();

            searchViewMock.SetupGet(view => view.Model).Returns(new SearchViewModel());

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

            var searcherPresenter = new SearcherPresenter(searchViewMock.Object, advertServiceMock.Object, pictureServiceMock.Object);

            var searchEventArgs = new SearchEventArgs(cityId, minPrice, maxPrice, yearFrom, yearTo, vehicleId);

            searcherPresenter.View_OnSearchAdverts(null, searchEventArgs);

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