예제 #1
0
        public void AddAdditionalConfigs_ProviderNotFound()
        {
            _taskProviderRepository.Setup(r => r.GetById(It.IsAny <int>(), It.IsAny <CancellationToken>()))
            .ReturnsAsync((TaskProvider)null);

            var service =
                new TaskProviderAdditionalConfigService(_taskProviderRepository.Object, _taskProviderAdditionalConfigRepository.Object);

            var exception = Record.ExceptionAsync(() => service.AddAdditionalConfigs(1, new List <TaskProviderAdditionalConfig>()));

            Assert.IsType <TaskProviderNotFoundException>(exception?.Result);
        }
예제 #2
0
        public async void AddAdditionalConfigs_Success()
        {
            _taskProviderRepository.Setup(r => r.GetById(It.IsAny <int>(), It.IsAny <CancellationToken>()))
            .ReturnsAsync((int id, CancellationToken cancellationToken) => new TaskProvider {
                Id = id
            });

            _taskProviderAdditionalConfigRepository
            .Setup(r => r.AddRange(It.IsAny <List <TaskProviderAdditionalConfig> >(), It.IsAny <CancellationToken>()))
            .ReturnsAsync(
                (List <TaskProviderAdditionalConfig> configs, CancellationToken cancellationToken) =>
            {
                var ids = new List <int>();
                for (int i = 0; i < configs.Count; i++)
                {
                    ids.Add(i + 1);
                }

                return(ids);
            });

            var service =
                new TaskProviderAdditionalConfigService(_taskProviderRepository.Object, _taskProviderAdditionalConfigRepository.Object);

            var newConfigs = new List <TaskProviderAdditionalConfig>
            {
                new TaskProviderAdditionalConfig {
                    Name = "Config1"
                },
                new TaskProviderAdditionalConfig {
                    Name = "Config2"
                }
            };
            var results = await service.AddAdditionalConfigs(1, newConfigs);

            Assert.Equal(2, results.Count);
        }