diff options
| -rw-r--r-- | tests/blogc/check_rusage.c | 23 | ||||
| -rw-r--r-- | tests/blogc/check_sysinfo.c | 64 | 
2 files changed, 87 insertions, 0 deletions
diff --git a/tests/blogc/check_rusage.c b/tests/blogc/check_rusage.c index e828fb2..ff64297 100644 --- a/tests/blogc/check_rusage.c +++ b/tests/blogc/check_rusage.c @@ -65,6 +65,10 @@ test_rusage_format_cpu_time(void **state)      assert_string_equal(f, "1.234ms");      free(f); +    f = blogc_rusage_format_cpu_time(3000); +    assert_string_equal(f, "3ms"); +    free(f); +      f = blogc_rusage_format_cpu_time(12345678);      assert_string_equal(f, "12.346s");      free(f); @@ -92,6 +96,24 @@ test_rusage_format_memory(void **state)  } +static void +test_rusage_inject(void **state) +{ +    bc_trie_t *t = bc_trie_new(free); + +    will_return(__wrap_getrusage, -1); +    blogc_rusage_inject(t); +    assert_int_equal(bc_trie_size(t), 0); + +    will_return(__wrap_getrusage, 0); +    blogc_rusage_inject(t); +    assert_int_equal(bc_trie_size(t), 2); +    assert_string_equal(bc_trie_lookup(t, "BLOGC_RUSAGE_CPU_TIME"), "4.000s"); +    assert_string_equal(bc_trie_lookup(t, "BLOGC_RUSAGE_MEMORY"), "10.010MB"); +    bc_trie_free(t); +} + +  int  main(void)  { @@ -99,6 +121,7 @@ main(void)          unit_test(test_rusage_get),          unit_test(test_rusage_format_cpu_time),          unit_test(test_rusage_format_memory), +        unit_test(test_rusage_inject),      };      return run_tests(tests);  } diff --git a/tests/blogc/check_sysinfo.c b/tests/blogc/check_sysinfo.c index af19fb1..d1034fc 100644 --- a/tests/blogc/check_sysinfo.c +++ b/tests/blogc/check_sysinfo.c @@ -121,6 +121,25 @@ test_sysinfo_get_hostname(void **state)  static void +test_sysinfo_inject_hostname(void **state) +{ +    bc_trie_t *t = bc_trie_new(free); + +    will_return(__wrap_gethostname, NULL); +    will_return(__wrap_gethostname, -1); +    blogc_sysinfo_inject_hostname(t); +    assert_int_equal(bc_trie_size(t), 0); + +    will_return(__wrap_gethostname, "bola"); +    will_return(__wrap_gethostname, 0); +    blogc_sysinfo_inject_hostname(t); +    assert_int_equal(bc_trie_size(t), 1); +    assert_string_equal(bc_trie_lookup(t, "BLOGC_SYSINFO_HOSTNAME"), "bola"); +    bc_trie_free(t); +} + + +static void  test_sysinfo_get_username(void **state)  {      will_return(__wrap_getpwuid, NULL); @@ -136,6 +155,23 @@ test_sysinfo_get_username(void **state)  static void +test_sysinfo_inject_username(void **state) +{ +    bc_trie_t *t = bc_trie_new(free); + +    will_return(__wrap_getpwuid, NULL); +    blogc_sysinfo_inject_username(t); +    assert_int_equal(bc_trie_size(t), 0); + +    will_return(__wrap_getpwuid, "bola"); +    blogc_sysinfo_inject_username(t); +    assert_int_equal(bc_trie_size(t), 1); +    assert_string_equal(bc_trie_lookup(t, "BLOGC_SYSINFO_USERNAME"), "bola"); +    bc_trie_free(t); +} + + +static void  test_sysinfo_get_datetime(void **state)  {      will_return(__wrap_time, -1); @@ -155,6 +191,27 @@ test_sysinfo_get_datetime(void **state)  static void +test_sysinfo_inject_datetime(void **state) +{ +    bc_trie_t *t = bc_trie_new(free); + +    will_return(__wrap_time, -1); +    blogc_sysinfo_inject_datetime(t); +    assert_int_equal(bc_trie_size(t), 0); + +    will_return(__wrap_time, 2); +    blogc_sysinfo_inject_datetime(t); +    assert_int_equal(bc_trie_size(t), 0); + +    will_return(__wrap_time, 1); +    blogc_sysinfo_inject_datetime(t); +    assert_int_equal(bc_trie_size(t), 1); +    assert_string_equal(bc_trie_lookup(t, "BLOGC_SYSINFO_DATETIME"), "1906-06-04 03:02:01"); +    bc_trie_free(t); +} + + +static void  test_sysinfo_get_inside_docker(void **state)  {      // the "positive" case was already tested in check_funcvars. this is done @@ -164,6 +221,10 @@ test_sysinfo_get_inside_docker(void **state)  } +// the blogc_sysinfo_inject_inside_docker() function was already indirectly +// tested in check_funcvars.c + +  int  main(void)  { @@ -171,14 +232,17 @@ main(void)  #ifdef HAVE_SYSINFO_HOSTNAME          unit_test(test_sysinfo_get_hostname), +        unit_test(test_sysinfo_inject_hostname),  #endif  #ifdef HAVE_SYSINFO_USERNAME          unit_test(test_sysinfo_get_username), +        unit_test(test_sysinfo_inject_username),  #endif  #ifdef HAVE_SYSINFO_DATETIME          unit_test(test_sysinfo_get_datetime), +        unit_test(test_sysinfo_inject_datetime),  #endif          unit_test(test_sysinfo_get_inside_docker),  | 
