]> git.ipfire.org Git - thirdparty/tor.git/commitdiff
Test read bandwidth measurements with empty file
authorjuga0 <juga@riseup.net>
Tue, 8 May 2018 16:23:37 +0000 (16:23 +0000)
committerjuga0 <juga@riseup.net>
Wed, 9 May 2018 15:58:25 +0000 (15:58 +0000)
src/test/test_dir.c

index cdc56acb899d73606bdda1c6c557788189855f3f..ad5f086434d44e4800470af99e016827e465b705 100644 (file)
@@ -1368,6 +1368,25 @@ test_dir_measured_bw_kb(void *arg)
   return;
 }
 
+/* Test dirserv_read_measured_bandwidths */
+static void
+test_dir_dirserv_read_measured_bandwidths(void *arg)
+{
+  char *fname=NULL;
+  (void)arg;
+
+  fname = tor_strdup(get_fname("V3BandwidthsFile"));
+  /* Test an empty file */
+  write_str_to_file(fname, "", 0);
+  setup_capture_of_logs(LOG_WARN);
+  tt_int_op(-1, OP_EQ, dirserv_read_measured_bandwidths(fname, NULL));
+  expect_log_msg("Empty bandwidth file\n");
+
+ done:
+  tor_free(fname);
+  teardown_capture_of_logs();
+}
+
 #define MBWC_INIT_TIME 1000
 
 /** Do the measured bandwidth cache unit test */
@@ -5458,6 +5477,7 @@ struct testcase_t dir_tests[] = {
   DIR_LEGACY(versions),
   DIR_LEGACY(fp_pairs),
   DIR(split_fps, 0),
+  DIR_LEGACY(dirserv_read_measured_bandwidths),
   DIR_LEGACY(measured_bw_kb),
   DIR_LEGACY(measured_bw_kb_cache),
   DIR_LEGACY(param_voting),