Ejemplo n.º 1
0
        public void RemoveFromSeveralProjectCategories()
        {
            var projectCategoryService = new ProjectCategoryService(fixture.context);
            var projectCategory1       = projectCategoryService.Create(Randomize.String());
            var projectCategory2       = projectCategoryService.Create(Randomize.String());
            var projectCategoryIds     = new List <string> {
                projectCategory1.Id, projectCategory2.Id
            };

            var service  = new QuestionTemplateService(fixture.context);
            var template = service.GetAll().First();

            service.AddToProjectCategory(template.Id, projectCategory1.Id);
            service.AddToProjectCategory(template.Id, projectCategory2.Id);

            var nActiveFirstCategory  = service.ActiveQuestions(projectCategory1).Count();
            var nActiveSecondCategory = service.ActiveQuestions(projectCategory2).Count();
            var nTemplates            = service.GetAll().Count();

            var updatedQT  = service.RemoveFromProjectCategories(template.Id, projectCategoryIds);
            var updatedPC1 = projectCategoryService.Get(projectCategory1.Id);
            var updatedPC2 = projectCategoryService.Get(projectCategory2.Id);

            Assert.False(updatedQT.ProjectCategories.Contains(updatedPC1));
            Assert.False(updatedQT.ProjectCategories.Contains(updatedPC2));
            Assert.False(updatedPC1.QuestionTemplates.Contains(updatedQT));
            Assert.False(updatedPC2.QuestionTemplates.Contains(updatedQT));

            Assert.Equal(nActiveFirstCategory - 1, service.ActiveQuestions(projectCategory1).Count());
            Assert.Equal(nActiveSecondCategory - 1, service.ActiveQuestions(projectCategory2).Count());
            Assert.Equal(nTemplates, service.GetAll().Count());
        }
Ejemplo n.º 2
0
        public void RemoveFromProjectCategory()
        {
            var projectCategoryService = new ProjectCategoryService(fixture.context);
            var projectCategory        = projectCategoryService.Create(Randomize.String());

            var service  = new QuestionTemplateService(fixture.context);
            var template = service.GetAll().First();

            service.AddToProjectCategory(template.Id, projectCategory.Id);

            var nActive    = service.ActiveQuestions(projectCategory).Count();
            var nTemplates = service.GetAll().Count();

            var updatedQT = service.RemoveFromProjectCategories(template.Id, new List <string> {
                projectCategory.Id
            });
            var updatedPC = projectCategoryService.Get(projectCategory.Id);

            Assert.False(updatedQT.ProjectCategories.Contains(updatedPC));
            Assert.False(updatedPC.QuestionTemplates.Contains(updatedQT));

            Assert.Equal(nActive - 1, service.ActiveQuestions(projectCategory).Count());
            Assert.Equal(nTemplates, service.GetAll().Count());

            /* Removing the same QuestionTemplate should fail */
            Assert.Throws <Exception>(() =>
                                      service.RemoveFromProjectCategories(template.Id, new List <string> {
                projectCategory.Id
            })
                                      );
        }
Ejemplo n.º 3
0
        /* Primary mutations - manupulating specific Evaluations */
        public Evaluation CreateEvaluation(
            string name,
            string projectId,
            string previousEvaluationId,
            string projectCategoryId
            )
        {
            var azureUniqueId = _authService.GetOID();

            var project    = _projectService.GetProject(projectId);
            var evaluation = _evaluationService.Create(
                name: name,
                project: project,
                previousEvaluationId: previousEvaluationId
                );

            _participantService.Create(
                azureUniqueId: azureUniqueId,
                evaluation: evaluation,
                organization: Organization.All,
                role: Role.Facilitator
                );

            var projectCategory = _projectCategoryService.Get(projectCategoryId);
            var questions       = _questionTemplateService.ActiveQuestions(projectCategory);

            _questionService.CreateBulk(questions, evaluation);
            _questionService.SquashOrder(evaluation.Questions);

            var log = $"Evaluation with id: {evaluation.Id} was created by azureId: {azureUniqueId}";

            _logger.LogInformation(log);
            return(evaluation);
        }
