From 35cb1fade62a92fdccc9fa0d75a3b69115c56c35 Mon Sep 17 00:00:00 2001 From: Martin Lucina Date: Fri, 27 Aug 2010 18:35:59 +0200 Subject: Add a basic framework for a test suite The test suite uses the standard automake support. Tests are always built, but run only when you do a "make check". --- Makefile.am | 4 ++-- configure.in | 2 +- tests/Makefile.am | 8 ++++++++ tests/simple.cpp | 32 ++++++++++++++++++++++++++++++++ 4 files changed, 43 insertions(+), 3 deletions(-) create mode 100644 tests/Makefile.am create mode 100644 tests/simple.cpp diff --git a/Makefile.am b/Makefile.am index 18775fd..1236874 100644 --- a/Makefile.am +++ b/Makefile.am @@ -1,7 +1,7 @@ ACLOCAL_AMFLAGS = -I config -SUBDIRS = src doc perf devices -DIST_SUBDIRS = src doc perf devices builds/msvc +SUBDIRS = src doc perf devices tests +DIST_SUBDIRS = src doc perf devices tests builds/msvc EXTRA_DIST = \ $(top_srcdir)/foreign/openpgm/@pgm_basename@.tar.gz \ diff --git a/configure.in b/configure.in index 4dc20e7..61d22da 100644 --- a/configure.in +++ b/configure.in @@ -374,7 +374,7 @@ AC_OUTPUT(Makefile src/Makefile doc/Makefile perf/Makefile src/libzmq.pc \ devices/Makefile devices/zmq_forwarder/Makefile \ devices/zmq_streamer/Makefile devices/zmq_queue/Makefile \ - builds/msvc/Makefile) + builds/msvc/Makefile tests/Makefile) # On Linux patch libtool to delete hardcoded paths (rpath). case "${host_os}" in diff --git a/tests/Makefile.am b/tests/Makefile.am new file mode 100644 index 0000000..50ba0f3 --- /dev/null +++ b/tests/Makefile.am @@ -0,0 +1,8 @@ +INCLUDES = -I$(top_builddir)/include +LDADD = $(top_builddir)/src/libzmq.la + +noinst_PROGRAMS = simple + +simple_SOURCES = simple.cpp + +TESTS = $(noinst_PROGRAMS) diff --git a/tests/simple.cpp b/tests/simple.cpp new file mode 100644 index 0000000..4ee2bac --- /dev/null +++ b/tests/simple.cpp @@ -0,0 +1,32 @@ +/* + Copyright (c) 2007-2010 iMatix Corporation + + This file is part of 0MQ. + + 0MQ is free software; you can redistribute it and/or modify it under + the terms of the Lesser GNU General Public License as published by + the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + 0MQ is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + Lesser GNU General Public License for more details. + + You should have received a copy of the Lesser GNU General Public License + along with this program. If not, see . +*/ + +#include + +/* This is the simplest possible test case; test if we can initialize and + immediately terminate a context. */ +int main (int argc, char *argv []) +{ + void *ctx; + + ctx = zmq_init (1); + zmq_term (ctx); + + return 0; +} -- cgit v1.2.3