Skip to content

Commit 8e93b37

Browse files
committed
ensure stale error messages do not persist in json unit tests
1 parent 10c4735 commit 8e93b37

File tree

1 file changed

+24
-0
lines changed

1 file changed

+24
-0
lines changed

src/libbson/tests/test-json.c

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1037,6 +1037,8 @@ test_bson_json_read_corrupt_utf8 (void)
10371037
BSON_JSON_ERROR_READ_CORRUPT_JS,
10381038
"invalid bytes in UTF8 string");
10391039

1040+
memset (&error, 0, sizeof error);
1041+
10401042
BSON_ASSERT (!bson_new_from_json ((uint8_t *) bad_value, -1, &error));
10411043
ASSERT_ERROR_CONTAINS (error,
10421044
BSON_ERROR_JSON,
@@ -1148,6 +1150,8 @@ test_bson_json_read_legacy_regex (void)
11481150
BSON_JSON_ERROR_READ_INVALID_PARAM,
11491151
"Missing \"$options\" after \"$regex\"");
11501152

1153+
memset (&error, 0, sizeof error);
1154+
11511155
r = bson_init_from_json (&b, "{\"a\": {\"$options\": \"ix\"}}", -1, &error);
11521156
BSON_ASSERT (!r);
11531157
ASSERT_ERROR_CONTAINS (error,
@@ -1230,6 +1234,8 @@ test_bson_json_read_binary (void)
12301234
BSON_JSON_ERROR_READ_INVALID_PARAM,
12311235
"Missing \"base64\" after \"subType\"");
12321236

1237+
memset (&error, 0, sizeof error);
1238+
12331239
/* no subType */
12341240
r = bson_init_from_json (
12351241
&b, "{\"b\": {\"$binary\": {\"base64\": \"Zm9v\"}}}", -1, &error);
@@ -1514,6 +1520,8 @@ test_bson_json_number_long (void)
15141520
BSON_JSON_ERROR_READ_INVALID_PARAM,
15151521
"Number \"9223372036854775808\" is out of range");
15161522

1523+
memset (&error, 0, sizeof error);
1524+
15171525
/* INT64_MIN - 1 */
15181526
r = bson_init_from_json (
15191527
&b, "{\"x\": {\"$numberLong\": \"-9223372036854775809\"}}", -1, &error);
@@ -1524,6 +1532,8 @@ test_bson_json_number_long (void)
15241532
BSON_JSON_ERROR_READ_INVALID_PARAM,
15251533
"Number \"-9223372036854775809\" is out of range");
15261534

1535+
memset (&error, 0, sizeof error);
1536+
15271537
r = bson_init_from_json (
15281538
&b, "{\"x\": {\"$numberLong\": \"10000000000000000000\"}}", -1, &error);
15291539

@@ -1533,6 +1543,8 @@ test_bson_json_number_long (void)
15331543
BSON_JSON_ERROR_READ_INVALID_PARAM,
15341544
"Number \"10000000000000000000\" is out of range");
15351545

1546+
memset (&error, 0, sizeof error);
1547+
15361548
/* INT64_MIN - 2 */
15371549
r = bson_init_from_json (&b, "{\"x\": -10000000000000000000}", -1, &error);
15381550

@@ -2035,6 +2047,8 @@ test_bson_json_int64 (void)
20352047
BSON_JSON_ERROR_READ_INVALID_PARAM,
20362048
"Number \"9223372036854775808\" is out of range");
20372049

2050+
memset (&error, 0, sizeof error);
2051+
20382052
/* INT64_MIN - 1 */
20392053
BSON_ASSERT (
20402054
!bson_init_from_json (&b, "{ \"x\": -9223372036854775809 }", -1, &error));
@@ -2043,13 +2057,17 @@ test_bson_json_int64 (void)
20432057
BSON_JSON_ERROR_READ_INVALID_PARAM,
20442058
"Number \"-9223372036854775809\" is out of range");
20452059

2060+
memset (&error, 0, sizeof error);
2061+
20462062
BSON_ASSERT (
20472063
!bson_init_from_json (&b, "{ \"x\": 10000000000000000000 }", -1, &error));
20482064
ASSERT_ERROR_CONTAINS (error,
20492065
BSON_ERROR_JSON,
20502066
BSON_JSON_ERROR_READ_INVALID_PARAM,
20512067
"Number \"10000000000000000000\" is out of range");
20522068

2069+
memset (&error, 0, sizeof error);
2070+
20532071
/* INT64_MIN - 2 */
20542072
BSON_ASSERT (!bson_init_from_json (
20552073
&b, "{ \"x\": -10000000000000000000 }", -1, &error));
@@ -2134,6 +2152,7 @@ test_bson_json_double_overflow (void)
21342152
"out of range");
21352153

21362154
bson_free (j);
2155+
memset (&error, 0, sizeof error);
21372156

21382157
/* same test with canonical Extended JSON */
21392158
j = bson_strdup_printf ("{ \"d\" : { \"$numberDouble\" : \"%s\" } }", *p);
@@ -2188,6 +2207,7 @@ test_bson_json_nan (void)
21882207
BSON_ERROR_JSON,
21892208
BSON_JSON_ERROR_READ_CORRUPT_JS,
21902209
"Got parse error at");
2210+
memset (&error, 0, sizeof error);
21912211
}
21922212

21932213
for (j = partial; *j; j++) {
@@ -2196,6 +2216,7 @@ test_bson_json_nan (void)
21962216
BSON_ERROR_JSON,
21972217
BSON_JSON_ERROR_READ_CORRUPT_JS,
21982218
"Incomplete JSON");
2219+
memset (&error, 0, sizeof error);
21992220
}
22002221
}
22012222

@@ -2253,6 +2274,7 @@ test_bson_json_infinity (void)
22532274
BSON_ERROR_JSON,
22542275
BSON_JSON_ERROR_READ_CORRUPT_JS,
22552276
"Got parse error at");
2277+
memset (&error, 0, sizeof error);
22562278
}
22572279

22582280
for (j = partial; *j; j++) {
@@ -2261,6 +2283,7 @@ test_bson_json_infinity (void)
22612283
BSON_ERROR_JSON,
22622284
BSON_JSON_ERROR_READ_CORRUPT_JS,
22632285
"Incomplete JSON");
2286+
memset (&error, 0, sizeof error);
22642287
}
22652288
}
22662289

@@ -2758,6 +2781,7 @@ test_bson_json_null_in_str (void)
27582781
(const uint8_t *) bad_json, sizeof (bad_json) - 1, &err));
27592782
ASSERT_ERROR_CONTAINS (
27602783
err, BSON_ERROR_JSON, BSON_JSON_ERROR_READ_CORRUPT_JS, "Got parse error");
2784+
memset (&err, 0, sizeof err);
27612785
ASSERT (!bson_new_from_json (
27622786
(const uint8_t *) cdriver2305, sizeof (cdriver2305) - 1, &err));
27632787
ASSERT_ERROR_CONTAINS (

0 commit comments

Comments
 (0)