diff options
author | Jan Wagner <waja@cyconet.org> | 2023-10-17 13:39:37 +0200 |
---|---|---|
committer | Jan Wagner <waja@cyconet.org> | 2023-10-17 13:39:37 +0200 |
commit | 2a047014385022c8dc06dad4da0428db14898689 (patch) | |
tree | 00abea46325decf0c72870ee8f9ec1472e8e5344 /lib/tests/test_utils.c | |
parent | f39211c26408af582121f519d89c8abf70e6d437 (diff) | |
parent | e23a75d954311b3be429a9020e4d317b89615ee7 (diff) | |
download | monitoring-plugins-2a047014385022c8dc06dad4da0428db14898689.tar.gz |
Merge branch 'master' of github.com:monitoring-plugins/monitoring-plugins
Diffstat (limited to 'lib/tests/test_utils.c')
-rw-r--r-- | lib/tests/test_utils.c | 97 |
1 files changed, 48 insertions, 49 deletions
diff --git a/lib/tests/test_utils.c b/lib/tests/test_utils.c index 7b10494c..01afacdc 100644 --- a/lib/tests/test_utils.c +++ b/lib/tests/test_utils.c | |||
@@ -1,19 +1,19 @@ | |||
1 | /***************************************************************************** | 1 | /***************************************************************************** |
2 | * | 2 | * |
3 | * This program is free software: you can redistribute it and/or modify | 3 | * This program is free software: you can redistribute it and/or modify |
4 | * it under the terms of the GNU General Public License as published by | 4 | * it under the terms of the GNU General Public License as published by |
5 | * the Free Software Foundation, either version 3 of the License, or | 5 | * the Free Software Foundation, either version 3 of the License, or |
6 | * (at your option) any later version. | 6 | * (at your option) any later version. |
7 | * | 7 | * |
8 | * This program is distributed in the hope that it will be useful, | 8 | * This program is distributed in the hope that it will be useful, |
9 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | 9 | * but WITHOUT ANY WARRANTY; without even the implied warranty of |
10 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | 10 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
11 | * GNU General Public License for more details. | 11 | * GNU General Public License for more details. |
12 | * | 12 | * |
13 | * You should have received a copy of the GNU General Public License | 13 | * You should have received a copy of the GNU General Public License |
14 | * along with this program. If not, see <http://www.gnu.org/licenses/>. | 14 | * along with this program. If not, see <http://www.gnu.org/licenses/>. |
15 | * | 15 | * |
16 | * | 16 | * |
17 | *****************************************************************************/ | 17 | *****************************************************************************/ |
18 | 18 | ||
19 | #include "common.h" | 19 | #include "common.h" |
@@ -62,99 +62,99 @@ main (int argc, char **argv) | |||
62 | range = parse_range_string("6"); | 62 | range = parse_range_string("6"); |
63 | ok( range != NULL, "'6' is valid range"); | 63 | ok( range != NULL, "'6' is valid range"); |
64 | ok( range->start == 0, "Start correct"); | 64 | ok( range->start == 0, "Start correct"); |
65 | ok( range->start_infinity == FALSE, "Not using negative infinity"); | 65 | ok( range->start_infinity == false, "Not using negative infinity"); |
66 | ok( range->end == 6, "End correct"); | 66 | ok( range->end == 6, "End correct"); |
67 | ok( range->end_infinity == FALSE, "Not using infinity"); | 67 | ok( range->end_infinity == false, "Not using infinity"); |
68 | free(range); | 68 | free(range); |
69 | 69 | ||
70 | range = parse_range_string("1:12%%"); | 70 | range = parse_range_string("1:12%%"); |
71 | ok( range != NULL, "'1:12%%' is valid - percentages are ignored"); | 71 | ok( range != NULL, "'1:12%%' is valid - percentages are ignored"); |
72 | ok( range->start == 1, "Start correct"); | 72 | ok( range->start == 1, "Start correct"); |
73 | ok( range->start_infinity == FALSE, "Not using negative infinity"); | 73 | ok( range->start_infinity == false, "Not using negative infinity"); |
74 | ok( range->end == 12, "End correct"); | 74 | ok( range->end == 12, "End correct"); |
75 | ok( range->end_infinity == FALSE, "Not using infinity"); | 75 | ok( range->end_infinity == false, "Not using infinity"); |
76 | free(range); | 76 | free(range); |
77 | 77 | ||
78 | range = parse_range_string("-7:23"); | 78 | range = parse_range_string("-7:23"); |
79 | ok( range != NULL, "'-7:23' is valid range"); | 79 | ok( range != NULL, "'-7:23' is valid range"); |
80 | ok( range->start == -7, "Start correct"); | 80 | ok( range->start == -7, "Start correct"); |
81 | ok( range->start_infinity == FALSE, "Not using negative infinity"); | 81 | ok( range->start_infinity == false, "Not using negative infinity"); |
82 | ok( range->end == 23, "End correct"); | 82 | ok( range->end == 23, "End correct"); |
83 | ok( range->end_infinity == FALSE, "Not using infinity"); | 83 | ok( range->end_infinity == false, "Not using infinity"); |
84 | free(range); | 84 | free(range); |
85 | 85 | ||
86 | range = parse_range_string(":5.75"); | 86 | range = parse_range_string(":5.75"); |
87 | ok( range != NULL, "':5.75' is valid range"); | 87 | ok( range != NULL, "':5.75' is valid range"); |
88 | ok( range->start == 0, "Start correct"); | 88 | ok( range->start == 0, "Start correct"); |
89 | ok( range->start_infinity == FALSE, "Not using negative infinity"); | 89 | ok( range->start_infinity == false, "Not using negative infinity"); |
90 | ok( range->end == 5.75, "End correct"); | 90 | ok( range->end == 5.75, "End correct"); |
91 | ok( range->end_infinity == FALSE, "Not using infinity"); | 91 | ok( range->end_infinity == false, "Not using infinity"); |
92 | free(range); | 92 | free(range); |
93 | 93 | ||
94 | range = parse_range_string("~:-95.99"); | 94 | range = parse_range_string("~:-95.99"); |
95 | ok( range != NULL, "~:-95.99' is valid range"); | 95 | ok( range != NULL, "~:-95.99' is valid range"); |
96 | ok( range->start_infinity == TRUE, "Using negative infinity"); | 96 | ok( range->start_infinity == true, "Using negative infinity"); |
97 | ok( range->end == -95.99, "End correct (with rounding errors)"); | 97 | ok( range->end == -95.99, "End correct (with rounding errors)"); |
98 | ok( range->end_infinity == FALSE, "Not using infinity"); | 98 | ok( range->end_infinity == false, "Not using infinity"); |
99 | free(range); | 99 | free(range); |
100 | 100 | ||
101 | range = parse_range_string("12345678901234567890:"); | 101 | range = parse_range_string("12345678901234567890:"); |
102 | temp = atof("12345678901234567890"); /* Can't just use this because number too large */ | 102 | temp = atof("12345678901234567890"); /* Can't just use this because number too large */ |
103 | ok( range != NULL, "'12345678901234567890:' is valid range"); | 103 | ok( range != NULL, "'12345678901234567890:' is valid range"); |
104 | ok( range->start == temp, "Start correct"); | 104 | ok( range->start == temp, "Start correct"); |
105 | ok( range->start_infinity == FALSE, "Not using negative infinity"); | 105 | ok( range->start_infinity == false, "Not using negative infinity"); |
106 | ok( range->end_infinity == TRUE, "Using infinity"); | 106 | ok( range->end_infinity == true, "Using infinity"); |
107 | /* Cannot do a "-1" on temp, as it appears to be same value */ | 107 | /* Cannot do a "-1" on temp, as it appears to be same value */ |
108 | ok( check_range(temp/1.1, range) == TRUE, "12345678901234567890/1.1 - alert"); | 108 | ok( check_range(temp/1.1, range) == true, "12345678901234567890/1.1 - alert"); |
109 | ok( check_range(temp, range) == FALSE, "12345678901234567890 - no alert"); | 109 | ok( check_range(temp, range) == false, "12345678901234567890 - no alert"); |
110 | ok( check_range(temp*2, range) == FALSE, "12345678901234567890*2 - no alert"); | 110 | ok( check_range(temp*2, range) == false, "12345678901234567890*2 - no alert"); |
111 | free(range); | 111 | free(range); |
112 | 112 | ||
113 | range = parse_range_string("~:0"); | 113 | range = parse_range_string("~:0"); |
114 | ok( range != NULL, "'~:0' is valid range"); | 114 | ok( range != NULL, "'~:0' is valid range"); |
115 | ok( range->start_infinity == TRUE, "Using negative infinity"); | 115 | ok( range->start_infinity == true, "Using negative infinity"); |
116 | ok( range->end == 0, "End correct"); | 116 | ok( range->end == 0, "End correct"); |
117 | ok( range->end_infinity == FALSE, "Not using infinity"); | 117 | ok( range->end_infinity == false, "Not using infinity"); |
118 | ok( range->alert_on == OUTSIDE, "Will alert on outside of this range"); | 118 | ok( range->alert_on == OUTSIDE, "Will alert on outside of this range"); |
119 | ok( check_range(0.5, range) == TRUE, "0.5 - alert"); | 119 | ok( check_range(0.5, range) == true, "0.5 - alert"); |
120 | ok( check_range(-10, range) == FALSE, "-10 - no alert"); | 120 | ok( check_range(-10, range) == false, "-10 - no alert"); |
121 | ok( check_range(0, range) == FALSE, "0 - no alert"); | 121 | ok( check_range(0, range) == false, "0 - no alert"); |
122 | free(range); | 122 | free(range); |
123 | 123 | ||
124 | range = parse_range_string("@0:657.8210567"); | 124 | range = parse_range_string("@0:657.8210567"); |
125 | ok( range != 0, "@0:657.8210567' is a valid range"); | 125 | ok( range != 0, "@0:657.8210567' is a valid range"); |
126 | ok( range->start == 0, "Start correct"); | 126 | ok( range->start == 0, "Start correct"); |
127 | ok( range->start_infinity == FALSE, "Not using negative infinity"); | 127 | ok( range->start_infinity == false, "Not using negative infinity"); |
128 | ok( range->end == 657.8210567, "End correct"); | 128 | ok( range->end == 657.8210567, "End correct"); |
129 | ok( range->end_infinity == FALSE, "Not using infinity"); | 129 | ok( range->end_infinity == false, "Not using infinity"); |
130 | ok( range->alert_on == INSIDE, "Will alert on inside of this range" ); | 130 | ok( range->alert_on == INSIDE, "Will alert on inside of this range" ); |
131 | ok( check_range(32.88, range) == TRUE, "32.88 - alert"); | 131 | ok( check_range(32.88, range) == true, "32.88 - alert"); |
132 | ok( check_range(-2, range) == FALSE, "-2 - no alert"); | 132 | ok( check_range(-2, range) == false, "-2 - no alert"); |
133 | ok( check_range(657.8210567, range) == TRUE, "657.8210567 - alert"); | 133 | ok( check_range(657.8210567, range) == true, "657.8210567 - alert"); |
134 | ok( check_range(0, range) == TRUE, "0 - alert"); | 134 | ok( check_range(0, range) == true, "0 - alert"); |
135 | free(range); | 135 | free(range); |
136 | 136 | ||
137 | range = parse_range_string("@1:1"); | 137 | range = parse_range_string("@1:1"); |
138 | ok( range != NULL, "'@1:1' is a valid range"); | 138 | ok( range != NULL, "'@1:1' is a valid range"); |
139 | ok( range->start == 1, "Start correct"); | 139 | ok( range->start == 1, "Start correct"); |
140 | ok( range->start_infinity == FALSE, "Not using negative infinity"); | 140 | ok( range->start_infinity == false, "Not using negative infinity"); |
141 | ok( range->end == 1, "End correct"); | 141 | ok( range->end == 1, "End correct"); |
142 | ok( range->end_infinity == FALSE, "Not using infinity"); | 142 | ok( range->end_infinity == false, "Not using infinity"); |
143 | ok( range->alert_on == INSIDE, "Will alert on inside of this range" ); | 143 | ok( range->alert_on == INSIDE, "Will alert on inside of this range" ); |
144 | ok( check_range(0.5, range) == FALSE, "0.5 - no alert"); | 144 | ok( check_range(0.5, range) == false, "0.5 - no alert"); |
145 | ok( check_range(1, range) == TRUE, "1 - alert"); | 145 | ok( check_range(1, range) == true, "1 - alert"); |
146 | ok( check_range(5.2, range) == FALSE, "5.2 - no alert"); | 146 | ok( check_range(5.2, range) == false, "5.2 - no alert"); |
147 | free(range); | 147 | free(range); |
148 | 148 | ||
149 | range = parse_range_string("1:1"); | 149 | range = parse_range_string("1:1"); |
150 | ok( range != NULL, "'1:1' is a valid range"); | 150 | ok( range != NULL, "'1:1' is a valid range"); |
151 | ok( range->start == 1, "Start correct"); | 151 | ok( range->start == 1, "Start correct"); |
152 | ok( range->start_infinity == FALSE, "Not using negative infinity"); | 152 | ok( range->start_infinity == false, "Not using negative infinity"); |
153 | ok( range->end == 1, "End correct"); | 153 | ok( range->end == 1, "End correct"); |
154 | ok( range->end_infinity == FALSE, "Not using infinity"); | 154 | ok( range->end_infinity == false, "Not using infinity"); |
155 | ok( check_range(0.5, range) == TRUE, "0.5 - alert"); | 155 | ok( check_range(0.5, range) == true, "0.5 - alert"); |
156 | ok( check_range(1, range) == FALSE, "1 - no alert"); | 156 | ok( check_range(1, range) == false, "1 - no alert"); |
157 | ok( check_range(5.2, range) == TRUE, "5.2 - alert"); | 157 | ok( check_range(5.2, range) == true, "5.2 - alert"); |
158 | free(range); | 158 | free(range); |
159 | 159 | ||
160 | range = parse_range_string("2:1"); | 160 | range = parse_range_string("2:1"); |
@@ -377,13 +377,13 @@ main (int argc, char **argv) | |||
377 | 377 | ||
378 | /* | 378 | /* |
379 | temp_fp = fopen("var/statefile", "r"); | 379 | temp_fp = fopen("var/statefile", "r"); |
380 | if (temp_fp==NULL) | 380 | if (temp_fp==NULL) |
381 | printf("Error opening. errno=%d\n", errno); | 381 | printf("Error opening. errno=%d\n", errno); |
382 | printf("temp_fp=%s\n", temp_fp); | 382 | printf("temp_fp=%s\n", temp_fp); |
383 | ok( _np_state_read_file(temp_fp) == TRUE, "Can read state file" ); | 383 | ok( _np_state_read_file(temp_fp) == true, "Can read state file" ); |
384 | fclose(temp_fp); | 384 | fclose(temp_fp); |
385 | */ | 385 | */ |
386 | 386 | ||
387 | temp_state_key->_filename="var/statefile"; | 387 | temp_state_key->_filename="var/statefile"; |
388 | temp_state_data = np_state_read(); | 388 | temp_state_data = np_state_read(); |
389 | ok( this_monitoring_plugin->state->state_data!=NULL, "Got state data now" ) || diag("Are you running in right directory? Will get coredump next if not"); | 389 | ok( this_monitoring_plugin->state->state_data!=NULL, "Got state data now" ) || diag("Are you running in right directory? Will get coredump next if not"); |
@@ -446,20 +446,20 @@ main (int argc, char **argv) | |||
446 | /* Check time is set to current_time */ | 446 | /* Check time is set to current_time */ |
447 | ok(system("cmp var/generated var/statefile > /dev/null")!=0, "Generated file should be different this time"); | 447 | ok(system("cmp var/generated var/statefile > /dev/null")!=0, "Generated file should be different this time"); |
448 | ok(this_monitoring_plugin->state->state_data->time-current_time<=1, "Has time generated from current time"); | 448 | ok(this_monitoring_plugin->state->state_data->time-current_time<=1, "Has time generated from current time"); |
449 | 449 | ||
450 | 450 | ||
451 | /* Don't know how to automatically test this. Need to be able to redefine die and catch the error */ | 451 | /* Don't know how to automatically test this. Need to be able to redefine die and catch the error */ |
452 | /* | 452 | /* |
453 | temp_state_key->_filename="/dev/do/not/expect/to/be/able/to/write"; | 453 | temp_state_key->_filename="/dev/do/not/expect/to/be/able/to/write"; |
454 | np_state_write_string(0, "Bad file"); | 454 | np_state_write_string(0, "Bad file"); |
455 | */ | 455 | */ |
456 | 456 | ||
457 | 457 | ||
458 | np_cleanup(); | 458 | np_cleanup(); |
459 | 459 | ||
460 | ok(this_monitoring_plugin==NULL, "Free'd this_monitoring_plugin"); | 460 | ok(this_monitoring_plugin==NULL, "Free'd this_monitoring_plugin"); |
461 | 461 | ||
462 | ok(mp_suid() == FALSE, "Test aren't suid"); | 462 | ok(mp_suid() == false, "Test aren't suid"); |
463 | 463 | ||
464 | /* base states with random case */ | 464 | /* base states with random case */ |
465 | char *states[] = { | 465 | char *states[] = { |
@@ -508,4 +508,3 @@ main (int argc, char **argv) | |||
508 | 508 | ||
509 | return exit_status(); | 509 | return exit_status(); |
510 | } | 510 | } |
511 | |||