Skip to content

Commit 6ff2648

Browse files
authored
fix: append task option at the end of script (#398)
1 parent 24b0030 commit 6ff2648

3 files changed

Lines changed: 27 additions & 8 deletions

File tree

CHANGELOG.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ The `percentile()` function renamed to `quantile()`.
1010

1111
### Bug Fixes
1212
1. [#390](https://github.com/influxdata/influxdb-client-java/pull/390): Rename `percentile()` function renamed to `quantile()` [FluxDSL]
13+
1. [#398](https://github.com/influxdata/influxdb-client-java/pull/398): Append `task option` at the end of script
1314

1415
### Dependencies
1516
Update dependencies:

client/src/main/java/com/influxdb/client/internal/TasksApiImpl.java

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -722,10 +722,7 @@ private Task createTask(@Nonnull final String name,
722722
repetition += "\"" + cron + "\"";
723723
}
724724

725-
int fromBegin = flux.indexOf("from");
726-
String fluxWithOptions = flux.substring(0, fromBegin)
727-
+ String.format("option task = {name: \"%s\", %s}\n\n", name, repetition)
728-
+ flux.substring(fromBegin);
725+
String fluxWithOptions = String.format("%s\n\noption task = {name: \"%s\", %s}", flux, name, repetition);
729726

730727
task.setFlux(fluxWithOptions);
731728

client/src/test/java/com/influxdb/client/ITTasksApi.java

Lines changed: 25 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -157,7 +157,7 @@ void createTaskEvery() {
157157
Assertions.assertThat(task.getStatus()).isEqualTo(TaskStatusType.ACTIVE);
158158
Assertions.assertThat(task.getEvery()).isEqualTo("1h");
159159
Assertions.assertThat(task.getCron()).isNull();
160-
Assertions.assertThat(task.getFlux()).endsWith(TASK_FLUX);
160+
Assertions.assertThat(task.getFlux()).startsWith(TASK_FLUX);
161161
}
162162

163163
@Test
@@ -174,7 +174,7 @@ void createTaskCron() {
174174
Assertions.assertThat(task.getStatus()).isEqualTo(TaskStatusType.ACTIVE);
175175
Assertions.assertThat(task.getCron()).isEqualTo("0 2 * * *");
176176
Assertions.assertThat(task.getEvery()).isNull();
177-
Assertions.assertThat(task.getFlux()).endsWith(TASK_FLUX);
177+
Assertions.assertThat(task.getFlux()).startsWith(TASK_FLUX);
178178
Assertions.assertThat(task.getLinks()).isNotNull();
179179
Assertions.assertThat(task.getLinks().getLogs()).isEqualTo("/api/v2/tasks/" + task.getId() + "/logs");
180180
Assertions.assertThat(task.getLinks().getMembers()).isEqualTo("/api/v2/tasks/" + task.getId() + "/members");
@@ -341,10 +341,10 @@ void updateTask() {
341341
String taskName = generateName("it task");
342342
Task cronTask = tasksApi.createTaskCron(taskName, TASK_FLUX, "0 2 * * *", organization);
343343

344-
String flux = "option task = {\n"
344+
String flux = TASK_FLUX + "\n\noption task = {\n"
345345
+ " name: \"" + taskName + "\",\n"
346346
+ " every: 3m\n"
347-
+ "}\n\n" + TASK_FLUX;
347+
+ "}";
348348

349349
cronTask.setCron(null);
350350
cronTask.setEvery("3m");
@@ -774,6 +774,27 @@ void cloneTaskNotFound() {
774774
.hasMessage("HTTP status code: 404; Message: failed to find task: task not found");
775775
}
776776

777+
@Test
778+
void createTaskWithMoreFrom() {
779+
String name = generateName("it task");
780+
781+
String flux = "procTotal = from(bucket: \"example-bucket\")\n"
782+
+ " |> range(start: -5m)\n"
783+
+ " |> filter(fn: (r) => r._measurement == \"processes\" and r._field == \"total\")"
784+
+ "\n\n"
785+
+ "procTotal";
786+
Task task = tasksApi.createTaskCron(name, flux, "0 2 * * *", organization);
787+
788+
Assertions.assertThat(task).isNotNull();
789+
Assertions.assertThat(task.getId()).isNotBlank();
790+
Assertions.assertThat(task.getName()).isEqualTo(name);
791+
Assertions.assertThat(task.getOrgID()).isEqualTo(organization.getId());
792+
Assertions.assertThat(task.getStatus()).isEqualTo(TaskStatusType.ACTIVE);
793+
Assertions.assertThat(task.getCron()).isEqualTo("0 2 * * *");
794+
Assertions.assertThat(task.getEvery()).isNull();
795+
Assertions.assertThat(task.getFlux()).startsWith(flux);
796+
}
797+
777798
@Nonnull
778799
private Authorization addTasksAuthorization(final Organization organization) {
779800

0 commit comments

Comments
 (0)