Commit 32d6f59b authored by Pavel Vainerman's avatar Pavel Vainerman

(tests): сделал чтобы тесты помимо общего запуска всех тестов в каталоге testsuite

можно было запускать отдельно в каждом каталоге с тестами (пока их три: tests, extensions-tests, extensions/LogicProcessor/unit-tests)
parent c7d58bab
...@@ -3,7 +3,8 @@ ...@@ -3,7 +3,8 @@
############################################################################ ############################################################################
FIRSTSUBDIRS=IDL FIRSTSUBDIRS=IDL
SUBDIRS=. src lib include Utilities tests extensions python testsuite docs SUBDIRS=. src lib include Utilities tests extensions python docs
# testsuite
pkgconfigdir = $(libdir)/pkgconfig pkgconfigdir = $(libdir)/pkgconfig
pkgconfig_DATA = libUniSet2.pc pkgconfig_DATA = libUniSet2.pc
......
...@@ -14,6 +14,12 @@ AM_MAINTAINER_MODE ...@@ -14,6 +14,12 @@ AM_MAINTAINER_MODE
dnl Initialize test suite dnl Initialize test suite
AC_CONFIG_TESTDIR(testsuite) AC_CONFIG_TESTDIR(testsuite)
AC_CONFIG_TESTDIR(tests)
AC_CONFIG_TESTDIR(extensions/tests)
AC_CONFIG_TESTDIR(extensions/LogicProcessor/unit-tests)
TESTSUITE_DIR="\$(top_builddir)/testsuite"
AC_SUBST(TESTSUITE_DIR)
dnl Checks for programs. dnl Checks for programs.
AC_PROG_INSTALL AC_PROG_INSTALL
......
if DISABLE_LOGICPROC if DISABLE_LOGICPROC
else else
SUBDIRS=unit-tests
# не забывайте править версию в2.pc-файле # не забывайте править версию в2.pc-файле
ULPROC_VER=@LIBVER@ ULPROC_VER=@LIBVER@
...@@ -44,4 +43,5 @@ pkgconfig_DATA = libUniSet2LogicProcessor.pc ...@@ -44,4 +43,5 @@ pkgconfig_DATA = libUniSet2LogicProcessor.pc
all-local: all-local:
ln -sf ../LogicProcessor/$(devel_include_HEADERS) ../include ln -sf ../LogicProcessor/$(devel_include_HEADERS) ../include
SUBDIRS=unit-tests
endif endif
noinst_PROGRAMS = tests check_PROGRAMS = tests
tests_SOURCES = tests.cc lproc.cc tests_SOURCES = tests.cc lproc.cc
tests_LDADD = $(top_builddir)/lib/libUniSet2.la $(top_builddir)/extensions/lib/libUniSet2Extensions.la \ tests_LDADD = $(top_builddir)/lib/libUniSet2.la $(top_builddir)/extensions/lib/libUniSet2Extensions.la \
$(top_builddir)/extensions/LogicProcessor/libUniSet2LProcessor.la $(top_builddir)/extensions/LogicProcessor/libUniSet2LProcessor.la
tests_CPPFLAGS = -I$(top_builddir)/include -I$(top_builddir)/extensions/include -I$(top_builddir)/extensions/LogicProcessor \ tests_CPPFLAGS = -I$(top_builddir)/include -I$(top_builddir)/extensions/include -I$(top_builddir)/extensions/LogicProcessor \
-I$(includedir)/Catch -I$(includedir)/Catch
$(top_builddir)/extensions/lib/libUniSet2Extensions.la:
cd $(top_builddir)/extensions/lib/ && make
$(top_builddir)/extensions/LogicProcessor/libUniSet2LProcessor.la:
cd $(top_builddir)/extensions/LogicProcessor/ && make
include $(top_builddir)/testsuite/testsuite-common.mk
check-local: atconfig package.m4 $(TESTSUITE)
$(SHELL) $(TESTSUITE) $(TESTSUITEFLAGS)
clean-local:
rm -rf $(CLEANFILES)
AT_SETUP([LogicProcessor tests])
AT_CHECK([$abs_top_builddir/testsuite/at-test-launch.sh $abs_top_builddir/extensions/LogicProcessor/unit-tests tests],[0],[ignore],[ignore])
AT_CLEANUP
m4_include(package.m4)
AT_COLOR_TESTS
AT_INIT([Logic processor tests])
m4_include(lproc-tests.at)
SUBDIR=SMemoryTest SUBDIR=SMemoryTest
#noinst_PROGRAMS = tests tests_with_conf tests_with_sm
check_PROGRAMS = tests tests_with_conf tests_with_sm check_PROGRAMS = tests tests_with_conf tests_with_sm
TESTS_ENVIRONMENT=$(CATCH_TESTS_ENVIRONMENT)
TESTS=tests tests_with_conf.sh tests_with_sm.sh
tests_SOURCES = tests.cc digitalfilter.cc tests_SOURCES = tests.cc digitalfilter.cc
tests_LDADD = $(top_builddir)/lib/libUniSet2.la $(top_builddir)/extensions/lib/libUniSet2Extensions.la tests_LDADD = $(top_builddir)/lib/libUniSet2.la $(top_builddir)/extensions/lib/libUniSet2Extensions.la
tests_CPPFLAGS = -I$(top_builddir)/include -I$(top_builddir)/extensions/include -I$(includedir)/Catch tests_CPPFLAGS = -I$(top_builddir)/include -I$(top_builddir)/extensions/include -I$(includedir)/Catch
...@@ -20,5 +16,12 @@ tests_with_sm_LDADD = $(top_builddir)/lib/libUniSet2.la $(top_builddir)/exte ...@@ -20,5 +16,12 @@ tests_with_sm_LDADD = $(top_builddir)/lib/libUniSet2.la $(top_builddir)/exte
tests_with_sm_CPPFLAGS = -I$(top_builddir)/include -I$(top_builddir)/extensions/include -I$(includedir)/Catch \ tests_with_sm_CPPFLAGS = -I$(top_builddir)/include -I$(top_builddir)/extensions/include -I$(includedir)/Catch \
-I$(top_builddir)/extensions/SharedMemory $(SIGC_CFLAGS) $(COMCPP_CFLAGS) -I$(top_builddir)/extensions/SharedMemory $(SIGC_CFLAGS) $(COMCPP_CFLAGS)
clean-local:
rm -rf *.log include $(top_builddir)/testsuite/testsuite-common.mk
check-local: atconfig package.m4 $(TESTSUITE)
$(SHELL) $(TESTSUITE) $(TESTSUITEFLAGS)
clean-local:
test ! -f '$(TESTSUITE)'|| $(SHELL) '$(TESTSUITE)' --clean
rm -rf $(CLEANFILES)
AT_SETUP([Extensions tests])
AT_CHECK([$abs_top_builddir/testsuite/at-test-launch.sh $abs_top_builddir/extensions/tests tests],[0],[ignore],[ignore])
AT_CLEANUP
AT_SETUP([Extensions tests with conf])
AT_CHECK([$abs_top_builddir/testsuite/at-test-launch.sh $abs_top_builddir/extensions/tests tests_with_conf.sh],[0],[ignore],[ignore])
AT_CLEANUP
AT_SETUP([Extensions tests with sharedmemory])
AT_CHECK([$abs_top_builddir/testsuite/at-test-launch.sh $abs_top_builddir/extensions/tests tests_with_sm.sh],[0],[ignore],[ignore])
AT_CLEANUP
m4_include(package.m4)
AT_COLOR_TESTS
AT_INIT([Extensions tests])
m4_include(extensions-tests.at)
#include <catch.hpp>
#include <time.h>
#include "UInterface.h"
#include "UniSetTypes.h"
using namespace std;
using namespace UniSetTypes;
TEST_CASE("UInterface","[UInterface]")
{
CHECK( conf!=0 );
std::string sidName("Input1_S");
std::string aidName("AI_AS");
ObjectId testOID = conf->getObjectID("TestProc");
CHECK( testOID != DefaultObjectId );
ObjectId sid = conf->getSensorID(sidName);
CHECK( sid != DefaultObjectId );
ObjectId aid = conf->getSensorID(aidName);
CHECK( aid != DefaultObjectId );
UInterface ui;
CHECK( ui.getObjectIndex() != 0 );
CHECK( ui.getConf() == UniSetTypes::conf );
REQUIRE( ui.getConfIOType(sid) == UniversalIO::DI );
REQUIRE( ui.getConfIOType(aid) == UniversalIO::AI );
// REQUIRE( ui.getType(sid) == "IONotifyController" );
// REQUIRE( ui.getType(aid) == "IONotifyController" );
SECTION( "GET/SET" )
{
REQUIRE_THROWS_AS( ui.getValue(DefaultObjectId), UniSetTypes::ORepFailed );
REQUIRE_NOTHROW( ui.setValue(sid,1) );
REQUIRE( ui.getValue(sid) == 1 );
REQUIRE_NOTHROW( ui.setValue(sid,100) );
REQUIRE( ui.getValue(sid) == 100 ); // хоть это и дискретный датчик.. функция-то универсальная..
REQUIRE_THROWS_AS( ui.getValue(sid, DefaultObjectId), UniSetTypes::Exception );
REQUIRE_THROWS_AS( ui.getValue(sid, 100), UniSetTypes::Exception );
REQUIRE_NOTHROW( ui.setValue(aid,10) );
REQUIRE( ui.getValue(aid) == 10 );
IOController_i::SensorInfo si;
si.id = aid;
si.node = conf->getLocalNode();
REQUIRE_NOTHROW( ui.setValue(si,15, DefaultObjectId) );
REQUIRE( ui.getRawValue(si) == 15 );
REQUIRE_NOTHROW( ui.fastSetValue(si,20,DefaultObjectId) );
REQUIRE( ui.getValue(aid) == 20 );
REQUIRE_THROWS_AS( ui.getValue(aid,-2), UniSetTypes::Exception );
si.id = sid;
REQUIRE_NOTHROW( ui.setValue(si,15, DefaultObjectId) );
REQUIRE( ui.getValue(sid) == 15 );
si.node = -2;
REQUIRE_THROWS_AS( ui.setValue(si,20,DefaultObjectId), UniSetTypes::Exception );
REQUIRE_THROWS_AS( ui.getChangedTime(sid,DefaultObjectId), UniSetTypes::ORepFailed );
REQUIRE_NOTHROW( ui.getChangedTime(sid,conf->getLocalNode()) );
si.id = aid;
si.node = conf->getLocalNode();
REQUIRE_NOTHROW( ui.setUndefinedState(si,true,testOID) );
REQUIRE_NOTHROW( ui.setUndefinedState(si,false,testOID) );
si.id = sid;
si.node = conf->getLocalNode();
REQUIRE_NOTHROW( ui.setUndefinedState(si,true,testOID) );
REQUIRE_NOTHROW( ui.setUndefinedState(si,false,testOID) );
REQUIRE( ui.getIOType(sid,conf->getLocalNode()) == UniversalIO::DI );
REQUIRE( ui.getIOType(aid,conf->getLocalNode()) == UniversalIO::AI );
}
SECTION( "resolve" )
{
REQUIRE_NOTHROW( ui.resolve(sid) );
REQUIRE_THROWS_AS( ui.resolve(sid,10), UniSetTypes::ORepFailed );
REQUIRE_THROWS_AS( ui.resolve(sid,DefaultObjectId), UniSetTypes::ORepFailed );
}
SECTION( "send" )
{
TransportMessage tm( SensorMessage(sid,10).transport_msg() );
REQUIRE_NOTHROW( ui.send(sid,tm) );
}
SECTION( "wait..exist.." )
{
CHECK( ui.waitReady(sid,200,50) );
CHECK( ui.waitReady(sid,200,50, conf->getLocalNode()) );
CHECK_FALSE( ui.waitReady(sid,300,50,DefaultObjectId) );
CHECK_FALSE( ui.waitReady(sid,300,50,-20) );
CHECK_FALSE( ui.waitReady(sid,-1,50) );
CHECK( ui.waitReady(sid,300,-1) );
CHECK( ui.waitWorking(sid,200,50) );
CHECK( ui.waitWorking(sid,200,50,conf->getLocalNode()) );
CHECK_FALSE( ui.waitWorking(sid,100,50,DefaultObjectId) );
CHECK_FALSE( ui.waitWorking(sid,100,50,-20) );
CHECK_FALSE( ui.waitWorking(sid,-1,50) );
CHECK( ui.waitWorking(sid,100,-1) );
CHECK( ui.isExist(sid) );
CHECK( ui.isExist(sid,conf->getLocalNode()) );
CHECK_FALSE( ui.isExist(sid,DefaultObjectId) );
CHECK_FALSE( ui.isExist(sid,100) );
}
SECTION( "get/set list" )
{
UniSetTypes::IDList lst;
lst.add(aid);
lst.add(sid);
lst.add(-100); // bad sensor ID
IOController_i::SensorInfoSeq_var seq = ui.getSensorSeq(lst);
REQUIRE( seq->length() == 3 );
IOController_i::OutSeq_var olst = new IOController_i::OutSeq();
olst->length(2);
olst[0].si.id = sid;
olst[0].si.node = conf->getLocalNode();
olst[0].value = 1;
olst[1].si.id = aid;
olst[1].si.node = conf->getLocalNode();
olst[1].value = 35;
UniSetTypes::IDSeq_var iseq = ui.setOutputSeq(olst, DefaultObjectId);
REQUIRE( iseq->length() == 0 );
IOController_i::ShortMapSeq_var slist = ui.getSensors( sid, conf->getLocalNode() );
REQUIRE( slist->length() >= 2 );
}
SECTION( "ask" )
{
REQUIRE_THROWS_AS( ui.askSensor(sid,UniversalIO::UIONotify), UniSetTypes::IOBadParam );
REQUIRE_NOTHROW( ui.askSensor(sid,UniversalIO::UIONotify,testOID) );
REQUIRE_NOTHROW( ui.askSensor(aid,UniversalIO::UIONotify,testOID) );
REQUIRE_NOTHROW( ui.askSensor(aid,UniversalIO::UIODontNotify,testOID) );
REQUIRE_NOTHROW( ui.askSensor(sid,UniversalIO::UIODontNotify,testOID) );
REQUIRE_THROWS_AS( ui.askSensor(-20,UniversalIO::UIONotify), UniSetTypes::Exception );
REQUIRE_NOTHROW( ui.askRemoteSensor(sid,UniversalIO::UIONotify,conf->getLocalNode(),testOID) );
REQUIRE_NOTHROW( ui.askRemoteSensor(aid,UniversalIO::UIONotify,conf->getLocalNode(),testOID) );
REQUIRE_THROWS_AS( ui.askRemoteSensor(sid,UniversalIO::UIONotify,-3,testOID), UniSetTypes::Exception );
UniSetTypes::IDList lst;
lst.add(aid);
lst.add(sid);
lst.add(-100); // bad sensor ID
UniSetTypes::IDSeq_var rseq = ui.askSensorsSeq(lst,UniversalIO::UIONotify,testOID);
REQUIRE( rseq->length() == 1 ); // проверяем, что нам вернули один BAD-датчик..(-100)
}
SECTION( "Thresholds" )
{
REQUIRE_NOTHROW( ui.askThreshold(aid,10,UniversalIO::UIONotify,90,100,false,testOID) );
REQUIRE_NOTHROW( ui.askThreshold(aid,11,UniversalIO::UIONotify,50,70,false,testOID) );
REQUIRE_NOTHROW( ui.askThreshold(aid,12,UniversalIO::UIONotify,20,40,false,testOID) );
REQUIRE_THROWS_AS( ui.askThreshold(aid,3,UniversalIO::UIONotify,50,20,false,testOID), IONotifyController_i::BadRange );
IONotifyController_i::ThresholdInfo ti1 = ui.getThresholdInfo(aid,10);
REQUIRE( ti1.id == 10 );
REQUIRE( ti1.lowlimit == 90 );
REQUIRE( ti1.hilimit == 100 );
IONotifyController_i::ThresholdInfo ti2 = ui.getThresholdInfo(aid,11);
REQUIRE( ti2.id == 11 );
REQUIRE( ti2.lowlimit == 50 );
REQUIRE( ti2.hilimit == 70 );
IONotifyController_i::ThresholdInfo ti3 = ui.getThresholdInfo(aid,12);
REQUIRE( ti3.id == 12 );
REQUIRE( ti3.lowlimit == 20 );
REQUIRE( ti3.hilimit == 40 );
REQUIRE_THROWS_AS( ui.getThresholdInfo(sid,10), UniSetTypes::NameNotFound );
}
SECTION( "calibration" )
{
IOController_i::SensorInfo si;
si.id = aid;
si.node = conf->getLocalNode();
IOController_i::CalibrateInfo ci;
ci.minRaw = 0;
ci.maxRaw = 4096;
ci.minCal = -100;
ci.maxCal = 100;
ci.precision = 3;
REQUIRE_NOTHROW( ui.calibrate(si,ci) );
IOController_i::CalibrateInfo ci2 = ui.getCalibrateInfo(si);
CHECK( ci.minRaw == ci2.minRaw );
CHECK( ci.maxRaw == ci2.maxRaw );
CHECK( ci.minCal == ci2.minCal );
CHECK( ci.maxCal == ci2.maxCal );
CHECK( ci.precision == ci2.precision );
}
}
...@@ -4,8 +4,8 @@ ...@@ -4,8 +4,8 @@
check_PROGRAMS = tests tests_with_conf check_PROGRAMS = tests tests_with_conf
#umutex sscanf_hexthreadtst dlog #umutex threadtst dlog
tests_SOURCES = tests.cc passivetimer.cc hourglass.cc delaytimer.cc unixml.cc tests_SOURCES = tests.cc passivetimer.cc hourglass.cc delaytimer.cc unixml.cc sscanf_hex.cc
tests_LDADD = $(top_builddir)/lib/libUniSet2.la tests_LDADD = $(top_builddir)/lib/libUniSet2.la
tests_CPPFLAGS = -I$(top_builddir)/include -I$(includedir)/Catch tests_CPPFLAGS = -I$(top_builddir)/include -I$(includedir)/Catch
...@@ -13,16 +13,10 @@ tests_with_conf_SOURCES = tests_with_conf.cc conftest.cc ui.cc ...@@ -13,16 +13,10 @@ tests_with_conf_SOURCES = tests_with_conf.cc conftest.cc ui.cc
tests_with_conf_LDADD = $(top_builddir)/lib/libUniSet2.la tests_with_conf_LDADD = $(top_builddir)/lib/libUniSet2.la
tests_with_conf_CPPFLAGS = -I$(top_builddir)/include -I$(includedir)/Catch tests_with_conf_CPPFLAGS = -I$(top_builddir)/include -I$(includedir)/Catch
# ui_SOURCES = ui.cc
# ui_LDADD = $(top_builddir)/lib/libUniSet2.la
# ui_CPPFLAGS = -I$(top_builddir)/include
#
# umutex_SOURCES = umutex.cc # umutex_SOURCES = umutex.cc
# umutex_LDADD = $(top_builddir)/lib/libUniSet2.la $(COMCPP_LIBS) # umutex_LDADD = $(top_builddir)/lib/libUniSet2.la $(COMCPP_LIBS)
# umutex_CPPFLAGS = -I$(top_builddir)/include $(COMCPP_CFLAGS) # umutex_CPPFLAGS = -I$(top_builddir)/include $(COMCPP_CFLAGS)
# #
# sscanf_hex_SOURCES = sscanf_hex.cc
#
# threadtst_SOURCES = threadtst.cc # threadtst_SOURCES = threadtst.cc
# threadtst_LDADD = $(top_builddir)/lib/libUniSet2.la ${SIGC_LIBS} $(COMCPP_LIBS) # threadtst_LDADD = $(top_builddir)/lib/libUniSet2.la ${SIGC_LIBS} $(COMCPP_LIBS)
# threadtst_CPPFLAGS = -I$(top_builddir)/include ${SIGC_CFLAGS} $(COMCPP_CFLAGS) # threadtst_CPPFLAGS = -I$(top_builddir)/include ${SIGC_CFLAGS} $(COMCPP_CFLAGS)
...@@ -32,8 +26,11 @@ tests_with_conf_CPPFLAGS = -I$(top_builddir)/include -I$(includedir)/Catch ...@@ -32,8 +26,11 @@ tests_with_conf_CPPFLAGS = -I$(top_builddir)/include -I$(includedir)/Catch
# dlog_CPPFLAGS = -I$(top_builddir)/include ${SIGC_CFLAGS} $(COMCPP_CFLAGS) # dlog_CPPFLAGS = -I$(top_builddir)/include ${SIGC_CFLAGS} $(COMCPP_CFLAGS)
# #
# testdir=$(top_builddir)/tests include $(top_builddir)/testsuite/testsuite-common.mk
#check-local: tests tests_with_conf
# $(SHELL) $(testdir)/tests 2>/dev/null check-local: atconfig package.m4 $(TESTSUITE)
# $(SHELL) $(testdir)/tests_with_conf -- --confile $(testdir)/tests_with_conf.xml --prop-id2 -10 --ulog-no-debug 2>/dev/null $(SHELL) $(TESTSUITE) $(TESTSUITEFLAGS)
clean-local:
test ! -f '$(TESTSUITE)'|| $(SHELL) '$(TESTSUITE)' --clean
rm -rf $(CLEANFILES)
#include <catch.hpp>
#include <stdio.h> #include <stdio.h>
bool check(const char *t, int nres) int check( const char *t )
{ {
int n = 105; int r = 0;
sscanf(t, "%i", &n); sscanf(t, "%i", &r);
printf("res=%d\n", n); return r;
if ( n != nres ) }
printf("check %d [FAILED]\n",nres);
return n == nres;
}
int main() TEST_CASE("sscanf hex","[sscanf hex]")
{ {
check("100",100); REQUIRE( check("100") == 100 );
check("0x100",0x100); REQUIRE( check("0x100") == 0x100 );
check("0XFF",0xff); REQUIRE( check("0xFF") == 0xff );
check("010",010); REQUIRE( check("010") == 010 );
check("-10",-10); REQUIRE( check("-10") == -10 );
check("-1000",-1000); REQUIRE( check("-1000") == -1000 );
check("",0); REQUIRE( check("") == 0 );
// check(NULL,0); // SegFault
return 0;
} }
AT_SETUP([Basic tests])
AT_CHECK([$abs_top_builddir/testsuite/at-test-launch.sh $abs_top_builddir/tests tests],[0],[ignore],[ignore])
AT_CLEANUP
AT_SETUP([Basic tests with conf])
AT_CHECK([$abs_top_builddir/testsuite/at-test-launch.sh $abs_top_builddir/tests tests_with_conf.sh],[0],[ignore],[ignore])
AT_CLEANUP
m4_include(package.m4)
AT_COLOR_TESTS
AT_INIT([Basic tests])
m4_include(tests.at)
# Common rules fot uniset testsuite
include $(top_builddir)/testsuite/testsuite-common.mk
#TESTS=$(top_builddir)/tests/tests $(top_builddir)/tests/tests_with_conf.sh check-local: atconfig package.m4 $(TESTSUITE)
TESTSUITE_AT=testsuite.at
TESTSUITE=testsuite
EXTRA_DIR=package.m4 $(TESTS) $(TESTSUITE) $(TESTSUITE_AT)
testsuite: atconfig package.m4 $(TESTS) $(TESTSUITE_AT)
autom4te -l autotest $(TESTSUITE_AT) -o $@
clean-local:
rm -rf *.log atconfig package.m4 $(TESTSUITE)
check-local: atconfig package.m4 $(TESTSUITE) $(TESTS)
$(SHELL) $(TESTSUITE) $(TESTSUITEFLAGS) $(SHELL) $(TESTSUITE) $(TESTSUITEFLAGS)
clean-local:
test ! -f '$(TESTSUITE)'|| $(SHELL) '$(TESTSUITE)' --clean
rm -rf $(CLEANFILES)
package.m4: Makefile
:;{ \
echo '# Signature of the current package.' && \
echo 'm4_define([AT_PACKAGE_NAME], [$(PACKAGE_NAME)])' && \
echo 'm4_define([AT_PACKAGE_TARNAME], [$(PACKAGE_TARNAME)])' && \
echo 'm4_define([AT_PACKAGE_VERSION], [$(PACKAGE_VERSION)])' && \
echo 'm4_define([AT_PACKAGE_STRING], [$(PACKAGE_STRING)])' && \
echo 'm4_define([AT_PACKAGE_BUGREPORT], [$(PACKAGE_BUGREPORT)])' && \
echo 'm4_define([AT_PACKAGE_URL], [$(PACKAGE_URL)])'; \
} > $@-t
mv $@-t $@
atconfig: $(top_builddir)/config.status
cd $(top_builddir) && ./config.status testsuite/$@
\ No newline at end of file
...@@ -2,8 +2,6 @@ ...@@ -2,8 +2,6 @@
[ -n "$3" ] && exit $3 [ -n "$3" ] && exit $3
echo "$1 run $2" > e.t
cd $1 cd $1
exec ./$2 exec ./$2
exit 1 exit 1
AT_SETUP([Basic tests])
AT_CHECK([at-test-launch.sh $abs_top_builddir/tests tests],[0],[ignore],[ignore])
AT_CLEANUP
AT_SETUP([Tests with conf])
AT_CHECK([at-test-launch.sh $abs_top_builddir/tests tests_with_conf.sh],[0],[ignore],[ignore])
AT_CLEANUP
# Common rules fot uniset testsuite
TESTSUITE_AT=testsuite.at
TESTSUITE=testsuite
EXTRA_DIR=atconfig package.m4 $(TESTSUITE) $(TESTSUITE_AT)
testsuite: atconfig package.m4 $(TESTSUITE_AT)
autom4te -l autotest $(TESTSUITE_AT) -o $@
CLEANFILES=*.log package.m4 $(TESTSUITE)
package.m4: Makefile
:;{ \
echo '# Signature of the current package.' && \
echo 'm4_define([AT_PACKAGE_NAME], [$(PACKAGE_NAME)])' && \
echo 'm4_define([AT_PACKAGE_TARNAME], [$(PACKAGE_TARNAME)])' && \
echo 'm4_define([AT_PACKAGE_VERSION], [$(PACKAGE_VERSION)])' && \
echo 'm4_define([AT_PACKAGE_STRING], [$(PACKAGE_STRING)])' && \
echo 'm4_define([AT_PACKAGE_BUGREPORT], [$(PACKAGE_BUGREPORT)])' && \
echo 'm4_define([AT_PACKAGE_URL], [$(PACKAGE_URL)])' && \
echo 'm4_define([AT_TEST_LAUNCH], [$(TESTSUITE_DIR)/at-test-launch.sh)])' && \
echo 'm4_define([AT_TOP_BUILDDIR], [$(top_builddir)))])' && \
echo 'm4_define([AT_TESTSUITE_DIR], [$(TESTSUITE_DIR))])'; \
} > $@-t
mv $@-t $@
atconfig: $(top_builddir)/config.status
cd $(top_builddir) && ./config.status $(abs_srcdir)/$@
...@@ -4,4 +4,6 @@ AT_COLOR_TESTS ...@@ -4,4 +4,6 @@ AT_COLOR_TESTS
AT_INIT([Uniset test suite]) AT_INIT([Uniset test suite])
m4_include(basic-tests.at) m4_include(../tests/tests.at)
m4_include(../extensions/tests/extensions-tests.at)
m4_include(../extensions/LogicProcessor/unit-tests/lproc-tests.at)
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment