コード例 #1
0
        public async Task CreateTest()
        {
            var createRequest = new TransformConfigCreate
            {
                ExternalId = "jetfire-cli-create-test",
                Name       = "Test: Create from C# API",
                Query      = "Foo",
            };

            var configId = await client.TransformConfigCreate(createRequest);

            try
            {
                Assert.True(configId.Id > 0);

                var list = await client.TransformConfigList();

                var config = Assert.Single(list.Where(x => x.Id == configId.Id));

                Assert.Equal(createRequest.Name, config.Name);
                Assert.Equal(createRequest.Query, config.Query);
            }
            finally
            {
                await client.TransformConfigDelete(configId.Id);
            }
        }
コード例 #2
0
        public async Task ExternalIdTest()
        {
            var createRequest = new TransformConfigCreate
            {
                ExternalId = "Foo",
                Name       = "Test: Create from C# API",
                Query      = "Foo",
            };

            var configId = await client.TransformConfigCreate(createRequest);

            try
            {
                Assert.True(configId.Id > 0);

                var list = await client.TransformConfigList();

                var config = Assert.Single(list.Where(x => x.Id == configId.Id));

                Assert.Equal(createRequest.Name, config.Name);
                Assert.Equal(createRequest.Query, config.Query);

                var duplicateExtIdException = await Assert.ThrowsAsync <JetfireApiException>(
                    () => client.TransformConfigCreate(createRequest));

                Assert.Equal(HttpMethod.Post, duplicateExtIdException.Method);
                Assert.Equal(HttpStatusCode.BadRequest, duplicateExtIdException.StatusCode);
                Assert.Equal("Duplicate externalId is not allowed", duplicateExtIdException.Error.Message);

                var invalidExternalIdConfig = new TransformConfigCreate {
                    ExternalId = "  foo  bar ", Name = "Test: Create from C# API", Query = "Foo"
                };
                var invalidExternalId = await Assert.ThrowsAsync <JetfireApiException>(
                    () => client.TransformConfigCreate(invalidExternalIdConfig));

                Assert.Equal(HttpMethod.Post, invalidExternalId.Method);
                Assert.Equal(HttpStatusCode.BadRequest, invalidExternalId.StatusCode);
                Assert.Equal("ExternalId is invalid", invalidExternalId.Error.Message);

                invalidExternalIdConfig.ExternalId = "foo?bar";
                invalidExternalId = await Assert.ThrowsAsync <JetfireApiException>(
                    () => client.TransformConfigCreate(invalidExternalIdConfig));

                Assert.Equal(HttpMethod.Post, invalidExternalId.Method);
                Assert.Equal(HttpStatusCode.BadRequest, invalidExternalId.StatusCode);
                Assert.Equal("ExternalId is invalid", invalidExternalId.Error.Message);
            }
            finally
            {
                await client.TransformConfigDelete(configId.Id);
            }
        }
コード例 #3
0
 public Task <TransformConfigId> TransformConfigCreate(TransformConfigCreate request, CancellationToken ct = default)
 => SendAsync <TransformConfigCreate, TransformConfigId>(HttpMethod.Post, "/api/transform/config", request, ct);