diff options
Diffstat (limited to 'toxcore/util_test.cc')
-rw-r--r-- | toxcore/util_test.cc | 51 |
1 files changed, 51 insertions, 0 deletions
diff --git a/toxcore/util_test.cc b/toxcore/util_test.cc new file mode 100644 index 00000000..541aa61f --- /dev/null +++ b/toxcore/util_test.cc | |||
@@ -0,0 +1,51 @@ | |||
1 | #include "util.h" | ||
2 | |||
3 | #include "crypto_core.h" | ||
4 | |||
5 | #include <gtest/gtest.h> | ||
6 | |||
7 | TEST(Util, UnixTimeIncreasesOverTime) { | ||
8 | unix_time_update(); | ||
9 | uint64_t const start = unix_time(); | ||
10 | |||
11 | while (start == unix_time()) { | ||
12 | unix_time_update(); | ||
13 | } | ||
14 | |||
15 | uint64_t const end = unix_time(); | ||
16 | EXPECT_GT(end, start); | ||
17 | } | ||
18 | |||
19 | TEST(Util, IsTimeout) { | ||
20 | uint64_t const start = unix_time(); | ||
21 | EXPECT_FALSE(is_timeout(start, 1)); | ||
22 | |||
23 | while (start == unix_time()) { | ||
24 | unix_time_update(); | ||
25 | } | ||
26 | |||
27 | EXPECT_TRUE(is_timeout(start, 1)); | ||
28 | } | ||
29 | |||
30 | TEST(Util, TwoRandomIdsAreNotEqual) { | ||
31 | uint8_t pk1[CRYPTO_PUBLIC_KEY_SIZE]; | ||
32 | uint8_t sk1[CRYPTO_SECRET_KEY_SIZE]; | ||
33 | uint8_t pk2[CRYPTO_PUBLIC_KEY_SIZE]; | ||
34 | uint8_t sk2[CRYPTO_SECRET_KEY_SIZE]; | ||
35 | |||
36 | crypto_new_keypair(pk1, sk1); | ||
37 | crypto_new_keypair(pk2, sk2); | ||
38 | |||
39 | EXPECT_FALSE(id_equal(pk1, pk2)); | ||
40 | } | ||
41 | |||
42 | TEST(Util, IdCopyMakesKeysEqual) { | ||
43 | uint8_t pk1[CRYPTO_PUBLIC_KEY_SIZE]; | ||
44 | uint8_t sk1[CRYPTO_SECRET_KEY_SIZE]; | ||
45 | uint8_t pk2[CRYPTO_PUBLIC_KEY_SIZE] = {0}; | ||
46 | |||
47 | crypto_new_keypair(pk1, sk1); | ||
48 | id_copy(pk2, pk1); | ||
49 | |||
50 | EXPECT_TRUE(id_equal(pk1, pk2)); | ||
51 | } | ||