echauchot commented on code in PR #22985:
URL: https://github.com/apache/flink/pull/22985#discussion_r1362230288


##########
flink-runtime/src/test/java/org/apache/flink/runtime/scheduler/adaptive/ExecutingTest.java:
##########
@@ -252,28 +259,94 @@ public void testTransitionToFinishedOnSuspend() throws 
Exception {
     }
 
     @Test
-    public void 
testNotifyNewResourcesAvailableWithCanScaleUpTransitionsToRestarting()
+    public void 
testNotifyNewResourcesAvailableBeforeCooldownIsOverScheduledStateChange()
+            throws Exception {
+        try (MockExecutingContext ctx = new MockExecutingContext()) {
+            // do not wait too long in the test
+            final Duration scalingIntervalMin = Duration.ofSeconds(1L);
+            final ExecutingStateBuilder executingStateBuilder =
+                    new 
ExecutingStateBuilder().setScalingIntervalMin(scalingIntervalMin);
+            Executing exec = executingStateBuilder.build(ctx);
+            ctx.setCanScaleUp(true); // => rescale
+            ctx.setExpectRestarting( // scheduled rescale should restart the 
job after cooldown
+                    restartingArguments -> {
+                        assertThat(restartingArguments.getBackoffTime(), 
is(Duration.ZERO));

Review Comment:
   As said in the PR and in a commit comment, this is done on purpose: 
MockExecutingContext#runIfState does not do delays but runs the task 
immediately and sets a boolean to check that an async task was scheduled. This 
is to avoid having long tests.



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to