tests: Add assert functions for missing types 40/143340/4
authorKonrad Kuchciak <k.kuchciak@samsung.com>
Wed, 9 Aug 2017 09:36:52 +0000 (11:36 +0200)
committerKonrad Kuchciak <k.kuchciak@samsung.com>
Wed, 9 Aug 2017 14:28:07 +0000 (16:28 +0200)
Change-Id: I6072eca75ba12172d7a7effb379c1e9dc9929492
Signed-off-by: Konrad Kuchciak <k.kuchciak@samsung.com>
tests/unit/helpers.c
tests/unit/helpers.h

index 176977df32b84a31e3fc7d0091aeb58bb9794cc2..f5ea9b799efb3ae0843721c74c0d90454a2e9b5c 100644 (file)
@@ -11,6 +11,71 @@ int faultd_object_count_children(struct faultd_object *obj)
        return i;
 }
 
+static int long_cmp(const long actual, const long expected)
+{
+       return actual == expected;
+}
+
+static int long_equal_display_error(const LargestIntegralType actual,
+                                                                       const LargestIntegralType expected)
+{
+       if (long_cmp((const long)actual, (const long)expected))
+               return 1;
+
+       fprintf(stderr, "%ld != %ld\n",
+                       (const long)actual, (const long)expected);
+       return 0;
+}
+
+void assert_long_equal(const long actual, const long expected)
+{
+       if (long_equal_display_error(
+                       cast_to_largest_integral_type(actual),
+                       cast_to_largest_integral_type(expected)) == 0)
+               fail();
+}
+
+void assert_time_t_equal(const time_t actual, const time_t expected)
+{
+       assert_long_equal((const long)actual, (const long)expected);
+}
+
+void assert_timespec_equal(const struct timespec *actual, const struct timespec *expected)
+{
+       assert_long_equal(actual->tv_sec, expected->tv_sec);
+       assert_long_equal(actual->tv_nsec, expected->tv_nsec);
+}
+
+void assert_oid_equal(const faultd_oid_t *actual, const faultd_oid_t *expected)
+{
+       assert_memory_equal(actual, expected, sizeof(faultd_oid_t));
+}
+
+static int uuid_cmp(const sd_id128_t *actual, const sd_id128_t *expected)
+{
+       return sd_id128_equal(*actual, *expected);
+}
+
+static int uuid_equal_display_error(const LargestIntegralType actual,
+                                                                       const LargestIntegralType expected)
+{
+       if (uuid_cmp((const sd_id128_t *)actual, (const sd_id128_t *)expected))
+               return 1;
+
+       fprintf(stderr, SD_ID128_FORMAT_STR " != " SD_ID128_FORMAT_STR "\n",
+                       SD_ID128_FORMAT_VAL(*(const sd_id128_t *)actual),
+                       SD_ID128_FORMAT_VAL(*(const sd_id128_t *)expected));
+       return 0;
+}
+
+void assert_uuid_equal(const sd_id128_t *actual, const sd_id128_t *expected)
+{
+       if (uuid_equal_display_error(
+                       cast_to_largest_integral_type(actual),
+                       cast_to_largest_integral_type(expected)) == 0)
+               fail();
+}
+
 char generate_char()
 {
        /* generate random char in range 0x20-0x7E (' ' to '~') excluding '.' */
index bfc1e6c6420f13ef9cd38f8df914d3c514f2d5dd..2427fffdba3247fec3cae1aaef245cbc51815ae3 100644 (file)
 
 int faultd_object_count_children(struct faultd_object *obj);
 
+void assert_long_equal(const long actual, const long expected);
+void assert_time_t_equal(const time_t actual, const  time_t expected);
+void assert_timespec_equal(const struct timespec *actual,
+                                                  const  struct timespec *expected);
+void assert_oid_equal(const faultd_oid_t *actual, const faultd_oid_t *expected);
+void assert_uuid_equal(const sd_id128_t *actual, const sd_id128_t *expected);
+
 char generate_char();
 char *generate_string(int len);
 int generate_int();