LCOV - code coverage report
Current view: top level - test - test-ratelimit.c (source / functions) Hit Total Coverage
Test: main_coverage.info Lines: 15 15 100.0 %
Date: 2019-08-22 15:41:25 Functions: 2 2 100.0 %

          Line data    Source code
       1             : /* SPDX-License-Identifier: LGPL-2.1+ */
       2             : 
       3             : #include <unistd.h>
       4             : 
       5             : #include "macro.h"
       6             : #include "ratelimit.h"
       7             : #include "time-util.h"
       8             : 
       9           1 : static void test_ratelimit_below(void) {
      10             :         int i;
      11           1 :         RATELIMIT_DEFINE(ratelimit, 1 * USEC_PER_SEC, 10);
      12             : 
      13          11 :         for (i = 0; i < 10; i++)
      14          10 :                 assert_se(ratelimit_below(&ratelimit));
      15           1 :         assert_se(!ratelimit_below(&ratelimit));
      16           1 :         sleep(1);
      17          11 :         for (i = 0; i < 10; i++)
      18          10 :                 assert_se(ratelimit_below(&ratelimit));
      19             : 
      20           1 :         RATELIMIT_INIT(ratelimit, 0, 10);
      21       10001 :         for (i = 0; i < 10000; i++)
      22       10000 :                 assert_se(ratelimit_below(&ratelimit));
      23           1 : }
      24             : 
      25           1 : int main(int argc, char *argv[]) {
      26           1 :         test_ratelimit_below();
      27             : 
      28           1 :         return 0;
      29             : }

Generated by: LCOV version 1.14