public async Task TestGettAllNewsReturnType()
        {
            var repository = new Mock <IDeletableEntityRepository <News> >();

            repository.Setup(r => r.All()).Returns(new List <News>
            {
                new News {
                    Id = "1"
                },
                new News {
                    Id = "2"
                },
            }.AsQueryable());
            var userManager = TestUserManager <ApplicationUser>();
            var emailSender = new Mock <IEmailSender>();

            emailSender.Setup(e => e.SendEmailAsync("123", "234", "345", "456", "567", null));

            var service = new Mock <NewsService>(repository.Object);

            var controller = new NewsController(service.Object, userManager, emailSender.Object);

            var userMock = new Mock <ClaimsPrincipal>();
            var controllerContextMock = new ControllerContext {
                HttpContext = new DefaultHttpContext {
                    User = userMock.Object
                },
            };

            controller.ControllerContext = controllerContextMock;

            var result = controller.Add();

            Assert.IsType <ViewResult>(result);

            try
            {
                await controller.Add(new NewsInputViewModel { Title = "1234" });
            }
            catch (NullReferenceException)
            {
                Assert.True(true);
            }

            try
            {
                await controller.Add(new NewsInputViewModel { Title = "1234", Content = "12345", });
            }
            catch (NullReferenceException)
            {
                Assert.True(true);
            }
        }
Ejemplo n.º 2
0
        public ActionResult NewsAdd(WriterModel model)
        {
            if (ModelState.IsValid)
            {
                List <Gallery> fotoList = new List <Gallery>();
                News           AddNew   = new News();
                AddNew.NewsContent = RemoveHtml.Delete(model.NewsContent);
                AddNew.CreateDate  = DateTime.Now;
                AddNew.CategoryId  = model.News.CategoryId;
                AddNew.NewsTitle   = model.NewsTitle;
                AddNew.UserId      = 2;
                news.Add(AddNew);
                foreach (HttpPostedFileBase file in model.files)
                {
                    //Checking file is available to save.
                    if (file != null)
                    {
                        var     InputFileName  = Path.GetFileName(file.FileName);
                        var     ServerSavePath = Path.Combine(Server.MapPath("~/Assets/img/") + InputFileName);
                        Gallery newPage        = new Gallery();
                        newPage.ImagePath = "Assets/img/" + InputFileName;
                        newPage.NewsId    = news.GetAll().Select(x => x.NewsId).LastOrDefault();
                        fotoList.Add(newPage);
                        gallery.Add(newPage);
                        //Save file to server folder
                        file.SaveAs(ServerSavePath);
                    }
                }
            }

            ViewBag.Kayit = "Kaydedildi";
            return(RedirectToAction("Writer", "Login", null));
        }
Ejemplo n.º 3
0
        public void _Call_ViewModelFactory_CreateAddNewsViewModel()
        {
            //Arrange
            var mockedAuthProvider     = new Mock <IAuthenticationProvider>();
            var mockedNewsService      = new Mock <INewsService>();
            var mockedViewModelFactory = new Mock <IViewModelFactory>();

            var fakeAcc           = new CloudinaryDotNet.Account("fake", "fake", "fake");
            var mockedCloudinary  = new Mock <Cloudinary>(fakeAcc);
            var newsControllerSUT = new NewsController(mockedAuthProvider.Object, mockedNewsService.Object, mockedViewModelFactory.Object, mockedCloudinary.Object);

            //Act
            var res = newsControllerSUT.Add() as ViewResult;

            //Assert
            mockedViewModelFactory.Verify(m => m.CreateAddNewsViewModel(mockedCloudinary.Object), Times.Once);
        }
