Browse Source

Merge branch 'maint-0.2.9'

Nick Mathewson 7 years ago
parent
commit
7236e42684
1 changed files with 15 additions and 9 deletions
  1. 15 9
      src/test/test_dir.c

+ 15 - 9
src/test/test_dir.c

@@ -3935,8 +3935,8 @@ test_dir_download_status_random_backoff(void *arg)
     tt_int_op(increment, OP_GE, min_delay);
     tt_int_op(increment, OP_LE, max_delay);
     tt_int_op(increment, OP_GE, old_increment);
-    /* We at most double, and maybe add one */
-    tt_int_op(increment, OP_LE, 2 * old_increment + 1);
+    /* We at most quadruple, and maybe add one */
+    tt_int_op(increment, OP_LE, 4 * old_increment + 1);
 
     /* Advance */
     current_time += increment;
@@ -4041,14 +4041,14 @@ test_dir_download_status_increment(void *arg)
                                      current_time + delay1 + 10,
                                      0) == 0);
 
-  /* Check that failure increments don't happen on 503 for clients, but that
-   * attempt increments do. */
+  /* Check that failure increments do happen on 503 for clients, and
+   * attempt increments do too. */
   mock_get_options_calls = 0;
   next_at = download_status_increment_failure(&dls_failure, 503, "test", 0,
                                               current_time);
-  tt_assert(next_at == current_time + delay1);
-  tt_assert(download_status_get_n_failures(&dls_failure) == 1);
-  tt_assert(download_status_get_n_attempts(&dls_failure) == 2);
+  tt_i64_op(next_at, ==, current_time + delay2);
+  tt_int_op(download_status_get_n_failures(&dls_failure), ==, 2);
+  tt_int_op(download_status_get_n_attempts(&dls_failure), ==, 2);
   tt_assert(mock_get_options_calls >= 1);
 
   /* Check that failure increments do happen on 503 for servers */
@@ -4056,7 +4056,7 @@ test_dir_download_status_increment(void *arg)
   next_at = download_status_increment_failure(&dls_failure, 503, "test", 1,
                                               current_time);
   tt_assert(next_at == current_time + delay2);
-  tt_assert(download_status_get_n_failures(&dls_failure) == 2);
+  tt_assert(download_status_get_n_failures(&dls_failure) == 3);
   tt_assert(download_status_get_n_attempts(&dls_failure) == 3);
   tt_assert(mock_get_options_calls >= 1);
 
@@ -4065,7 +4065,7 @@ test_dir_download_status_increment(void *arg)
   next_at = download_status_increment_failure(&dls_failure, 404, "test", 0,
                                               current_time);
   tt_assert(next_at == current_time + delay2);
-  tt_assert(download_status_get_n_failures(&dls_failure) == 3);
+  tt_assert(download_status_get_n_failures(&dls_failure) == 4);
   tt_assert(download_status_get_n_attempts(&dls_failure) == 4);
   tt_assert(mock_get_options_calls >= 1);
 
@@ -4227,8 +4227,13 @@ test_dir_download_status_increment(void *arg)
   /* Check that attempt increments don't happen on failure-based schedules,
    * and that the attempt is set at the end of time */
   mock_get_options_calls = 0;
+  setup_full_capture_of_logs(LOG_WARN);
   next_at = download_status_increment_attempt(&dls_failure, "test",
                                               current_time);
+  expect_single_log_msg_containing(
+    "Tried to launch an attempt-based connection on a failure-based "
+    "schedule.");
+  teardown_capture_of_logs();
   tt_assert(next_at == TIME_MAX);
   tt_assert(download_status_get_n_failures(&dls_failure) == 0);
   tt_assert(download_status_get_n_attempts(&dls_failure) == 0);
@@ -4240,6 +4245,7 @@ test_dir_download_status_increment(void *arg)
   UNMOCK(get_options);
   mock_options = NULL;
   mock_get_options_calls = 0;
+  teardown_capture_of_logs();
 }
 
 static void