public ActionResult Index() { try { var idUser = User.Identity.GetUserId(); var userPublicationsConcrete = UserPublicationService.GetUserPublicationsForConcreteUser(_factory, idUser); ViewBag.Sum = UserPublicationService.GetUnpaidSumForUser(_factory, idUser); var account = UserService.GetAccountOfUser(_factory, idUser); ViewBag.AccountSum = account.Balance; return(View(userPublicationsConcrete)); } catch (Exception ex) { logger.Error(ex, ex.Message); return(View("Error", new HandleErrorInfo(ex, "UserPublications", "Index"))); } }
public void GetUnpaidSumForUser() { var user = new ApplicationUser { Id = "1", Email = "*****@*****.**", UserName = "******", FirstName = "User1", LastName = "User1" }; var p4 = new Publication { PublicationId = 4, NameOfPublication = "БудМайстер", Description = @"ЖУРНАЛ БУДМАЙСТЕР - специализированный журнал, который рассчитан на читателей, практикующих в области строительства, ремонта, дизайна и архитектуры. Журнал позиционируется как рекламно-информационное периодическое издание. Материалы, публикуемые в журнале, информируют о состоянии отечественного строительного рынка, перспективах развития строительного комплекса Украины, современных строительных материалах и технологиях.", Periodicity = "ежемесячно", Format = "А4", Color = "полноцвет", Volume = 100, PricePerMonth = 65, }; var p2 = new Publication { PublicationId = 2, NameOfPublication = "Auto Bild Все ведущие. Всеукраинские издания", Description = @"Журнал Auto Bild Все ведущие – это оперативные тесты авто, новости от производителей, история автомобилестроения, эксплуатация, ремонт и практические советы автомобилистам, авто-мото спорт, цены на новые авто. ", Periodicity = "ежемесячно", Format = "А4", Color = "полноцвет", Volume = 76, PricePerMonth = 60, }; Mock <IRepositoryFactory> mock = new Mock <IRepositoryFactory>(); mock.Setup(a => a.UserPublicationRepository.Get()).Returns(new List <UserPublication> { new UserPublication { UserPublicationId = 1, Publication = p4, UserId = user.Id, StartDate = DateTime.Now, EndDate = DateTime.Now.AddMonths(4), Period = 4, PaymentState = true }, new UserPublication { UserPublicationId = 1, Publication = p2, UserId = user.Id, StartDate = DateTime.Now, EndDate = DateTime.Now.AddMonths(4), Period = 1, PaymentState = false }, }); double result = UserPublicationService.GetUnpaidSumForUser(mock.Object, user.Id); Assert.AreEqual(60, result); }