Exemplo n.º 1
0
        public async Task CreateAsync_DepartmentValidationFailed_ThrowsError()
        {
            // Arrange
            var fixture  = new Fixture();
            var task     = new TaskUpdateModel();
            var expected = fixture.Create <string>();

            var categoryGetService = new Mock <ICategoryGetService>();

            categoryGetService
            .Setup(x => x.ValidateAsync(task))
            .Throws(new InvalidOperationException(expected));

            var taskDataAccess = new Mock <ITaskDataAccess>();

            var taskGetService = new TaskCreateService(taskDataAccess.Object, categoryGetService.Object);

            // Act
            var action = new Func <Task>(() => taskGetService.CreateAsync(task));

            // Assert
            await action.Should().ThrowAsync <InvalidOperationException>().WithMessage(expected);

            taskDataAccess.Verify(x => x.InsertAsync(task), Times.Never);
        }
Exemplo n.º 2
0
 /// <summary>
 /// Конструктор <see cref="TaskController"/>.
 /// </summary>
 /// <param name="task_create_service">Сервис создания задачи в КСУ.</param>
 /// <param name="task_form_validation_service">Сервис проверки форм для создания задач КСУ.</param>
 /// <param name="service_settings_service">Сервис, предоставляющий доступ к API Noc Cordis.</param>
 /// <param name="logger">Логгер.</param>
 /// <param name="user_info_service">Сервис получени информации о пользователе.</param>
 public TaskController(TaskCreateService task_create_service,
                       TaskFormValidationService task_form_validation_service,
                       ServiceSettingsService service_settings_service,
                       ILogger <TaskController> logger,
                       IUserInfoService user_info_service)
 {
     _jiraServiceSettings = service_settings_service.GetSettingsByCode(JIRA_SERVICE_CODE);
     _taskCreateService   = task_create_service;
     _logger                    = logger;
     _userInfoService           = user_info_service;
     _taskFormValidationService = task_form_validation_service;
 }
Exemplo n.º 3
0
        public async Task CreateAsync_DepartmentValidationSucceed_CreatesTask()
        {
            // Arrange
            var task     = new TaskUpdateModel();
            var expected = new Domain.Task();

            var categoryGetService = new Mock <ICategoryGetService>();

            categoryGetService.Setup(x => x.ValidateAsync(task));

            var taskDataAccess = new Mock <ITaskDataAccess>();

            taskDataAccess.Setup(x => x.InsertAsync(task)).ReturnsAsync(expected);

            var taskGetService = new TaskCreateService(taskDataAccess.Object, categoryGetService.Object);

            // Act
            var result = await taskGetService.CreateAsync(task);

            // Assert
            result.Should().Be(expected);
        }
Exemplo n.º 4
0
 /// <summary>
 /// Конструктор <see cref="TaskController" /> .
 /// </summary>
 /// <param name="task_create_service">Сервис создания задачи в КСУ.</param>
 /// <param name="task_create_validation_service">Сервис проверки форм для создания задач КСУ.</param>
 /// <param name="service_settings_service">Сервис, предоставляющий доступ к API Noc Cordis.</param>
 /// <param name="logger">Логгер</param>
 /// <param name="user_info_service">Интерфейс для работы с HttpContext.</param>
 public TestTaskController(TaskCreateService task_create_service, TaskFormValidationService task_create_validation_service, ServiceSettingsService service_settings_service, ILogger <TaskController> logger, IUserInfoService user_info_service)
     : base(task_create_service, task_create_validation_service, service_settings_service, logger, user_info_service)
 {
 }
Exemplo n.º 5
0
        public void SetUp()
        {
            _jiraApiService          = Substitute.For <IJiraApiService>();
            _ldapService             = Substitute.For <ILdapService>();
            _workflowRepository      = Substitute.For <IBaseConfigurationRepository <Workflow> >();
            _taskRepository          = Substitute.For <IBaseConfigurationRepository <Task> >();
            _role2WorkflowRepository = Substitute.For <IBaseConfigurationRepository <Role2Workflow> >();
            _productRepository       = Substitute.For <IBaseConfigurationRepository <Product> >();
            _perimeterRepository     = Substitute.For <IBaseConfigurationRepository <Perimeter> >();
            _explorationRepository   = Substitute.For <IBaseConfigurationRepository <Exploration> >();

            _workflowRepository.GetAll().Returns(new List <Workflow>
            {
                new Workflow
                {
                    Id              = WORKFLOW_ID,
                    ProductId       = PRODUCT_ID,
                    TaskCode        = TaskCode.Explore.ToString(),
                    PerimeterId     = PERIMETER_ID,
                    ExplorationId   = EXPLORATION_ID,
                    CommitRequired  = true,
                    CommentTemplate = "template",
                    BusinessProcess = "619"
                }
            });

            _role2WorkflowRepository.GetAll().Returns(new List <Role2Workflow>
            {
                new Role2Workflow
                {
                    WorkflowId = WORKFLOW_ID,
                    Role       = ROLE
                }
            });

            _productRepository.GetAll().Returns(new List <Product>
            {
                new Product
                {
                    Id   = PRODUCT_ID,
                    Code = PRODUCT_CODE
                }
            });

            _explorationRepository.GetAll().Returns(new List <Exploration>
            {
                new Exploration
                {
                    Id   = EXPLORATION_ID,
                    Name = EXPLORATION_NAME
                }
            });

            _taskRepository.GetAll().Returns(new List <Task>
            {
                new Task
                {
                    Code = TaskCode.Explore.ToString(),
                    Name = EXPLORATION_NAME
                }
            });

            _perimeterRepository.GetAll().Returns(new List <Perimeter>
            {
                new Perimeter
                {
                    Key   = PERIMETER_ID,
                    Value = PERIMETER_VALUE
                }
            });

            _taskCreateService = new TaskCreateService
                                 (
                _jiraApiService,
                _ldapService,
                _taskRepository,
                _workflowRepository,
                _role2WorkflowRepository,
                _productRepository,
                _explorationRepository,
                _perimeterRepository
                                 );
        }