Ejemplo n.º 4
0
        public void EditQuestionTemplate()
        {
            var     service    = new QuestionTemplateService(fixture.context);
            Barrier barrier    = Randomize.Barrier();
            var     originalQT = service.Create(
                barrier:      barrier,
                organization: Randomize.Organization(),
                text:         Randomize.String(),
                supportNotes: Randomize.String()
                );

            var projectCategory = new ProjectCategoryService(fixture.context).GetAll().First();

            originalQT = service.AddToProjectCategory(originalQT.Id, projectCategory.Id);

            var nTemplates = service.GetAll().Count();
            var nActive    = service.ActiveQuestions(projectCategory).Count();

            var newText         = Randomize.String();
            var newSupportNotes = Randomize.String();
            var newOrganization = Randomize.Organization();

            var updatedQT = service.Edit(
                questionTemplate: originalQT,
                barrier:          barrier,
                organization:     newOrganization,
                text:             newText,
                supportNotes:     newSupportNotes,
                status:           Status.Active
                );

            Assert.Equal(nTemplates + 1, service.GetAll().Count());
            Assert.Equal(nActive, service.ActiveQuestions(projectCategory).Count());

            Assert.Equal(newText, updatedQT.Text);
            Assert.Equal(newSupportNotes, updatedQT.SupportNotes);
            Assert.Equal(barrier, updatedQT.Barrier);
            Assert.Equal(newOrganization, updatedQT.Organization);

            Assert.Equal(originalQT, updatedQT.previous);
            Assert.True(updatedQT.ProjectCategories.Count() == 1);

            Assert.Equal(updatedQT.AdminOrder, originalQT.AdminOrder);
        }
Ejemplo n.º 5
0
        public Evaluation CreateEvaluation(string name, string projectId)
        {
            string     azureUniqueId = _authService.GetOID();
            Project    project       = _projectService.GetProject(projectId);
            Evaluation evaluation    = _evaluationService.Create(name, project);

            _participantService.Create(azureUniqueId, evaluation, Organization.All, Role.Facilitator);

            _questionService.CreateBulk(_questionTemplateService.ActiveQuestions(), evaluation);
            return(evaluation);
        }
        public void ActiveQuestions()
        {
            QuestionTemplateService questionTemplateService = new QuestionTemplateService(_context);

            List <QuestionTemplate> questionTemplates = questionTemplateService.ActiveQuestions();

            Assert.Equal(15, questionTemplates.Count);
            foreach (QuestionTemplate qt in questionTemplates)
            {
                Assert.True(qt.Status.Equals(Status.Active));
            }
        }
Ejemplo n.º 7
0
        public void AddToProjectCategory()
        {
            var projectCategoryService = new ProjectCategoryService(fixture.context);
            var projectCategory        = projectCategoryService.Create(Randomize.String());

            var service    = new QuestionTemplateService(fixture.context);
            var nActive    = service.ActiveQuestions(projectCategory).Count();
            var nTemplates = service.GetAll().Count();
            var template   = service.GetAll().First();

            var updatedQT = service.AddToProjectCategory(template.Id, projectCategory.Id);
            var updatedSP = projectCategoryService.Get(projectCategory.Id);

            Assert.True(updatedQT.ProjectCategories.Contains(updatedSP));
            Assert.True(updatedSP.QuestionTemplates.Contains(updatedQT));

            Assert.Equal(nActive + 1, service.ActiveQuestions(projectCategory).Count());
            Assert.Equal(nTemplates, service.GetAll().Count());

            /* Adding the same QuestionTemplate should fail */
            Assert.Throws <Exception>(() =>
                                      service.AddToProjectCategory(template.Id, projectCategory.Id)
                                      );
        }