diff options
author | iphydf <iphydf@users.noreply.github.com> | 2016-12-10 14:41:32 +0000 |
---|---|---|
committer | iphydf <iphydf@users.noreply.github.com> | 2016-12-10 15:22:06 +0000 |
commit | c8d7cf5002b1a8ccdf09a91cbd1bbdc11cf96753 (patch) | |
tree | 550dfceefe44522098040c75fda658a801282935 /auto_tests | |
parent | d68505a2d3a1210e24514a562808e27f77c295d9 (diff) |
Fix off by one error in saving our own status message.
Diffstat (limited to 'auto_tests')
-rw-r--r-- | auto_tests/tox_one_test.c | 43 |
1 files changed, 35 insertions, 8 deletions
diff --git a/auto_tests/tox_one_test.c b/auto_tests/tox_one_test.c index 350fafe9..ca5fde01 100644 --- a/auto_tests/tox_one_test.c +++ b/auto_tests/tox_one_test.c | |||
@@ -14,6 +14,19 @@ | |||
14 | 14 | ||
15 | #include "helpers.h" | 15 | #include "helpers.h" |
16 | 16 | ||
17 | static void set_random_name_and_status_message(Tox *tox, uint8_t *name, uint8_t *status_message) | ||
18 | { | ||
19 | int i; | ||
20 | |||
21 | for (i = 0; i < TOX_MAX_NAME_LENGTH; ++i) { | ||
22 | name[i] = rand(); | ||
23 | } | ||
24 | |||
25 | for (i = 0; i < TOX_MAX_STATUS_MESSAGE_LENGTH; ++i) { | ||
26 | status_message[i] = rand(); | ||
27 | } | ||
28 | } | ||
29 | |||
17 | START_TEST(test_one) | 30 | START_TEST(test_one) |
18 | { | 31 | { |
19 | { | 32 | { |
@@ -26,9 +39,17 @@ START_TEST(test_one) | |||
26 | tox_options_free(o1); | 39 | tox_options_free(o1); |
27 | } | 40 | } |
28 | 41 | ||
42 | uint8_t name[TOX_MAX_NAME_LENGTH]; | ||
43 | uint8_t status_message[TOX_MAX_STATUS_MESSAGE_LENGTH]; | ||
44 | |||
45 | uint8_t name2[TOX_MAX_NAME_LENGTH]; | ||
46 | uint8_t status_message2[TOX_MAX_STATUS_MESSAGE_LENGTH]; | ||
47 | |||
29 | uint32_t index[] = { 1, 2 }; | 48 | uint32_t index[] = { 1, 2 }; |
30 | Tox *tox1 = tox_new_log(0, 0, &index[0]); | 49 | Tox *tox1 = tox_new_log(0, 0, &index[0]); |
50 | set_random_name_and_status_message(tox1, name, status_message); | ||
31 | Tox *tox2 = tox_new_log(0, 0, &index[1]); | 51 | Tox *tox2 = tox_new_log(0, 0, &index[1]); |
52 | set_random_name_and_status_message(tox2, name2, status_message2); | ||
32 | 53 | ||
33 | uint8_t address[TOX_ADDRESS_SIZE]; | 54 | uint8_t address[TOX_ADDRESS_SIZE]; |
34 | tox_self_get_address(tox1, address); | 55 | tox_self_get_address(tox1, address); |
@@ -57,16 +78,13 @@ START_TEST(test_one) | |||
57 | ret = tox_friend_add(tox1, address, message, TOX_MAX_FRIEND_REQUEST_LENGTH, &error); | 78 | ret = tox_friend_add(tox1, address, message, TOX_MAX_FRIEND_REQUEST_LENGTH, &error); |
58 | ck_assert_msg(ret == UINT32_MAX && error == TOX_ERR_FRIEND_ADD_ALREADY_SENT, "Adding friend twice worked."); | 79 | ck_assert_msg(ret == UINT32_MAX && error == TOX_ERR_FRIEND_ADD_ALREADY_SENT, "Adding friend twice worked."); |
59 | 80 | ||
60 | uint8_t name[TOX_MAX_NAME_LENGTH]; | ||
61 | int i; | ||
62 | |||
63 | for (i = 0; i < TOX_MAX_NAME_LENGTH; ++i) { | ||
64 | name[i] = rand(); | ||
65 | } | ||
66 | |||
67 | tox_self_set_name(tox1, name, sizeof(name), 0); | 81 | tox_self_set_name(tox1, name, sizeof(name), 0); |
68 | ck_assert_msg(tox_self_get_name_size(tox1) == sizeof(name), "Can't set name of TOX_MAX_NAME_LENGTH"); | 82 | ck_assert_msg(tox_self_get_name_size(tox1) == sizeof(name), "Can't set name of TOX_MAX_NAME_LENGTH"); |
69 | 83 | ||
84 | tox_self_set_status_message(tox1, status_message, sizeof(status_message), 0); | ||
85 | ck_assert_msg(tox_self_get_status_message_size(tox1) == sizeof(status_message), | ||
86 | "Can't set status message of TOX_MAX_STATUS_MESSAGE_LENGTH"); | ||
87 | |||
70 | tox_self_get_address(tox1, address); | 88 | tox_self_get_address(tox1, address); |
71 | size_t save_size = tox_get_savedata_size(tox1); | 89 | size_t save_size = tox_get_savedata_size(tox1); |
72 | uint8_t data[save_size]; | 90 | uint8_t data[save_size]; |
@@ -84,8 +102,17 @@ START_TEST(test_one) | |||
84 | ck_assert_msg(err_n == TOX_ERR_NEW_OK, "Load failed"); | 102 | ck_assert_msg(err_n == TOX_ERR_NEW_OK, "Load failed"); |
85 | 103 | ||
86 | ck_assert_msg(tox_self_get_name_size(tox2) == sizeof name, "Wrong name size."); | 104 | ck_assert_msg(tox_self_get_name_size(tox2) == sizeof name, "Wrong name size."); |
105 | ck_assert_msg(tox_self_get_status_message_size(tox2) == sizeof status_message, "Wrong status message size"); | ||
106 | |||
107 | uint8_t name_loaded[TOX_MAX_NAME_LENGTH] = { 0 }; | ||
108 | tox_self_get_name(tox2, name_loaded); | ||
109 | ck_assert_msg(!memcmp(name, name_loaded, sizeof name), "Wrong name."); | ||
110 | |||
111 | uint8_t status_message_loaded[TOX_MAX_STATUS_MESSAGE_LENGTH] = { 0 }; | ||
112 | tox_self_get_status_message(tox2, status_message_loaded); | ||
113 | ck_assert_msg(!memcmp(status_message, status_message_loaded, sizeof status_message_loaded), "Wrong status message."); | ||
87 | 114 | ||
88 | uint8_t address2[TOX_ADDRESS_SIZE]; | 115 | uint8_t address2[TOX_ADDRESS_SIZE] = { 0 }; |
89 | tox_self_get_address(tox2, address2); | 116 | tox_self_get_address(tox2, address2); |
90 | ck_assert_msg(memcmp(address2, address, TOX_ADDRESS_SIZE) == 0, "Wrong address."); | 117 | ck_assert_msg(memcmp(address2, address, TOX_ADDRESS_SIZE) == 0, "Wrong address."); |
91 | uint8_t new_name[TOX_MAX_NAME_LENGTH] = { 0 }; | 118 | uint8_t new_name[TOX_MAX_NAME_LENGTH] = { 0 }; |