summaryrefslogtreecommitdiffstats
path: root/test/unit
diff options
context:
space:
mode:
Diffstat (limited to 'test/unit')
-rw-r--r--test/unit/nstime.c36
1 files changed, 36 insertions, 0 deletions
diff --git a/test/unit/nstime.c b/test/unit/nstime.c
index f8384f5..f313780 100644
--- a/test/unit/nstime.c
+++ b/test/unit/nstime.c
@@ -85,6 +85,23 @@ TEST_BEGIN(test_nstime_add) {
}
TEST_END
+TEST_BEGIN(test_nstime_iadd) {
+ nstime_t nsta, nstb;
+
+ nstime_init2(&nsta, 42, BILLION - 1);
+ nstime_iadd(&nsta, 1);
+ nstime_init2(&nstb, 43, 0);
+ assert_d_eq(nstime_compare(&nsta, &nstb), 0,
+ "Incorrect addition result");
+
+ nstime_init2(&nsta, 42, 1);
+ nstime_iadd(&nsta, BILLION + 1);
+ nstime_init2(&nstb, 43, 2);
+ assert_d_eq(nstime_compare(&nsta, &nstb), 0,
+ "Incorrect addition result");
+}
+TEST_END
+
TEST_BEGIN(test_nstime_subtract) {
nstime_t nsta, nstb;
@@ -104,6 +121,23 @@ TEST_BEGIN(test_nstime_subtract) {
}
TEST_END
+TEST_BEGIN(test_nstime_isubtract) {
+ nstime_t nsta, nstb;
+
+ nstime_init2(&nsta, 42, 43);
+ nstime_isubtract(&nsta, 42*BILLION + 43);
+ nstime_init(&nstb, 0);
+ assert_d_eq(nstime_compare(&nsta, &nstb), 0,
+ "Incorrect subtraction result");
+
+ nstime_init2(&nsta, 42, 43);
+ nstime_isubtract(&nsta, 41*BILLION + 44);
+ nstime_init2(&nstb, 0, BILLION - 1);
+ assert_d_eq(nstime_compare(&nsta, &nstb), 0,
+ "Incorrect subtraction result");
+}
+TEST_END
+
TEST_BEGIN(test_nstime_imultiply) {
nstime_t nsta, nstb;
@@ -204,7 +238,9 @@ main(void) {
test_nstime_copy,
test_nstime_compare,
test_nstime_add,
+ test_nstime_iadd,
test_nstime_subtract,
+ test_nstime_isubtract,
test_nstime_imultiply,
test_nstime_idivide,
test_nstime_divide,