noinst_PROGRAMS += test-load noinst_PROGRAMS += test-secondary noinst_PROGRAMS += test-replica-set noinst_PROGRAMS += test-sharded-cluster noinst_PROGRAMS += test-libmongoc if ENABLE_SSL noinst_PROGRAMS += test-replica-set-ssl endif TEST_PROGS = test-libmongoc TEST_CFLAGS = if OS_SOLARIS TEST_CFLAGS += -D_REENTRANT endif TEST_CFLAGS += \ -DMONGOC_COMPILATION \ -DBINARY_DIR="\"$(srcdir)/tests/binary\"" \ $(BSON_CFLAGS) \ $(SSL_CFLAGS) \ $(SASL_CFLAGS) \ -I$(top_srcdir)/src/mongoc \ -I$(top_builddir)/src/mongoc TEST_LIBS = \ libmongoc-priv.la \ $(PTHREAD_LIBS) \ $(SHM_LIB) \ $(SASL_LIBS) \ $(SSL_LIBS) if EXPLICIT_LIBS TEST_LIBS += $(BSON_LIBS) endif if OS_WIN32 TEST_LIBS += -lshlwapi endif test_load_SOURCES = \ tests/test-load.c \ tests/mongoc-tests.c test_load_CFLAGS = $(TEST_CFLAGS) test_load_LDADD = $(TEST_LIBS) test_secondary_SOURCES = \ tests/test-secondary.c \ tests/mongoc-tests.c test_secondary_CFLAGS = $(TEST_CFLAGS) test_secondary_LDADD = $(TEST_LIBS) test_replica_set_SOURCES = \ tests/test-replica-set.c \ tests/ha-test.c \ tests/ha-test.h \ tests/mongoc-tests.c test_replica_set_CFLAGS = $(TEST_CFLAGS) test_replica_set_LDADD = $(TEST_LIBS) test_replica_set_ssl_SOURCES = \ tests/test-replica-set-ssl.c \ tests/ha-test.c \ tests/ha-test.h \ tests/mongoc-tests.c test_replica_set_ssl_CFLAGS = $(TEST_CFLAGS) test_replica_set_ssl_LDADD = $(TEST_LIBS) test_libmongoc_SOURCES = \ tests/mock-server.c \ tests/mock-server.h \ tests/test-libmongoc.c \ tests/test-bulk.c \ tests/test-mongoc-array.c \ tests/test-mongoc-buffer.c \ tests/test-mongoc-client.c \ tests/test-mongoc-client-pool.c \ tests/test-mongoc-collection.c \ tests/test-mongoc-cursor.c \ tests/test-mongoc-database.c \ tests/test-mongoc-gridfs.c \ tests/test-mongoc-gridfs-file-page.c \ tests/test-mongoc-list.c \ tests/test-mongoc-matcher.c \ tests/test-mongoc-queue.c \ tests/test-mongoc-read-prefs.c \ tests/test-mongoc-rpc.c \ tests/test-mongoc-socket.c \ tests/test-mongoc-stream.c \ tests/test-mongoc-uri.c \ tests/test-mongoc-write-concern.c \ tests/test-libmongoc.h \ tests/test-write-commands.c \ tests/TestSuite.c \ tests/TestSuite.h if ENABLE_SSL test_libmongoc_SOURCES += \ tests/test-x509.c \ tests/test-mongoc-stream-tls.c \ tests/ssl-test.c \ tests/ssl-test.h endif test_libmongoc_CFLAGS = $(TEST_CFLAGS) test_libmongoc_LDADD = $(TEST_LIBS) test_sharded_cluster_SOURCES = \ tests/test-sharded-cluster.c \ tests/ha-test.c \ tests/ha-test.h \ tests/mongoc-tests.c test_sharded_cluster_CFLAGS = $(TEST_CFLAGS) test_sharded_cluster_LDADD = $(TEST_LIBS) test_certs: tests/trust_dir/done tests/trust_dir/done: $(top_srcdir)/tests/make_ca.pl $(top_srcdir)/tests/trust_dir.cnf PATH=$(top_srcdir)/tests:${PATH} $(top_srcdir)/tests/make_ca.pl $(top_builddir)/tests/trust_dir $(top_srcdir)/tests/trust_dir.cnf touch $(top_builddir)/tests/trust_dir/done check: test abicheck TEST_ARGS = -f -p if ENABLE_SSL test: $(TEST_PROGS) test_certs else test: $(TEST_PROGS) endif @ for TEST_PROG in $(TEST_PROGS) ; do \ ./$$TEST_PROG $(TEST_ARGS) -F test.log; \ done valgrind: $(TEST_PROGS) $(LIBTOOL) --mode=execute valgrind --leak-check=full --suppressions=$(srcdir)/valgrind.suppressions ./test-libmongoc -f -p if OS_LINUX abicheck: @ $(srcdir)/tests/abicheck.sh "$(srcdir)/src/libmongoc.symbols" else abicheck: endif # TODO: run tests that do not need to talk to a server local-check: DISTCLEANFILES += \ test.log \ tests/trust_dir/ca.db.serial \ tests/trust_dir/done \ tests/trust_dir/keys/rev.mongodb.com.pem \ tests/trust_dir/keys/mongodb.com.pem \ tests/trust_dir/keys/pass.mongodb.com.pem \ tests/trust_dir/keys/127.0.0.1.pem \ tests/trust_dir/keys/alt.mongodb.com.pem \ tests/trust_dir/ca.db.certs/01.pem \ tests/trust_dir/ca.db.certs/04.pem \ tests/trust_dir/ca.db.certs/05.pem \ tests/trust_dir/ca.db.certs/02.pem \ tests/trust_dir/ca.db.certs/03.pem \ tests/trust_dir/ca.db.index.attr \ tests/trust_dir/ca.db.index \ tests/trust_dir/build/mongodb.com.crt \ tests/trust_dir/build/127.0.0.1.req \ tests/trust_dir/build/mongodb.com.key \ tests/trust_dir/build/rev.mongodb.com.req \ tests/trust_dir/build/alt.mongodb.com.req \ tests/trust_dir/build/pass.mongodb.com.key \ tests/trust_dir/build/rev.mongodb.com.key \ tests/trust_dir/build/127.0.0.1.crt \ tests/trust_dir/build/pass.mongodb.com.req \ tests/trust_dir/build/rev.mongodb.com.crt \ tests/trust_dir/build/pass.mongodb.com.crt \ tests/trust_dir/build/mongodb.com.req \ tests/trust_dir/build/127.0.0.1.key \ tests/trust_dir/build/alt.mongodb.com.crt \ tests/trust_dir/build/alt.mongodb.com.key \ tests/trust_dir/verify/mongo_root.pem \ tests/trust_dir/verify/rev.mongodb.com.pem \ tests/trust_dir/verify/mongodb.com.pem \ tests/trust_dir/verify/pass.mongodb.com.pem \ tests/trust_dir/verify/127.0.0.1.pem \ tests/trust_dir/verify/alt.mongodb.com.pem \ tests/trust_dir/ca.db.index.old \ tests/trust_dir/ca.db.rand \ tests/trust_dir/signing-ca.key \ tests/trust_dir/signing-ca.crt \ tests/trust_dir/ca.db.index.attr.old \ tests/trust_dir/ca.db.serial.old \ tests/trust_dir/crl/root.crl.pem .PHONY: test_certs EXTRA_DIST += \ tests/abicheck.sh \ tests/binary/delete1.dat \ tests/binary/get_more1.dat \ tests/binary/gridfs.dat \ tests/binary/insert1.dat \ tests/binary/kill_cursors1.dat \ tests/binary/msg1.dat \ tests/binary/query1.dat \ tests/binary/query2.dat \ tests/binary/reply1.dat \ tests/binary/reply2.dat \ tests/binary/update1.dat \ tests/certificates/ca.pem \ tests/certificates/client.pem \ tests/mock-server.c \ tests/mock-server.h \ tests/mongoc-tests.c \ tests/mongoc-tests.h \ tests/trust_dir.cnf \ tests/make_ca.pl \ tests/c_rehash if OS_DARWIN DEBUGGER = lldb -- else DEBUGGER = gdb --args endif debug: test-libmongoc $(LIBTOOL) --mode=execute $(DEBUGGER) test-libmongoc -f -p