Skip to content

Commit

Permalink
CDRIVER-2115 skip mock server tests on 32-bit
Browse files Browse the repository at this point in the history
  • Loading branch information
ajdavis committed Apr 9, 2017
1 parent 886db03 commit 5086daa
Show file tree
Hide file tree
Showing 24 changed files with 648 additions and 488 deletions.
21 changes: 21 additions & 0 deletions tests/TestSuite.c
Original file line number Diff line number Diff line change
Expand Up @@ -317,6 +317,17 @@ TestSuite_CheckDummy (void)
return 1;
}

int
TestSuite_CheckMockServerAllowed (void)
{
/* CDRIVER-2115: don't run mock server tests on 32-bit */
if (sizeof (void *) * 8 >= 64) {
return 1;
} else {
return 0;
}
}

static void
TestSuite_AddHelper (void *cb_)
{
Expand Down Expand Up @@ -353,6 +364,16 @@ TestSuite_AddLive (TestSuite *suite, /* IN */
}


void
TestSuite_AddMockServerTest (TestSuite *suite,
const char *name,
TestFunc func)
{
TestSuite_AddFull (suite, name, (void *) func, NULL, NULL,
TestSuite_CheckMockServerAllowed);
}


void
TestSuite_AddWC (TestSuite *suite, /* IN */
const char *name, /* IN */
Expand Down
4 changes: 4 additions & 0 deletions tests/TestSuite.h
Original file line number Diff line number Diff line change
Expand Up @@ -474,6 +474,10 @@ int
TestSuite_CheckLive (void);
void
TestSuite_AddLive (TestSuite *suite, const char *name, TestFunc func);
int
TestSuite_CheckMockServerAllowed (void);
void
TestSuite_AddMockServerTest (TestSuite *suite, const char *name, TestFunc func);
void
TestSuite_AddWC (TestSuite *suite,
const char *name,
Expand Down
4 changes: 3 additions & 1 deletion tests/mock_server/mock-server.c
Original file line number Diff line number Diff line change
Expand Up @@ -287,7 +287,6 @@ mock_server_set_ssl_opts (mock_server_t *server, mongoc_ssl_opt_t *opts)
*
*--------------------------------------------------------------------------
*/

uint16_t
mock_server_run (mock_server_t *server)
{
Expand All @@ -296,6 +295,9 @@ mock_server_run (mock_server_t *server)
int optval;
uint16_t bound_port;

/* CDRIVER-2115: don't run mock server tests on 32-bit */
BSON_ASSERT (sizeof (void *) * 8 >= 64);

MONGOC_INFO ("Starting mock server on port %d.", server->port);

ssock = mongoc_socket_new (AF_INET, SOCK_STREAM, 0);
Expand Down
183 changes: 95 additions & 88 deletions tests/test-bulk.c
Original file line number Diff line number Diff line change
Expand Up @@ -4185,7 +4185,7 @@ test_bulk_install (TestSuite *suite)
_test_legacy_write_err,
NULL,
(void *) err_test,
NULL);
TestSuite_CheckMockServerAllowed);

err_test++;

Expand All @@ -4197,7 +4197,7 @@ test_bulk_install (TestSuite *suite)

TestSuite_AddLive (suite, "/BulkOperation/basic", test_bulk);
TestSuite_Add (suite, "/BulkOperation/error", test_bulk_error);
TestSuite_Add (
TestSuite_AddMockServerTest (
suite, "/BulkOperation/error/unordered", test_bulk_error_unordered);
TestSuite_AddLive (
suite, "/BulkOperation/insert_ordered", test_insert_ordered);
Expand Down Expand Up @@ -4346,53 +4346,60 @@ test_bulk_install (TestSuite *suite)
TestSuite_AddLive (suite,
"/BulkOperation/single_error_unordered_bulk",
test_single_error_unordered_bulk);
TestSuite_Add (suite,
"/BulkOperation/write_concern/legacy/ordered",
test_write_concern_legacy_ordered);
TestSuite_Add (suite,
"/BulkOperation/write_concern/legacy/ordered/multi_err",
test_write_concern_legacy_ordered_multi_err);
TestSuite_Add (suite,
"/BulkOperation/write_concern/legacy/unordered",
test_write_concern_legacy_unordered);
TestSuite_Add (suite,
"/BulkOperation/write_concern/legacy/unordered/multi_err",
test_write_concern_legacy_unordered_multi_err);
TestSuite_Add (suite,
"/BulkOperation/write_concern/write_command/ordered",
test_write_concern_write_command_ordered);
TestSuite_Add (
TestSuite_AddMockServerTest (suite,
"/BulkOperation/write_concern/legacy/ordered",
test_write_concern_legacy_ordered);
TestSuite_AddMockServerTest (
suite,
"/BulkOperation/write_concern/legacy/ordered/multi_err",
test_write_concern_legacy_ordered_multi_err);
TestSuite_AddMockServerTest (suite,
"/BulkOperation/write_concern/legacy/unordered",
test_write_concern_legacy_unordered);
TestSuite_AddMockServerTest (
suite,
"/BulkOperation/write_concern/legacy/unordered/multi_err",
test_write_concern_legacy_unordered_multi_err);
TestSuite_AddMockServerTest (
suite,
"/BulkOperation/write_concern/write_command/ordered",
test_write_concern_write_command_ordered);
TestSuite_AddMockServerTest (
suite,
"/BulkOperation/write_concern/write_command/ordered/multi_err",
test_write_concern_write_command_ordered_multi_err);
TestSuite_Add (suite,
"/BulkOperation/write_concern/write_command/unordered",
test_write_concern_write_command_unordered);
TestSuite_Add (
TestSuite_AddMockServerTest (
suite,
"/BulkOperation/write_concern/write_command/unordered",
test_write_concern_write_command_unordered);
TestSuite_AddMockServerTest (
suite,
"/BulkOperation/write_concern/write_command/unordered/multi_err",
test_write_concern_write_command_unordered_multi_err);
TestSuite_Add (suite,
"/BulkOperation/write_concern/error/legacy/v1",
test_write_concern_error_legacy_v1);
TestSuite_Add (suite,
"/BulkOperation/write_concern/error/write_command/v1",
test_write_concern_error_write_command_v1);
TestSuite_Add (suite,
"/BulkOperation/write_concern/error/legacy/v2",
test_write_concern_error_legacy_v2);
TestSuite_Add (suite,
"/BulkOperation/write_concern/error/write_command/v2",
test_write_concern_error_write_command_v2);
TestSuite_AddMockServerTest (suite,
"/BulkOperation/write_concern/error/legacy/v1",
test_write_concern_error_legacy_v1);
TestSuite_AddMockServerTest (
suite,
"/BulkOperation/write_concern/error/write_command/v1",
test_write_concern_error_write_command_v1);
TestSuite_AddMockServerTest (suite,
"/BulkOperation/write_concern/error/legacy/v2",
test_write_concern_error_legacy_v2);
TestSuite_AddMockServerTest (
suite,
"/BulkOperation/write_concern/error/write_command/v2",
test_write_concern_error_write_command_v2);
TestSuite_AddLive (suite,
"/BulkOperation/multiple_error_unordered_bulk",
test_multiple_error_unordered_bulk);
TestSuite_Add (suite,
"/BulkOperation/wtimeout_duplicate_key/legacy",
test_wtimeout_plus_duplicate_key_err_legacy);
TestSuite_Add (suite,
"/BulkOperation/wtimeout_duplicate_key/write_commands",
test_wtimeout_plus_duplicate_key_err_write_commands);
TestSuite_AddMockServerTest (suite,
"/BulkOperation/wtimeout_duplicate_key/legacy",
test_wtimeout_plus_duplicate_key_err_legacy);
TestSuite_AddMockServerTest (
suite,
"/BulkOperation/wtimeout_duplicate_key/write_commands",
test_wtimeout_plus_duplicate_key_err_write_commands);
TestSuite_AddFull (suite,
"/BulkOperation/large_inserts_ordered",
test_large_inserts_ordered,
Expand Down Expand Up @@ -4421,55 +4428,55 @@ test_bulk_install (TestSuite *suite)
TestSuite_AddLive (suite,
"/BulkOperation/write_concern/over_1000",
test_bulk_write_concern_over_1000);
TestSuite_Add (suite,
"/BulkOperation/hint/single/legacy/secondary",
test_hint_single_legacy_secondary);
TestSuite_Add (suite,
"/BulkOperation/hint/single/legacy/primary",
test_hint_single_legacy_primary);
TestSuite_Add (suite,
"/BulkOperation/hint/single/command/secondary",
test_hint_single_command_secondary);
TestSuite_Add (suite,
"/BulkOperation/hint/single/command/primary",
test_hint_single_command_primary);
TestSuite_Add (suite,
"/BulkOperation/hint/pooled/legacy/secondary",
test_hint_pooled_legacy_secondary);
TestSuite_Add (suite,
"/BulkOperation/hint/pooled/legacy/primary",
test_hint_pooled_legacy_primary);
TestSuite_Add (suite,
"/BulkOperation/hint/pooled/command/secondary",
test_hint_pooled_command_secondary);
TestSuite_Add (suite,
"/BulkOperation/hint/pooled/command/primary",
test_hint_pooled_command_primary);
TestSuite_AddMockServerTest (suite,
"/BulkOperation/hint/single/legacy/secondary",
test_hint_single_legacy_secondary);
TestSuite_AddMockServerTest (suite,
"/BulkOperation/hint/single/legacy/primary",
test_hint_single_legacy_primary);
TestSuite_AddMockServerTest (suite,
"/BulkOperation/hint/single/command/secondary",
test_hint_single_command_secondary);
TestSuite_AddMockServerTest (suite,
"/BulkOperation/hint/single/command/primary",
test_hint_single_command_primary);
TestSuite_AddMockServerTest (suite,
"/BulkOperation/hint/pooled/legacy/secondary",
test_hint_pooled_legacy_secondary);
TestSuite_AddMockServerTest (suite,
"/BulkOperation/hint/pooled/legacy/primary",
test_hint_pooled_legacy_primary);
TestSuite_AddMockServerTest (suite,
"/BulkOperation/hint/pooled/command/secondary",
test_hint_pooled_command_secondary);
TestSuite_AddMockServerTest (suite,
"/BulkOperation/hint/pooled/command/primary",
test_hint_pooled_command_primary);
TestSuite_AddLive (suite, "/BulkOperation/reply_w0", test_bulk_reply_w0);
TestSuite_Add (suite,
"/BulkOperation/opts/collation/w0/wire5",
test_bulk_collation_w0_wire5);
TestSuite_Add (suite,
"/BulkOperation/opts/collation/w0/wire4",
test_bulk_collation_w0_wire4);
TestSuite_Add (suite,
"/BulkOperation/opts/collation/w1/wire5",
test_bulk_collation_w1_wire5);
TestSuite_Add (suite,
"/BulkOperation/opts/collation/w1/wire4",
test_bulk_collation_w1_wire4);
TestSuite_Add (suite,
"/BulkOperation/opts/collation/multi/w0/wire5",
test_bulk_collation_multi_w0_wire5);
TestSuite_Add (suite,
"/BulkOperation/opts/collation/multi/w0/wire4",
test_bulk_collation_multi_w0_wire4);
TestSuite_Add (suite,
"/BulkOperation/opts/collation/multi/w1/wire5",
test_bulk_collation_multi_w1_wire5);
TestSuite_Add (suite,
"/BulkOperation/opts/collation/multi/w1/wire4",
test_bulk_collation_multi_w1_wire4);
TestSuite_AddMockServerTest (suite,
"/BulkOperation/opts/collation/w0/wire5",
test_bulk_collation_w0_wire5);
TestSuite_AddMockServerTest (suite,
"/BulkOperation/opts/collation/w0/wire4",
test_bulk_collation_w0_wire4);
TestSuite_AddMockServerTest (suite,
"/BulkOperation/opts/collation/w1/wire5",
test_bulk_collation_w1_wire5);
TestSuite_AddMockServerTest (suite,
"/BulkOperation/opts/collation/w1/wire4",
test_bulk_collation_w1_wire4);
TestSuite_AddMockServerTest (suite,
"/BulkOperation/opts/collation/multi/w0/wire5",
test_bulk_collation_multi_w0_wire5);
TestSuite_AddMockServerTest (suite,
"/BulkOperation/opts/collation/multi/w0/wire4",
test_bulk_collation_multi_w0_wire4);
TestSuite_AddMockServerTest (suite,
"/BulkOperation/opts/collation/multi/w1/wire5",
test_bulk_collation_multi_w1_wire5);
TestSuite_AddMockServerTest (suite,
"/BulkOperation/opts/collation/multi/w1/wire4",
test_bulk_collation_multi_w1_wire4);
TestSuite_Add (suite,
"/BulkOperation/update_one/error_message",
test_bulk_update_one_error_message);
Expand Down
9 changes: 7 additions & 2 deletions tests/test-mongoc-async.c
Original file line number Diff line number Diff line change
Expand Up @@ -62,6 +62,10 @@ test_ismaster_impl (bool with_ssl)
mongoc_ssl_opt_t copt = {0};
#endif

if (!TestSuite_CheckMockServerAllowed ()) {
return;
}

BSON_ASSERT (bson_append_int32 (&q, "isMaster", 8, 1));

for (i = 0; i < NSERVERS; i++) {
Expand Down Expand Up @@ -174,8 +178,9 @@ test_ismaster_ssl (void)
void
test_async_install (TestSuite *suite)
{
TestSuite_Add (suite, "/Async/ismaster", test_ismaster);
TestSuite_AddMockServerTest (suite, "/Async/ismaster", test_ismaster);
#if defined(MONGOC_ENABLE_SSL_OPENSSL) && !defined(_WIN32)
TestSuite_Add (suite, "/Async/ismaster_ssl", test_ismaster_ssl);
TestSuite_AddMockServerTest (
suite, "/Async/ismaster_ssl", test_ismaster_ssl);
#endif
}
Loading

0 comments on commit 5086daa

Please sign in to comment.