wxWidgets/tests/test.bkl
Vadim Zeitlin 232fdc630c Merge the new GUI tests from SOC2010_GUI_TEST branch.
Add a lot of tests for many wx GUI classes.

Add tests using the new wxUIActionSimulator class but disable them under OS X
as too many of them currently fail there.

Refactor the test suite to make organizing the existing tests and adding the
new ones easier.

Improve documentation using the information gathered while testing the
classes. Also update the documentation of the testing system itself.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65386 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-08-22 22:16:05 +00:00

246 lines
7.9 KiB
XML

<?xml version="1.0" ?>
<!-- $Id$ -->
<makefile>
<!--
The use of PCH is disabled for samples by default but we do want to use
them for the test as this dramatically speeds up its compilation.
-->
<set var="WX_ENABLE_PRECOMP_HEADERS">1</set>
<include file="../build/bakefiles/common_samples.bkl"/>
<template id="wx_test">
<cppflags>$(CPPUNIT_CFLAGS)</cppflags>
<ldflags>$(CPPUNIT_LIBS)</ldflags>
<if cond="WX_DISABLE_PRECOMP_HEADERS=='0'">
<if cond="FORMAT!='autoconf' and TOOLKIT=='MSW'">
<sources>dummy.cpp</sources>
<precomp-headers-gen>dummy.cpp</precomp-headers-gen>
</if>
<precomp-headers-header>testprec.h</precomp-headers-header>
<precomp-headers>on</precomp-headers>
<precomp-headers-file>testprec_$(id)</precomp-headers-file>
</if>
</template>
<exe id="test" template="wx_sample_console,wx_test"
template_append="wx_append_base">
<sources>
test.cpp
any/anytest.cpp
archive/archivetest.cpp
archive/ziptest.cpp
archive/tartest.cpp
arrays/arrays.cpp
base64/base64.cpp
cmdline/cmdlinetest.cpp
config/fileconf.cpp
config/regconf.cpp
datetime/datetimetest.cpp
events/evthandler.cpp
events/evtsource.cpp
events/stopwatch.cpp
events/timertest.cpp
exec/exec.cpp
file/dir.cpp
file/filefn.cpp
file/filetest.cpp
filekind/filekind.cpp
filename/filenametest.cpp
filesys/filesystest.cpp
fontmap/fontmaptest.cpp
formatconverter/formatconvertertest.cpp
fswatcher/fswatchertest.cpp
hashes/hashes.cpp
interactive/output.cpp
interactive/input.cpp
intl/intltest.cpp
lists/lists.cpp
log/logtest.cpp
longlong/longlongtest.cpp
mbconv/convautotest.cpp
mbconv/mbconvtest.cpp
misc/dynamiclib.cpp
misc/environ.cpp
misc/metatest.cpp
misc/misctests.cpp
misc/module.cpp
misc/pathlist.cpp
misc/typeinfotest.cpp
net/ipc.cpp
net/socket.cpp
regex/regextest.cpp
regex/wxregextest.cpp
scopeguard/scopeguardtest.cpp
strings/iostream.cpp
strings/strings.cpp
strings/stdstrings.cpp
strings/tokenizer.cpp
strings/unichar.cpp
strings/unicode.cpp
strings/vararg.cpp
strings/crt.cpp
strings/vsnprintf.cpp
streams/bstream.cpp
streams/datastreamtest.cpp
streams/ffilestream.cpp
streams/fileback.cpp
streams/filestream.cpp
streams/iostreams.cpp
streams/largefile.cpp
streams/memstream.cpp
streams/socketstream.cpp
streams/sstream.cpp
streams/stdstream.cpp
streams/tempfile.cpp
streams/textstreamtest.cpp
streams/zlibstream.cpp
textfile/textfiletest.cpp
thread/atomic.cpp
thread/misc.cpp
thread/queue.cpp
thread/tls.cpp
uris/ftp.cpp
uris/uris.cpp
uris/url.cpp
vectors/vectors.cpp
weakref/evtconnection.cpp
weakref/weakref.cpp
xlocale/xlocale.cpp
xml/xmltest.cpp
</sources>
<wx-lib>net</wx-lib>
<wx-lib>xml</wx-lib>
<wx-lib>base</wx-lib>
</exe>
<exe id="test_gui" template="wx_sample,wx_test"
template_append="wx_append"
cond="USE_GUI=='1'">
<!-- link against GUI libraries, but be a console app: -->
<app-type>console</app-type>
<sources>
asserthelper.cpp
test.cpp
testableframe.cpp
geometry/rect.cpp
geometry/size.cpp
geometry/point.cpp
graphics/bitmap.cpp
graphics/colour.cpp
graphics/ellipsization.cpp
graphics/measuring.cpp
config/config.cpp
controls/bitmapcomboboxtest.cpp
controls/bitmaptogglebuttontest.cpp
controls/bookctrlbasetest.cpp
controls/buttontest.cpp
controls/checkboxtest.cpp
controls/checklistboxtest.cpp
controls/choicebooktest.cpp
controls/choicetest.cpp
controls/comboboxtest.cpp
controls/frametest.cpp
controls/gaugetest.cpp
controls/gridtest.cpp
controls/headerctrltest.cpp
controls/hyperlinkctrltest.cpp
controls/itemcontainertest.cpp
controls/label.cpp
controls/listbasetest.cpp
controls/listbooktest.cpp
controls/listboxtest.cpp
controls/listctrltest.cpp
controls/listviewtest.cpp
controls/notebooktest.cpp
controls/pickerbasetest.cpp
controls/pickertest.cpp
controls/radioboxtest.cpp
controls/radiobuttontest.cpp
controls/rearrangelisttest.cpp
controls/richtextctrltest.cpp
controls/slidertest.cpp
controls/spinctrldbltest.cpp
controls/spinctrltest.cpp
controls/textctrltest.cpp
controls/textentrytest.cpp
controls/togglebuttontest.cpp
controls/toolbooktest.cpp
controls/treebooktest.cpp
controls/treectrltest.cpp
controls/windowtest.cpp
events/clone.cpp
events/propagation.cpp
font/fonttest.cpp
image/image.cpp
image/rawbmp.cpp
html/htmlwindow.cpp
misc/guifuncs.cpp
misc/selstoretest.cpp
misc/garbage.cpp
misc/settings.cpp
<!--
This one is intentionally duplicated here (it is also part of
non-GUI test) as sockets behave differently in console and GUI
applications.
-->
net/socket.cpp
sizers/boxsizer.cpp
window/clientsize.cpp
window/setsize.cpp
</sources>
<wx-lib>richtext</wx-lib>
<wx-lib>media</wx-lib>
<wx-lib>xrc</wx-lib>
<wx-lib>xml</wx-lib>
<wx-lib>adv</wx-lib>
<wx-lib>html</wx-lib>
<wx-lib>core</wx-lib>
<wx-lib>net</wx-lib>
<wx-lib>base</wx-lib>
</exe>
<wx-data id="data">
<files>testdata.fc</files>
<!-- test data for image/image.cpp test unit: -->
<files>horse.ani horse.bmp horse.cur horse.gif horse.ico horse.jpg
horse.pcx horse.png horse.pnm horse.tga horse.tif horse.xpm</files>
</wx-data>
<template id="catalog">
<dstdir>$(BUILDDIR)/intl/$(id)</dstdir>
<srcdir>$(SRCDIR)/intl/$(id)</srcdir>
<files>internat.po internat.mo</files>
</template>
<wx-data id="fr" template="catalog"/>
<fragment format="autoconf">
# notice the ugly hack with using CXXWARNINGS: we can't use CPPFLAGS as
# currently the value in the makefile would be ignored if we did, but
# warnings don't matter when we expect compilation to fail anyhow so we can
# use this variable to enable the compilation of code which is supposed to
# fail
failtest:
@$(RM) test_evthandler.o
@for d in GLOBAL STATIC METHOD FUNCTOR NO_HANDLER DERIVED WRONG_CLASS; do \
if $(MAKE) CXXWARNINGS=-DTEST_INVALID_BIND_$$d test_evthandler.o 2>/dev/null; then \
echo "*** Compilation with TEST_INVALID_BIND_$$d unexpectedly succeeded.">&amp;2; \
exit 1; \
fi; \
done; \
exit 0
.PHONY: failtest
</fragment>
</makefile>