Пример #1
0
 /// <summary>
 /// Constructs a new instance of <see cref="DefaultProcessExecutor" />.
 /// </summary>
 /// <param name="concurrencyService">An implementation of <see cref="IConcurrencyService" />.</param>
 /// <param name="processRunner">An implementation of <see cref="IProcessRunner" />.</param>
 /// <param name="executionTokenGenerator">An implementation of <see cref="IExecutionTokenGenerator" /> used to generate execution tokens.</param>
 /// <param name="logger">The logger.</param>
 public DefaultProcessExecutor(
     IConcurrencyService concurrencyService,
     IProcessRunner processRunner,
     IExecutionTokenGenerator executionTokenGenerator,
     ILogger <DefaultProcessExecutor> logger)
 {
     _concurrencyService      = concurrencyService ?? throw new ArgumentNullException(nameof(concurrencyService));
     _processRunner           = processRunner ?? throw new ArgumentNullException(nameof(processRunner));
     _executionTokenGenerator = executionTokenGenerator ?? throw new ArgumentNullException(nameof(executionTokenGenerator));
     _logger = logger ?? throw new ArgumentNullException(nameof(logger));
 }
        public void GenerateToken_skips_inner_generator_if_token_is_not_null([Frozen] TokenOptions options, [Frozen] IExecutionTokenGenerator inner, FixedTokenExecutionTokenGeneratorAdapter sut, ProcessStartInfo startInfo, string token)
        {
            options.Token = token;

            _ = sut.GenerateToken(startInfo);

            Mock.Get(inner).Verify(p => p.GenerateToken(It.IsAny <ProcessStartInfo>()), Times.Never);
        }
        public void GenerateToken_forwards_to_inner_generator_if_token_is_null([Frozen] TokenOptions options, [Frozen] IExecutionTokenGenerator inner, FixedTokenExecutionTokenGeneratorAdapter sut, ProcessStartInfo startInfo)
        {
            options.Token = null;

            _ = sut.GenerateToken(startInfo);

            Mock.Get(inner).Verify(p => p.GenerateToken(startInfo));
        }
        public void GenerateToken_returns_from_inner_generator_if_token_is_null([Frozen] TokenOptions options, [Frozen] IExecutionTokenGenerator inner, FixedTokenExecutionTokenGeneratorAdapter sut, ProcessStartInfo startInfo, string token)
        {
            Mock.Get(inner).Setup(p => p.GenerateToken(It.IsAny <ProcessStartInfo>())).Returns(token);

            options.Token = null;

            var result = sut.GenerateToken(startInfo);

            Assert.That(result, Is.EqualTo(token));
        }
Пример #5
0
 /// <summary>
 /// Constructs an adapter used to override the token generation process if a token is specified.
 /// </summary>
 /// <param name="inner">The adaptee.</param>
 /// <param name="options">The fixed token, if available.</param>
 public FixedTokenExecutionTokenGeneratorAdapter(IExecutionTokenGenerator inner, IOptions <TokenOptions> options)
 {
     _inner   = inner ?? throw new ArgumentNullException(nameof(inner));
     _options = options?.Value ?? throw new ArgumentNullException(nameof(options));
 }