public async Task <QuestionServiceModel> GetQuestionById(string id)
        {
            QuestionServiceModel question = await this.context.Questions.To <QuestionServiceModel>()
                                            .SingleOrDefaultAsync(a => a.Id == id);

            return(question);
        }
Пример #2
0
        public async Task <ActionResult> Index()
        {
            DashboardViewModel model = new DashboardViewModel();

            QuestionServiceModel message = await this.questionsService.ReadLastMessage();

            if (message != null)
            {
                model = message.To <DashboardViewModel>();
            }

            if (message.SystemUserId == null)
            {
                model.UserEmail = "Unregistered user";
            }

            var admissionProcedureModel = await this.adminService.GetLastProcedure();

            model.Status          = admissionProcedureModel.Status.ToString();
            model.RankingDate     = admissionProcedureModel.RankingDate;
            model.StartEnrollment = admissionProcedureModel.StartEnrollment;
            model.EndEnrollment   = admissionProcedureModel.EndEnrollment;

            return(this.View(model));
        }
Пример #3
0
        public async Task CreateMessage_WithNoExistEmail_ShouldCreateMessage()
        {
            var q1 = new QuestionServiceModel
            {
                Subject = "Zashto ne raboti",
                Content = "Ami ne raboti i ne znam zashto",
            };

            var result = await this.QuestionsServiceMock.CreateMessage(null, q1);

            Assert.True(result == true);
        }
Пример #4
0
        public async Task <bool> CreateMessage(ClaimsPrincipal userIdentity, QuestionServiceModel model)
        {
            var quetsion = new Question
            {
                Subject      = model.Subject,
                Content      = model.Content,
                SystemUserId = model.SystemUserId,
            };

            await this.qestionRepository.AddAsync(quetsion);

            var result = await this.qestionRepository.SaveChangesAsync();

            return(result > 0);
        }
        public async Task <IActionResult> Create(QuestionCreateInputModel model)
        {
            if (!this.ModelState.IsValid)
            {
                return(this.View(model));
            }
            model.CreatedOn      = DateTime.UtcNow;
            model.AuthorUserName = this.User.FindFirst(ClaimTypes.Name).Value;
            model.AuthorId       = this.User.FindFirst(ClaimTypes.NameIdentifier).Value;

            QuestionServiceModel serviceModel = model.To <QuestionServiceModel>();

            await this.questionsService.Create(serviceModel);

            return(this.Redirect("/Questions/All"));
        }
Пример #6
0
        public async Task ReadLastMessage_ShouldReturnLastMessage()
        {
            this.SeedTestData(this.DbContext);
            var qLast = new QuestionServiceModel
            {
                Subject = "Zashto zashto zashtooo",
                Content = "Ima tolkova neraboteshti neshta che chak se chudya zashtooo",
            }.To <Question>();

            this.DbContext.Questions.Add(qLast);
            this.DbContext.SaveChanges();

            var actual = await this.QuestionsServiceMock.ReadLastMessage();

            Assert.True(actual.Subject == qLast.Subject);
            Assert.True(actual.Content == qLast.Content);
        }
        public async Task <bool> Create(QuestionServiceModel questionServiceModel)
        {
            CDGUser author = await this.context.Users.SingleOrDefaultAsync(u => u.Id == questionServiceModel.AuthorId);

            Question question = new Question
            {
                Content   = questionServiceModel.Content,
                CreatedOn = questionServiceModel.CreatedOn,
            };

            question.Author = author;

            await this.context.Questions.AddAsync(question);

            int result = await this.context.SaveChangesAsync();

            return(result > 0);
        }
Пример #8
0
        public async Task <IActionResult> ContactForm(ContactFormInputModel input)
        {
            if (!this.ModelState.IsValid)
            {
                return(this.View(input));
            }

            QuestionServiceModel model        = input.To <QuestionServiceModel>();
            ClaimsPrincipal      userIdentity = this.User;

            if (input.UserEmail == userIdentity.Identity.Name)
            {
                model.SystemUserId = this.userManager.GetUserId(userIdentity);
            }

            await this.questionsService.CreateMessage(userIdentity, model);

            return(this.Redirect("/"));
        }
Пример #9
0
        public async Task Create_WithCorrectData_ShouldSuccesfullyCreate()
        {
            string errorMessagePrefix = "QuestionsService Method CreateQuestion() does not work properly.";

            var context = CDGBulgariaInmemoryFactory.InitializeContext();

            this.questionsService = new QuestionsService(context);

            QuestionServiceModel questionModel = new QuestionServiceModel()
            {
                Content   = "Are there really found medicines for this desease?",
                AuthorId  = "trahjgtss123",
                CreatedOn = DateTime.Parse("10/07/2019 10:30"),
            };

            bool actualResult = await this.questionsService.Create(questionModel);

            Assert.True(actualResult, errorMessagePrefix);
        }