@@ -113,6 +113,20 @@ void fixedDelayTriggerIsReported() {
113
113
});
114
114
}
115
115
116
+ @ Test
117
+ void noInitialDelayFixedDelayTriggerIsReported () {
118
+ run (NoInitialDelayFixedDelayTriggerTask .class , (tasks ) -> {
119
+ assertThat (tasks .getCron ()).isEmpty ();
120
+ assertThat (tasks .getFixedRate ()).isEmpty ();
121
+ assertThat (tasks .getCustom ()).isEmpty ();
122
+ assertThat (tasks .getFixedDelay ()).hasSize (1 );
123
+ FixedDelayTaskDescriptor description = (FixedDelayTaskDescriptor ) tasks .getFixedDelay ().get (0 );
124
+ assertThat (description .getInitialDelay ()).isEqualTo (0 );
125
+ assertThat (description .getInterval ()).isEqualTo (1000 );
126
+ assertThat (description .getRunnable ().getTarget ()).isEqualTo (FixedDelayTriggerRunnable .class .getName ());
127
+ });
128
+ }
129
+
116
130
@ Test
117
131
void fixedRateScheduledMethodIsReported () {
118
132
run (FixedRateScheduledMethod .class , (tasks ) -> {
@@ -142,6 +156,20 @@ void fixedRateTriggerIsReported() {
142
156
});
143
157
}
144
158
159
+ @ Test
160
+ void noInitialDelayFixedRateTriggerIsReported () {
161
+ run (NoInitialDelayFixedRateTriggerTask .class , (tasks ) -> {
162
+ assertThat (tasks .getCron ()).isEmpty ();
163
+ assertThat (tasks .getFixedDelay ()).isEmpty ();
164
+ assertThat (tasks .getCustom ()).isEmpty ();
165
+ assertThat (tasks .getFixedRate ()).hasSize (1 );
166
+ FixedRateTaskDescriptor description = (FixedRateTaskDescriptor ) tasks .getFixedRate ().get (0 );
167
+ assertThat (description .getInitialDelay ()).isEqualTo (0 );
168
+ assertThat (description .getInterval ()).isEqualTo (2000 );
169
+ assertThat (description .getRunnable ().getTarget ()).isEqualTo (FixedRateTriggerRunnable .class .getName ());
170
+ });
171
+ }
172
+
145
173
@ Test
146
174
void taskWithCustomTriggerIsReported () {
147
175
run (CustomTriggerTask .class , (tasks ) -> {
@@ -223,6 +251,16 @@ public void configureTasks(ScheduledTaskRegistrar taskRegistrar) {
223
251
224
252
}
225
253
254
+ static class NoInitialDelayFixedDelayTriggerTask implements SchedulingConfigurer {
255
+
256
+ @ Override
257
+ public void configureTasks (ScheduledTaskRegistrar taskRegistrar ) {
258
+ PeriodicTrigger trigger = new PeriodicTrigger (Duration .ofSeconds (1 ));
259
+ taskRegistrar .addTriggerTask (new FixedDelayTriggerRunnable (), trigger );
260
+ }
261
+
262
+ }
263
+
226
264
static class FixedRateTriggerTask implements SchedulingConfigurer {
227
265
228
266
@ Override
@@ -235,6 +273,17 @@ public void configureTasks(ScheduledTaskRegistrar taskRegistrar) {
235
273
236
274
}
237
275
276
+ static class NoInitialDelayFixedRateTriggerTask implements SchedulingConfigurer {
277
+
278
+ @ Override
279
+ public void configureTasks (ScheduledTaskRegistrar taskRegistrar ) {
280
+ PeriodicTrigger trigger = new PeriodicTrigger (Duration .ofSeconds (2 ));
281
+ trigger .setFixedRate (true );
282
+ taskRegistrar .addTriggerTask (new FixedRateTriggerRunnable (), trigger );
283
+ }
284
+
285
+ }
286
+
238
287
static class CronTriggerTask implements SchedulingConfigurer {
239
288
240
289
@ Override
0 commit comments