static void test_bson_as_json (void) { bson_oid_t oid; bson_decimal128_t decimal128; bson_t *b; bson_t *b2; char *str; size_t len; int i; decimal128.high = 0x3040000000000000ULL; decimal128.low = 0x000000000000000B; bson_oid_init_from_string(&oid, "123412341234abcdabcdabcd"); b = bson_new(); assert(bson_append_utf8(b, "utf8", -1, "bar", -1)); assert(bson_append_int32(b, "int32", -1, 1234)); assert(bson_append_int64(b, "int64", -1, 4321)); assert(bson_append_double(b, "double", -1, 123.4)); assert(bson_append_undefined(b, "undefined", -1)); assert(bson_append_null(b, "null", -1)); assert(bson_append_oid(b, "oid", -1, &oid)); assert(bson_append_bool(b, "true", -1, true)); assert(bson_append_bool(b, "false", -1, false)); assert(bson_append_time_t(b, "date", -1, time(NULL))); assert(bson_append_timestamp(b, "timestamp", -1, (uint32_t)time(NULL), 1234)); assert(bson_append_regex(b, "regex", -1, "^abcd", "xi")); assert(bson_append_dbpointer(b, "dbpointer", -1, "mycollection", &oid)); assert(bson_append_minkey(b, "minkey", -1)); assert(bson_append_maxkey(b, "maxkey", -1)); assert(bson_append_symbol(b, "symbol", -1, "var a = {};", -1)); assert(bson_append_decimal128(b, "decimal128", -1, &decimal128)); b2 = bson_new(); assert(bson_append_int32(b2, "0", -1, 60)); assert(bson_append_document(b, "document", -1, b2)); assert(bson_append_array(b, "array", -1, b2)); { const uint8_t binary[] = { 0, 1, 2, 3, 4 }; assert(bson_append_binary(b, "binary", -1, BSON_SUBTYPE_BINARY, binary, sizeof binary)); } for (i = 0; i < 1000; i++) { str = bson_as_json(b, &len); bson_free(str); } bson_destroy(b); bson_destroy(b2); }
static void test_bson_append_maxkey (void) { bson_t *b; bson_t *b2; b = bson_new(); assert(bson_append_maxkey(b, "maxkey", -1)); b2 = get_bson("test37.bson"); assert_bson_equal(b, b2); bson_destroy(b); bson_destroy(b2); }
static void test_maxkey (void) { bson_t bcon, expected; bson_init (&bcon); bson_init (&expected); bson_append_maxkey (&expected, "foo", -1); BCON_APPEND (&bcon, "foo", BCON_MAXKEY); bson_eq_bson (&bcon, &expected); bson_destroy (&bcon); bson_destroy (&expected); }
void VariantToBsonConverter::_convertMaxKey(bson_t *bson, const char *key, Object v) { bson_append_maxkey(bson, key, -1); }
void mongoMaxKeyToBSON(const char* key, bson_t* bson) { bson_append_maxkey(bson, key, -1); }
void core::append(const types::b_maxkey&) { stdx::string_view key = _impl->next_key(); bson_append_maxkey(_impl->back(), key.data(), key.length()); }