Document and test behaviour of wxRegion methods when it is invalid.
[wxWidgets.git] / tests / test.bkl
1 <?xml version="1.0" ?>
2 <!-- $Id$ -->
3
4 <makefile>
5     <!--
6         The use of PCH is disabled for samples by default but we do want to use
7         them for the test as this dramatically speeds up its compilation.
8      -->
9     <set var="WX_ENABLE_PRECOMP_HEADERS">1</set>
10
11     <include file="../build/bakefiles/common_samples.bkl"/>
12
13     <template id="wx_test">
14         <cppflags>$(CPPUNIT_CFLAGS)</cppflags>
15         <ldflags>$(CPPUNIT_LIBS)</ldflags>
16
17         <if cond="WX_DISABLE_PRECOMP_HEADERS=='0'">
18             <if cond="FORMAT!='autoconf' and TOOLKIT=='MSW'">
19                 <sources>dummy.cpp</sources>
20                 <precomp-headers-gen>dummy.cpp</precomp-headers-gen>
21             </if>
22             <precomp-headers-header>testprec.h</precomp-headers-header>
23             <precomp-headers>on</precomp-headers>
24             <precomp-headers-file>testprec_$(id)</precomp-headers-file>
25         </if>
26     </template>
27
28     <exe id="test" template="wx_sample_console,wx_test"
29                    template_append="wx_append_base">
30         <sources>
31             test.cpp
32             any/anytest.cpp
33             archive/archivetest.cpp
34             archive/ziptest.cpp
35             archive/tartest.cpp
36             arrays/arrays.cpp
37             base64/base64.cpp
38             cmdline/cmdlinetest.cpp
39             config/fileconf.cpp
40             config/regconf.cpp
41             datetime/datetimetest.cpp
42             events/evthandler.cpp
43             events/evtsource.cpp
44             events/stopwatch.cpp
45             events/timertest.cpp
46             exec/exec.cpp
47             file/dir.cpp
48             file/filefn.cpp
49             file/filetest.cpp
50             filekind/filekind.cpp
51             filename/filenametest.cpp
52             filesys/filesystest.cpp
53             fontmap/fontmaptest.cpp
54             formatconverter/formatconvertertest.cpp
55             fswatcher/fswatchertest.cpp
56             hashes/hashes.cpp
57             interactive/output.cpp
58             interactive/input.cpp
59             intl/intltest.cpp
60             lists/lists.cpp
61             log/logtest.cpp
62             longlong/longlongtest.cpp
63             mbconv/convautotest.cpp
64             mbconv/mbconvtest.cpp
65             misc/dynamiclib.cpp
66             misc/environ.cpp
67             misc/metatest.cpp
68             misc/misctests.cpp
69             misc/module.cpp
70             misc/pathlist.cpp
71             misc/typeinfotest.cpp
72             net/ipc.cpp
73             net/socket.cpp
74             regex/regextest.cpp
75             regex/wxregextest.cpp
76             scopeguard/scopeguardtest.cpp
77             strings/iostream.cpp
78             strings/numformatter.cpp
79             strings/strings.cpp
80             strings/stdstrings.cpp
81             strings/tokenizer.cpp
82             strings/unichar.cpp
83             strings/unicode.cpp
84             strings/vararg.cpp
85             strings/crt.cpp
86             strings/vsnprintf.cpp
87             streams/bstream.cpp
88             streams/datastreamtest.cpp
89             streams/ffilestream.cpp
90             streams/fileback.cpp
91             streams/filestream.cpp
92             streams/iostreams.cpp
93             streams/largefile.cpp
94             streams/memstream.cpp
95             streams/socketstream.cpp
96             streams/sstream.cpp
97             streams/stdstream.cpp
98             streams/tempfile.cpp
99             streams/textstreamtest.cpp
100             streams/zlibstream.cpp
101             textfile/textfiletest.cpp
102             thread/atomic.cpp
103             thread/misc.cpp
104             thread/queue.cpp
105             thread/tls.cpp
106             uris/ftp.cpp
107             uris/uris.cpp
108             uris/url.cpp
109             vectors/vectors.cpp
110             weakref/evtconnection.cpp
111             weakref/weakref.cpp
112             xlocale/xlocale.cpp
113             xml/xmltest.cpp
114         </sources>
115         <wx-lib>net</wx-lib>
116         <wx-lib>xml</wx-lib>
117         <wx-lib>base</wx-lib>
118     </exe>
119
120
121     <exe id="test_gui" template="wx_sample,wx_test"
122                        template_append="wx_append"
123          cond="USE_GUI=='1'">
124
125         <!-- link against GUI libraries, but be a console app: -->
126         <app-type>console</app-type>
127
128         <sources>
129             asserthelper.cpp
130             test.cpp
131             testableframe.cpp
132             geometry/rect.cpp
133             geometry/size.cpp
134             geometry/point.cpp
135             geometry/region.cpp
136             graphics/bitmap.cpp
137             graphics/colour.cpp
138             graphics/ellipsization.cpp
139             graphics/measuring.cpp
140             graphics/affinematrix.cpp
141             config/config.cpp
142             controls/bitmapcomboboxtest.cpp
143             controls/bitmaptogglebuttontest.cpp
144             controls/bookctrlbasetest.cpp
145             controls/buttontest.cpp
146             controls/checkboxtest.cpp
147             controls/checklistboxtest.cpp
148             controls/choicebooktest.cpp
149             controls/choicetest.cpp
150             controls/comboboxtest.cpp
151             controls/dataviewctrltest.cpp
152             controls/datepickerctrltest.cpp
153             controls/frametest.cpp
154             controls/gaugetest.cpp
155             controls/gridtest.cpp
156             controls/headerctrltest.cpp
157             controls/htmllboxtest.cpp
158             controls/hyperlinkctrltest.cpp
159             controls/itemcontainertest.cpp
160             controls/label.cpp
161             controls/listbasetest.cpp
162             controls/listbooktest.cpp
163             controls/listboxtest.cpp
164             controls/listctrltest.cpp
165             controls/listviewtest.cpp
166             controls/markuptest.cpp
167             controls/notebooktest.cpp
168             controls/ownerdrawncomboboxtest.cpp
169             controls/pickerbasetest.cpp
170             controls/pickertest.cpp
171             controls/radioboxtest.cpp
172             controls/radiobuttontest.cpp
173             controls/rearrangelisttest.cpp
174             controls/richtextctrltest.cpp
175             controls/slidertest.cpp
176             controls/spinctrldbltest.cpp
177             controls/spinctrltest.cpp
178             controls/textctrltest.cpp
179             controls/textentrytest.cpp
180             controls/togglebuttontest.cpp
181             controls/toolbooktest.cpp
182             controls/treebooktest.cpp
183             controls/treectrltest.cpp
184             controls/treelistctrltest.cpp
185             controls/virtlistctrltest.cpp
186             controls/webtest.cpp
187             controls/windowtest.cpp
188             events/clone.cpp
189             events/propagation.cpp
190             events/keyboard.cpp
191             font/fonttest.cpp
192             image/image.cpp
193             image/rawbmp.cpp
194             html/htmlparser.cpp
195             html/htmlwindow.cpp
196             menu/accelentry.cpp
197             menu/menu.cpp
198             misc/guifuncs.cpp
199             misc/selstoretest.cpp
200             misc/garbage.cpp
201             misc/settings.cpp
202             <!--
203                 This one is intentionally duplicated here (it is also part of
204                 non-GUI test) as sockets behave differently in console and GUI
205                 applications.
206              -->
207             net/socket.cpp
208             sizers/boxsizer.cpp
209             sizers/wrapsizer.cpp
210             toplevel/toplevel.cpp
211             validators/valnum.cpp
212             window/clientsize.cpp
213             window/setsize.cpp
214             xml/xrctest.cpp
215         </sources>
216         <wx-lib>webview</wx-lib>
217         <wx-lib>richtext</wx-lib>
218         <wx-lib>media</wx-lib>
219         <wx-lib>xrc</wx-lib>
220         <wx-lib>xml</wx-lib>
221         <wx-lib>adv</wx-lib>
222         <wx-lib>html</wx-lib>
223         <wx-lib>core</wx-lib>
224         <wx-lib>net</wx-lib>
225         <wx-lib>base</wx-lib>
226     </exe>
227
228
229     <wx-data id="data">
230         <files>testdata.fc</files>
231         
232         <!-- test data for image/image.cpp test unit: -->
233         <files>horse.ani  horse.bmp  horse.cur  horse.gif  horse.ico  horse.jpg  
234                horse.pcx  horse.png  horse.pnm  horse.tga  horse.tif  horse.xpm</files>
235     </wx-data>
236
237     <wx-data id="data-images">
238         <srcdir>$(SRCDIR)/image</srcdir>
239         <dstdir>image</dstdir>
240         <files>horse_grey.bmp  horse_grey_flipped.bmp
241                horse_rle4.bmp  horse_rle4_flipped.bmp
242                horse_rle8.bmp  horse_rle8_flipped.bmp</files>
243     </wx-data>
244
245     <template id="catalog">
246         <dstdir>$(BUILDDIR)/intl/$(id)</dstdir>
247         <srcdir>$(SRCDIR)/intl/$(id)</srcdir>
248         <files>internat.po internat.mo</files>
249     </template>
250
251     <wx-data id="fr" template="catalog"/>
252
253
254     <fragment format="autoconf">
255 # notice the ugly hack with using CXXWARNINGS: we can't use CPPFLAGS as
256 # currently the value in the makefile would be ignored if we did, but
257 # warnings don't matter when we expect compilation to fail anyhow so we can
258 # use this variable to enable the compilation of code which is supposed to
259 # fail
260 failtest: failtest_combobox failtest_evthandler
261
262 failtest_combobox:
263         @$(RM) test_gui_comboboxtest.o
264         if $(MAKE) CXXWARNINGS=-DTEST_INVALID_COMBOBOX_ISEMPTY test_gui_comboboxtest.o 2>/dev/null; then \
265             echo "*** Compilation with TEST_INVALID_COMBOBOX_ISEMPTY unexpectedly succeeded.">&amp;2; \
266             exit 1; \
267         fi; \
268         exit 0
269
270 failtest_evthandler:
271         @$(RM) test_evthandler.o
272         @for d in GLOBAL STATIC METHOD FUNCTOR NO_HANDLER DERIVED WRONG_CLASS; do \
273             if $(MAKE) CXXWARNINGS=-DTEST_INVALID_BIND_$$d test_evthandler.o 2>/dev/null; then \
274                 echo "*** Compilation with TEST_INVALID_BIND_$$d unexpectedly succeeded.">&amp;2; \
275                 exit 1; \
276             fi; \
277         done; \
278         exit 0
279
280 .PHONY: failtest
281     </fragment>
282
283 </makefile>