Exemplo n.º 1
0
        public async Task ShouldReturnSingleSecretInfoWhenGetSecretCalled()
        {
            //Given
            const string secretName = "api";
            var          spec       = new SecretSpec {
                Name = secretName
            };

            _swarmClient.GetSecrets().Returns(x => {
                return(Task.FromResult <IEnumerable <Secret> >(new [] { _any.Create <Secret>(),
                                                                        _any.Build <Secret>().With(t => t.Spec, spec).Create() }));
            });
            var secretService    = new SecretService(_swarmClient, _loggerFactory);
            var secretController = new SecretController(secretService);

            //When
            var response = await secretController.GetSecret(secretName);

            var jsonResult = response as JsonResult;
            var value      = jsonResult?.Value as Secret;

            //Then
            Assert.NotNull(jsonResult);
            Assert.NotNull(value);
            Assert.Equal(200, jsonResult.StatusCode);
        }
        async Task <SecretOrConfigCreateResponse> ISecretsOperations.CreateAsync(SecretSpec body, CancellationToken cancellationToken)
        {
            if (body == null)
            {
                throw new ArgumentNullException(nameof(body));
            }

            var data     = new JsonRequestContent <SecretSpec>(body, this._client.JsonSerializer);
            var response = await this._client.MakeRequestAsync(this._client.NoErrorHandlers, HttpMethod.Post, "secrets/create", null, data, cancellationToken).ConfigureAwait(false);

            return(this._client.JsonSerializer.DeserializeObject <SecretOrConfigCreateResponse>(response.Body));
        }
Exemplo n.º 3
0
        public async Task ShouldReturnNotFoundWhenGetSecretCalledDoesNotMatchPredicate()
        {
            //Given
            const string secretName = "api";
            var          spec       = new SecretSpec {
                Name = secretName
            };

            _swarmClient.GetSecrets().Returns(x => {
                return(Task.FromResult <IEnumerable <Secret> >(new [] { _any.Create <Secret>(),
                                                                        _any.Build <Secret>().With(t => t.Spec, spec).Create() }));
            });
            var secretService    = new SecretService(_swarmClient, _loggerFactory);
            var secretController = new SecretController(secretService);

            //When
            var response = await secretController.GetSecret("user-service");

            var result = response as ContentResult;

            //Then
            Assert.NotNull(result);
            Assert.Equal(404, result.StatusCode);
        }
Exemplo n.º 4
0
 public async Task <SecretCreateResponse> CreateSecret(SecretSpec body)
 {
     return(await _client.Secrets.CreateAsync(body));
 }