Ejemplo n.º 4
0
        public void _Call_NewsService_CreateNews(
            string userId,
            string title,
            string text,
            CategoryEnum category,
            string coverPicUrl)
        {
            //Arrange
            var fakeAcc          = new CloudinaryDotNet.Account("fake", "fake", "fake");
            var mockedCloudinary = new Mock <Cloudinary>(fakeAcc);

            var model = new AddNewsViewModel(mockedCloudinary.Object)
            {
                Title        = title,
                Text         = text,
                Category     = category,
                CoverPicture = coverPicUrl,
            };

            var news = new Models.News();

            var mockedAuthProvider = new Mock <IAuthenticationProvider>();

            mockedAuthProvider.Setup(a => a.CurrentUserId).Returns(userId);

            var mockedNewsService = new Mock <INewsService>();

            mockedNewsService.Setup(s => s.CreateNews(It.IsAny <string>(), It.IsAny <string>(), It.IsAny <string>(), It.IsAny <string>(), It.IsAny <CategoryEnum>())).Returns(news);

            var mockedViewModelFactory = new Mock <IViewModelFactory>();

            mockedViewModelFactory.Setup(v => v.CreateAddNewsViewModel(It.IsAny <Cloudinary>())).Returns(model);

            var newsControllerSUT = new NewsController(mockedAuthProvider.Object, mockedNewsService.Object, mockedViewModelFactory.Object, mockedCloudinary.Object);

            newsControllerSUT.ModelState.Clear();

            //Act
            var res = newsControllerSUT.Add(model) as RedirectToRouteResult;

            //Assert
            mockedNewsService.Verify(n => n.CreateNews(userId, title, text, coverPicUrl, category), Times.Once);
        }
Ejemplo n.º 5
0
        public void _Return_View_With_Model()
        {
            //Arrange
            var model = new AddNewsViewModel();

            var mockedAuthProvider = new Mock <IAuthenticationProvider>();
            var mockedNewsService  = new Mock <INewsService>();

            var mockedViewModelFactory = new Mock <IViewModelFactory>();

            mockedViewModelFactory.Setup(v => v.CreateAddNewsViewModel(It.IsAny <Cloudinary>())).Returns(model);

            var fakeAcc           = new CloudinaryDotNet.Account("fake", "fake", "fake");
            var mockedCloudinary  = new Mock <Cloudinary>(fakeAcc);
            var newsControllerSUT = new NewsController(mockedAuthProvider.Object, mockedNewsService.Object, mockedViewModelFactory.Object, mockedCloudinary.Object);

            //Act
            var res = newsControllerSUT.Add() as ViewResult;

            //Assert
            Assert.AreEqual(model, res.Model);
        }
Ejemplo n.º 6
0
        public void _Return_RedirectToRouteResult_WithFalsePermanent()
        {
            //Arrange
            var fakeAcc          = new CloudinaryDotNet.Account("fake", "fake", "fake");
            var mockedCloudinary = new Mock <Cloudinary>(fakeAcc);

            var model = new AddNewsViewModel(mockedCloudinary.Object)
            {
                Title        = "Some title",
                Text         = "Some text",
                Category     = Models.Enums.CategoryEnum.Abstract,
                CoverPicture = "SomeUrl",
            };

            var news = new Models.News();

            var mockedAuthProvider = new Mock <IAuthenticationProvider>();

            mockedAuthProvider.Setup(a => a.CurrentUserId).Returns("userId");

            var mockedNewsService = new Mock <INewsService>();

            mockedNewsService.Setup(s => s.CreateNews(It.IsAny <string>(), It.IsAny <string>(), It.IsAny <string>(), It.IsAny <string>(), It.IsAny <CategoryEnum>())).Returns(news);

            var mockedViewModelFactory = new Mock <IViewModelFactory>();

            mockedViewModelFactory.Setup(v => v.CreateAddNewsViewModel(It.IsAny <Cloudinary>())).Returns(model);

            var newsControllerSUT = new NewsController(mockedAuthProvider.Object, mockedNewsService.Object, mockedViewModelFactory.Object, mockedCloudinary.Object);

            newsControllerSUT.ModelState.Clear();

            //Act
            var res = newsControllerSUT.Add(model) as RedirectToRouteResult;

            //Assert
            Assert.IsFalse(res.Permanent);
        }