diff options
Diffstat (limited to 'qpid/cpp/src/tests/Makefile.am')
-rw-r--r-- | qpid/cpp/src/tests/Makefile.am | 398 |
1 files changed, 398 insertions, 0 deletions
diff --git a/qpid/cpp/src/tests/Makefile.am b/qpid/cpp/src/tests/Makefile.am new file mode 100644 index 0000000000..ed97c41bff --- /dev/null +++ b/qpid/cpp/src/tests/Makefile.am @@ -0,0 +1,398 @@ +# +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an +# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +# KIND, either express or implied. See the License for the +# specific language governing permissions and limitations +# under the License. +# + +AM_CXXFLAGS = $(WARNING_CFLAGS) -DBOOST_TEST_DYN_LINK +INCLUDES = -I$(top_srcdir)/include -I$(top_builddir)/include -I$(top_srcdir)/src -I$(top_builddir)/src +PUBLIC_INCLUDES = -I$(top_srcdir)/include -I$(top_builddir)/include # Use public API only +QMF_GEN=$(top_srcdir)/managementgen/qmf-gen + +abs_builddir=@abs_builddir@ +abs_srcdir=@abs_srcdir@ + +extra_libs = +lib_client = $(abs_builddir)/../libqpidclient.la +lib_messaging = $(abs_builddir)/../libqpidmessaging.la +lib_common = $(abs_builddir)/../libqpidcommon.la +lib_broker = $(abs_builddir)/../libqpidbroker.la +lib_console = $(abs_builddir)/../libqmfconsole.la +lib_qmf2 = $(abs_builddir)/../libqmf2.la +# lib_amqp_0_10 = $(abs_builddir)/../libqpidamqp_0_10.la + +# +# Initialize variables that are incremented with += +# +check_PROGRAMS= +check_LTLIBRARIES= +TESTS= +EXTRA_DIST= +CLEANFILES= +LONG_TESTS= +CLEAN_LOCAL= + +# +# Destination for intalled programs and tests defined here +# +qpidexecdir = $(libexecdir)/qpid +qpidexec_PROGRAMS = +qpidexec_SCRIPTS = +qpidtestdir = $(qpidexecdir)/tests +qpidtest_PROGRAMS = +qpidtest_SCRIPTS = +tmoduledir = $(libdir)/qpid/tests +tmodule_LTLIBRARIES= + +# +# Unit test program +# +# Unit tests are built as a single program to reduce valgrind overhead +# when running the tests. If you want to build a subset of the tests do +# rm -f unit_test; make unit_test unit_test_OBJECTS="unit_test.o SelectedTest.o" +# + +TESTS+=unit_test +check_PROGRAMS+=unit_test +unit_test_LDADD=-lboost_unit_test_framework \ + $(lib_messaging) $(lib_broker) $(lib_console) $(lib_qmf2) + +unit_test_SOURCES= unit_test.cpp unit_test.h \ + MessagingSessionTests.cpp \ + MessagingThreadTests.cpp \ + MessagingFixture.h \ + ClientSessionTest.cpp \ + BrokerFixture.h SocketProxy.h \ + exception_test.cpp \ + RefCounted.cpp \ + SessionState.cpp logging.cpp \ + AsyncCompletion.cpp \ + Url.cpp Uuid.cpp \ + Shlib.cpp FieldValue.cpp FieldTable.cpp Array.cpp \ + QueueOptionsTest.cpp \ + InlineAllocator.cpp \ + InlineVector.cpp \ + SequenceSet.cpp \ + StringUtils.cpp \ + RangeSet.cpp \ + AtomicValue.cpp \ + QueueTest.cpp \ + AccumulatedAckTest.cpp \ + DtxWorkRecordTest.cpp \ + DeliveryRecordTest.cpp \ + ExchangeTest.cpp \ + HeadersExchangeTest.cpp \ + MessageTest.cpp \ + QueueRegistryTest.cpp \ + QueuePolicyTest.cpp \ + QueueFlowLimitTest.cpp \ + FramingTest.cpp \ + HeaderTest.cpp \ + SequenceNumberTest.cpp \ + TimerTest.cpp \ + TopicExchangeTest.cpp \ + TxBufferTest.cpp \ + TxPublishTest.cpp \ + MessageBuilderTest.cpp \ + ConnectionOptions.h \ + ForkedBroker.h \ + ForkedBroker.cpp \ + ManagementTest.cpp \ + MessageReplayTracker.cpp \ + ConsoleTest.cpp \ + QueueEvents.cpp \ + ProxyTest.cpp \ + RetryList.cpp \ + RateFlowcontrolTest.cpp \ + FrameDecoder.cpp \ + ReplicationTest.cpp \ + ClientMessageTest.cpp \ + PollableCondition.cpp \ + Variant.cpp \ + Address.cpp \ + ClientMessage.cpp \ + Qmf2.cpp + +if HAVE_XML +unit_test_SOURCES+= XmlClientSessionTest.cpp +endif + +TESTLIBFLAGS = -module -rpath $(abs_builddir) + +check_LTLIBRARIES += libshlibtest.la +libshlibtest_la_LDFLAGS = $(TESTLIBFLAGS) +libshlibtest_la_SOURCES = shlibtest.cpp + +tmodule_LTLIBRARIES += test_store.la +test_store_la_SOURCES = test_store.cpp +test_store_la_LIBADD = $(lib_broker) +test_store_la_LDFLAGS = -module + +include cluster.mk +include sasl.mk +if SSL +include ssl.mk +endif + +# Test programs that are installed and therefore built as part of make, not make check + +qpidtest_SCRIPTS += qpid-cpp-benchmark install_env.sh +EXTRA_DIST += qpid-cpp-benchmark install_env.sh + +qpidtest_PROGRAMS += receiver +receiver_SOURCES = \ + receiver.cpp \ + TestOptions.h \ + ConnectionOptions.h +receiver_LDADD = $(lib_client) + +qpidtest_PROGRAMS += sender +sender_SOURCES = \ + sender.cpp \ + TestOptions.h \ + ConnectionOptions.h \ + Statistics.cpp +sender_LDADD = $(lib_messaging) + +qpidtest_PROGRAMS += qpid-receive +qpid_receive_SOURCES = \ + qpid-receive.cpp \ + TestOptions.h \ + ConnectionOptions.h \ + Statistics.h \ + Statistics.cpp +qpid_receive_LDADD = $(lib_messaging) + +qpidtest_PROGRAMS += qpid-send +qpid_send_SOURCES = \ + qpid-send.cpp \ + TestOptions.h \ + ConnectionOptions.h \ + Statistics.h \ + Statistics.cpp +qpid_send_LDADD = $(lib_messaging) + +qpidtest_PROGRAMS+=qpid-perftest +qpid_perftest_SOURCES=qpid-perftest.cpp test_tools.h TestOptions.h ConnectionOptions.h +qpid_perftest_INCLUDES=$(PUBLIC_INCLUDES) +qpid_perftest_LDADD=$(lib_client) + +qpidtest_PROGRAMS+=qpid-txtest +qpid_txtest_INCLUDES=$(PUBLIC_INCLUDES) +qpid_txtest_SOURCES=qpid-txtest.cpp TestOptions.h ConnectionOptions.h +qpid_txtest_LDADD=$(lib_client) + +qpidtest_PROGRAMS+=qpid-latency-test +qpid_latency_test_INCLUDES=$(PUBLIC_INCLUDES) +qpid_latency_test_SOURCES=qpid-latency-test.cpp TestOptions.h ConnectionOptions.h +qpid_latency_test_LDADD=$(lib_client) + +qpidtest_PROGRAMS+=qpid-client-test +qpid_client_test_INCLUDES=$(PUBLIC_INCLUDES) +qpid_client_test_SOURCES=qpid-client-test.cpp TestOptions.h ConnectionOptions.h +qpid_client_test_LDADD=$(lib_client) + +qpidtest_PROGRAMS+=qpid-topic-listener +qpid_topic_listener_INCLUDES=$(PUBLIC_INCLUDES) +qpid_topic_listener_SOURCES=qpid-topic-listener.cpp TestOptions.h ConnectionOptions.h +qpid_topic_listener_LDADD=$(lib_client) + +qpidtest_PROGRAMS+=qpid-topic-publisher +qpid_topic_publisher_INCLUDES=$(PUBLIC_INCLUDES) +qpid_topic_publisher_SOURCES=qpid-topic-publisher.cpp TestOptions.h ConnectionOptions.h +qpid_topic_publisher_LDADD=$(lib_client) + +qpidtest_PROGRAMS+=qpid-ping +qpid_ping_INCLUDES=$(PUBLIC_INCLUDES) +qpid_ping_SOURCES=qpid-ping.cpp test_tools.h TestOptions.h ConnectionOptions.h +qpid_ping_LDADD=$(lib_client) + +# +# Other test programs +# + +check_PROGRAMS+=echotest +echotest_INCLUDES=$(PUBLIC_INCLUDES) +echotest_SOURCES=echotest.cpp TestOptions.h ConnectionOptions.h +echotest_LDADD=$(lib_client) + +check_PROGRAMS+=publish +publish_INCLUDES=$(PUBLIC_INCLUDES) +publish_SOURCES=publish.cpp TestOptions.h ConnectionOptions.h +publish_LDADD=$(lib_client) + +check_PROGRAMS+=consume +consume_INCLUDES=$(PUBLIC_INCLUDES) +consume_SOURCES=consume.cpp TestOptions.h ConnectionOptions.h +consume_LDADD=$(lib_client) + +check_PROGRAMS+=header_test +header_test_INCLUDES=$(PUBLIC_INCLUDES) +header_test_SOURCES=header_test.cpp TestOptions.h ConnectionOptions.h +header_test_LDADD=$(lib_client) + +check_PROGRAMS+=failover_soak +failover_soak_INCLUDES=$(PUBLIC_INCLUDES) +failover_soak_SOURCES=failover_soak.cpp ForkedBroker.h ForkedBroker.cpp +failover_soak_LDADD=$(lib_client) $(lib_broker) + +check_PROGRAMS+=declare_queues +declare_queues_INCLUDES=$(PUBLIC_INCLUDES) +declare_queues_SOURCES=declare_queues.cpp +declare_queues_LDADD=$(lib_client) + +check_PROGRAMS+=replaying_sender +replaying_sender_INCLUDES=$(PUBLIC_INCLUDES) +replaying_sender_SOURCES=replaying_sender.cpp +replaying_sender_LDADD=$(lib_client) + +check_PROGRAMS+=resuming_receiver +resuming_receiver_INCLUDES=$(PUBLIC_INCLUDES) +resuming_receiver_SOURCES=resuming_receiver.cpp +resuming_receiver_LDADD=$(lib_client) + +check_PROGRAMS+=txshift +txshift_INCLUDES=$(PUBLIC_INCLUDES) +txshift_SOURCES=txshift.cpp TestOptions.h ConnectionOptions.h +txshift_LDADD=$(lib_client) + +check_PROGRAMS+=txjob +txjob_INCLUDES=$(PUBLIC_INCLUDES) +txjob_SOURCES=txjob.cpp TestOptions.h ConnectionOptions.h +txjob_LDADD=$(lib_client) + +check_PROGRAMS+=PollerTest +PollerTest_SOURCES=PollerTest.cpp +PollerTest_LDADD=$(lib_common) $(lib_client) $(SOCKLIBS) + +check_PROGRAMS+=DispatcherTest +DispatcherTest_SOURCES=DispatcherTest.cpp +DispatcherTest_LDADD=$(lib_common) $(lib_client) $(SOCKLIBS) + +check_PROGRAMS+=datagen +datagen_SOURCES=datagen.cpp +datagen_LDADD=$(lib_common) $(lib_client) + +check_PROGRAMS+=qpid-stream +qpid_stream_INCLUDES=$(PUBLIC_INCLUDES) +qpid_stream_SOURCES=qpid-stream.cpp +qpid_stream_LDADD=$(lib_messaging) + +TESTS_ENVIRONMENT = \ + VALGRIND=$(VALGRIND) \ + LIBTOOL="$(LIBTOOL)" \ + QPID_DATA_DIR= \ + $(srcdir)/run_test + +system_tests = qpid-client-test quick_perftest quick_topictest run_header_test quick_txtest +TESTS += start_broker $(system_tests) python_tests stop_broker run_federation_tests \ + run_acl_tests run_cli_tests replication_test dynamic_log_level_test \ + run_queue_flow_limit_tests + +EXTRA_DIST += \ + run_test vg_check \ + run-unit-tests start_broker python_tests stop_broker \ + quick_topictest \ + quick_perftest \ + quick_txtest \ + topictest \ + run_header_test \ + header_test.py \ + ssl_test \ + config.null \ + ais_check \ + run_federation_tests \ + run_cli_tests \ + run_acl_tests \ + .valgrind.supp \ + MessageUtils.h \ + TestMessageStore.h \ + TxMocks.h \ + replication_test \ + run_perftest \ + ring_queue_test \ + run_ring_queue_test \ + dynamic_log_level_test \ + qpid-ctrl \ + CMakeLists.txt \ + cluster.cmake \ + windows/DisableWin32ErrorWindows.cpp \ + background.ps1 \ + find_prog.ps1 \ + python_tests.ps1 \ + quick_topictest.ps1 \ + run_federation_tests.ps1 \ + run_header_test.ps1 \ + run_test.ps1 \ + start_broker.ps1 \ + stop_broker.ps1 \ + topictest.ps1 \ + run_queue_flow_limit_tests + +check_LTLIBRARIES += libdlclose_noop.la +libdlclose_noop_la_LDFLAGS = -module -rpath $(abs_builddir) +libdlclose_noop_la_SOURCES = dlclose_noop.c + +CLEANFILES+=valgrind.out *.log *.vglog* dummy_test qpidd.port $(unit_wrappers) + +# Longer running stability tests, not run by default check: target. +# Not run under valgrind, too slow + +LONG_TESTS+=start_broker fanout_perftest shared_perftest multiq_perftest topic_perftest run_ring_queue_test stop_broker \ + run_failover_soak reliable_replication_test \ + federated_cluster_test_with_node_failure + +EXTRA_DIST+= \ + fanout_perftest \ + shared_perftest \ + multiq_perftest \ + topic_perftest \ + run_failover_soak \ + reliable_replication_test \ + federated_cluster_test_with_node_failure \ + sasl_test_setup.sh + +check-long: + $(MAKE) check TESTS="$(LONG_TESTS)" VALGRIND= + +# Things that should be built before the check target runs. +check-am: python_prep test_env.sh install_env.sh sasl_config + +PYTHON_SRC_DIR=$(abs_srcdir)/../../../python +PYTHON_BLD_DIR=$(abs_builddir)/python + +# Generate python client as part of the all-am target so it gets built before tests. +all-am: python_prep + +python_prep: + if test -d $(PYTHON_SRC_DIR); \ + then cd $(PYTHON_SRC_DIR) && python $(PYTHON_SRC_DIR)/setup.py install \ + --prefix=$(PYTHON_BLD_DIR) --install-lib=$(PYTHON_BLD_DIR) \ + --install-scripts=$(PYTHON_BLD_DIR)/commands; \ + else echo "WARNING: python client not built, missing $(PYTHON_SRC_DIR)"; fi + +sasl_config: sasl_test_setup.sh + sh $(srcdir)/sasl_test_setup.sh + touch sasl_config + +CLEAN_LOCAL += sasl_config + +clean-local: + rm -rf $(CLEAN_LOCAL) + +include testagent.mk +include brokermgmt.mk + |