From ebe2da81ad53466ece10db4c9c876cc9c152c070 Mon Sep 17 00:00:00 2001 From: Jakub Bednar Date: Mon, 15 Aug 2022 15:44:42 +0200 Subject: [PATCH 1/2] fix: append task option at the end of script --- Client.Test/ItTasksApiTest.cs | 28 +++++++++++++++++++++++++--- Client/TasksApi.cs | 2 +- 2 files changed, 26 insertions(+), 4 deletions(-) diff --git a/Client.Test/ItTasksApiTest.cs b/Client.Test/ItTasksApiTest.cs index 58f2a65b3..d13422a9c 100644 --- a/Client.Test/ItTasksApiTest.cs +++ b/Client.Test/ItTasksApiTest.cs @@ -171,7 +171,7 @@ public async Task CreateTaskCron() Assert.AreEqual(TaskStatusType.Active, task.Status); Assert.AreEqual("0 2 * * *", task.Cron); Assert.IsNull(task.Every); - Assert.IsTrue(task.Flux.EndsWith(TaskFlux, StringComparison.OrdinalIgnoreCase)); + StringAssert.StartsWith(TaskFlux, task.Flux); } [Test] @@ -189,7 +189,7 @@ public async Task CreateTaskEvery() Assert.AreEqual(TaskStatusType.Active, task.Status); Assert.AreEqual("1h", task.Every); Assert.IsNull(task.Cron); - Assert.IsTrue(task.Flux.EndsWith(TaskFlux, StringComparison.OrdinalIgnoreCase)); + StringAssert.StartsWith(TaskFlux, task.Flux); } [Test] @@ -586,7 +586,7 @@ public async Task UpdateTask() var cronTask = await _tasksApi.CreateTaskCronAsync(taskName, TaskFlux, "0 2 * * *", _organization); - var flux = $"option task = {{name: \"{taskName}\", every: 3m}}\n\n{TaskFlux}"; + var flux = $"{TaskFlux}\n\noption task = {{name: \"{taskName}\", every: 3m}}"; cronTask.Every = "3m"; cronTask.Cron = null; @@ -607,5 +607,27 @@ public async Task UpdateTask() Assert.IsNotNull(updatedTask.UpdatedAt); } + + [Test] + public async Task CreateTaskWithMoreFrom() + { + var taskName = GenerateName("it task"); + + const string flux = "procTotal = from(bucket: \"example-bucket\")" + + " |> range(start: -5m)" + + " |> filter(fn: (r) => r._measurement == \"processes\" and r._field == \"total\")" + + "" + + "procTotal"; + + var task = await _tasksApi.CreateTaskCronAsync(taskName, flux, "0 2 * * *", _organization); + + Assert.IsNotNull(task); + Assert.IsNotEmpty(task.Id); + Assert.AreEqual(taskName, task.Name); + Assert.AreEqual(_organization.Id, task.OrgID); + Assert.AreEqual(TaskStatusType.Active, task.Status); + Assert.AreEqual("0 2 * * *", task.Cron); + StringAssert.StartsWith(flux, task.Flux); + } } } \ No newline at end of file diff --git a/Client/TasksApi.cs b/Client/TasksApi.cs index a184e50ef..98c4276e6 100644 --- a/Client/TasksApi.cs +++ b/Client/TasksApi.cs @@ -1324,7 +1324,7 @@ private TaskType CreateTaskAsync(string name, string flux, string every, string repetition += "\"" + cron + "\""; } - task.Flux = $"option task = {{name: \"{name}\", {repetition}}} \n {flux}"; + task.Flux = $"{flux}\n\noption task = {{name: \"{name}\", {repetition}}}"; return task; } From 61cab1df4652fbd1fc87bf6272f952083a3ac3b6 Mon Sep 17 00:00:00 2001 From: Jakub Bednar Date: Mon, 15 Aug 2022 15:47:29 +0200 Subject: [PATCH 2/2] docs: update CHANGELOG.md --- CHANGELOG.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index f704f0dd9..e0df1bc77 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,8 @@ ## 4.5.0 [unreleased] +### Bug Fixes +1. [#348](https://github.com/influxdata/influxdb-client-csharp/pull/348): Append `task option` at the end of script + ### Dependencies Update dependencies: