X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/00375592f92f68c4ca3f44d8e839bcfd47adc4e1..18f42b94df62068a19258b96ac7f569d4d3ba400:/tests/test.bkl diff --git a/tests/test.bkl b/tests/test.bkl index 6b03777e68..42aaee6d14 100644 --- a/tests/test.bkl +++ b/tests/test.bkl @@ -2,44 +2,251 @@ <!-- $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"/> - <exe id="test" template="wx_test_console" + <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 - fileconf/fileconftest.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/htmllboxtest.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/ownerdrawncomboboxtest.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/virtlistctrltest.cpp + controls/windowtest.cpp + events/clone.cpp + events/propagation.cpp + events/keyboard.cpp + font/fonttest.cpp + image/image.cpp + image/rawbmp.cpp + html/htmlwindow.cpp + menu/accelentry.cpp + menu/menu.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 + xml/xrctest.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.">&2; \ + exit 1; \ + fi; \ + done; \ + exit 0 + +.PHONY: failtest + </fragment> + </makefile>