Change :block command on GtkTreeView for uniformity
[pipeglade.git] / pipegladetest.sh
blob3b723edd32938dc200096d9b21345f63be8ce8b6
1 #! /usr/bin/env bash
3 # Pipeglade tests; they should be invoked in the build directory.
5 # Usage: ./pipegladetset.sh
6 # Usage: ./pipegladetset.sh interactive
7 # Usage: ./pipegladetset.sh automatic
9 # Failure of a test can cause failure of one or more subsequent tests.
11 INTERACTIVE=true
12 AUTOMATIC=true
13 if test ${1-X} == interactive; then unset -v AUTOMATIC ; fi
14 if test ${1-X} == automatic; then unset -v INTERACTIVE ; fi
16 export LC_ALL=C
17 export NO_AT_BRIDGE=1
18 FIN=to-g.fifo
19 FOUT=from-g.fifo
20 FERR=err.fifo
21 LOG=test.log
22 ERR_FILE=err.txt
23 BAD_FIFO=bad_fifo
24 PID_FILE=pid
25 OUT_FILE=out.txt
26 DIR=test_dir
27 EPS_FILE=test.eps
28 EPSF_FILE=test.epsf
29 PDF_FILE=test.pdf
30 PS_FILE=test.ps
31 SVG_FILE=test.svg
32 FILE1=saved1.txt
33 FILE2=saved2.txt
34 FILE3=saved3.txt
35 FILE4=saved4.txt
36 FILE5=saved5.txt
37 FILE6=saved6.txt
38 BIG_INPUT=big.txt
39 BIG_INPUT2=big2.txt
40 BIG_INPUT_ERR=err.txt
41 WEIRD_PATHS=$(awk 'BEGIN{ for (i=0x01; i<= 0xff; i++) if (i != 0x2a && i != 0x2f && i != 0x3f && i != 0x5c) printf "'$DIR'/(%c) ", i }')
42 BIG_STRING=$(for i in {1..100}; do echo -n "abcdefghijklmnopqrstuvwxyz($i)ABCDEFGHIJKLMNOPQRSTUVWXYZ0{${RANDOM}}123456789"; done)
43 BIG_NUM=$(for i in {1..100}; do echo -n "$RANDOM"; done)
44 rm -rf $FIN $FOUT $FERR $LOG $ERR_FILE $BAD_FIFO $PID_FILE $OUT_FILE \
45 $EPS_FILE $EPSF_FILE $PDF_FILE $PS_FILE $SVG_FILE \
46 $FILE1 $FILE2 $FILE3 $FILE4 $FILE5 $FILE6 $BIG_INPUT $BIG_INPUT2 $BIG_INPUT_ERR $DIR
48 if stat -f "%0p" 2>/dev/null; then
49 STAT_CMD='stat -f "%0p"'
50 else
51 # probably GNU stat
52 STAT_CMD='stat -c "%a"'
55 # colored messages: bright green
56 OK=$'\E[32;1mOK\E[0m'
57 # bright red
58 FAIL=$'\E[31;1mFAIL\E[0m'
59 EXPECTED=$'\E[31;1mEXPECTED\E[0m'
60 # yellow
61 CALL=$'\E[33mCALL\E[0m'
62 SEND=$'\E[33mSEND\E[0m'
64 TESTS=0
65 FAILS=0
66 OKS=0
68 \f() {
69 echo "################################################################################"
72 count_fail() {
73 (( TESTS+=1 ))
74 (( FAILS+=1 ))
77 count_ok() {
78 (( TESTS+=1 ))
79 (( OKS+=1 ))
82 check_rm() {
83 i=0
84 while test -e $1 && (( i<50 )); do
85 sleep .1
86 (( i+=1 ))
87 done
88 if test -e $1; then
89 count_fail
90 echo " $FAIL $1 should be deleted"
91 rm -f $1
92 else
93 count_ok
94 echo " $OK $1 deleted"
98 check_cmd() {
99 i=0
100 while ! eval "$1" && (( i<50 )); do
101 sleep .1
102 (( i+=1 ))
103 done
104 if eval "$1"; then
105 count_ok
106 echo " $OK $1"
107 else
108 count_fail
109 echo " $FAIL $1"
115 echo "
116 # BATCH ONE
118 # Situations where pipeglade should exit immediately. These tests
119 # should run automatically
120 ######################################################################
123 # check_call command expected_status expected_stderr expected_stdout
124 check_call() {
125 r=$2
126 e=$3
127 o=$4
128 output=$($1 2>tmperr.txt)
129 retval=$?
130 error=$(<tmperr.txt)
131 rm tmperr.txt
132 echo "$CALL $1"
133 if test "$output" = "" -a "$o" = "" || (echo "$output" | grep -Fqe "$o"); then
134 count_ok
135 echo " $OK STDOUT $output"
136 else
137 count_fail
138 echo " $FAIL STDOUT $output"
139 echo " $EXPECTED $o"
141 if test "$error" = "" -a "$e" = "" || test "$retval" -eq "$r" && (echo "$error" | grep -Fqe "$e"); then
142 count_ok
143 echo " $OK EXIT/STDERR $retval $error"
144 else
145 count_fail
146 echo " $FAIL EXIT/STDERR $retval $error"
147 echo " $EXPECTED $r $e"
152 if test $AUTOMATIC; then
154 check_call "./pipeglade -u nonexistent.ui" 1 \
155 "nonexistent.ui" ""
156 check_call "./pipeglade -u bad_window.ui" 1 \
157 "no toplevel window with id 'main'" ""
158 check_call "./pipeglade -u www-template/404.html" 1 \
159 "html" ""
160 check_call "./pipeglade -u README" 1 \
161 "Document must begin with an element" ""
162 check_call "./pipeglade -e x" 1 \
163 "x is not a valid XEmbed socket id" ""
164 check_call "./pipeglade -ex" 1 \
165 "x is not a valid XEmbed socket id" ""
166 check_call "./pipeglade -e -77" 1 \
167 "-77 is not a valid XEmbed socket id" ""
168 check_call "./pipeglade -e 77x" 1 \
169 "77x is not a valid XEmbed socket id" ""
170 check_call "./pipeglade -e +77" 1 \
171 "+77 is not a valid XEmbed socket id" ""
172 check_call "./pipeglade -e 999999999999999999999999999999" 1 \
173 "999999999999999999999999999999 is not a valid XEmbed socket id" ""
174 check_call "./pipeglade -e 99999999999999999" 1 \
175 "unable to embed into XEmbed socket 99999999999999999" ""
176 touch $BAD_FIFO
177 check_call "./pipeglade -i $BAD_FIFO" 1 \
178 "using pre-existing fifo" ""
179 check_call "./pipeglade -o $BAD_FIFO" 1 \
180 "using pre-existing fifo" ""
181 rm $BAD_FIFO
182 check_call "./pipeglade -b" 1 \
183 "parameter -b requires both -i and -o"
184 check_call "./pipeglade -b -i $FIN" 1 \
185 "parameter -b requires both -i and -o"
186 check_call "./pipeglade -b -i $FOUT" 1 \
187 "parameter -b requires both -i and -o"
188 rm $FIN $FOUT
189 check_call "./pipeglade -h" 0 \
190 "" "usage: pipeglade [[-i in-fifo] [-o out-fifo] [-b] [-u glade-file.ui] [-e xid]
191 [-l log-file] [-O err-file] [--display X-server]] | [-h|-G|-V]"
192 check_call "./pipeglade -G" 0 \
193 "" "GTK+ v"
194 check_call "./pipeglade -G" 0 \
195 "" "cairo v"
196 check_call "./pipeglade -V" 0 \
197 "" "."
198 check_call "./pipeglade -X" 1 \
199 "option" ""
200 check_call "./pipeglade -e" 1 \
201 "argument" ""
202 check_call "./pipeglade -u" 1 \
203 "argument" ""
204 check_call "./pipeglade -i" 1 \
205 "argument" ""
206 check_call "./pipeglade -o" 1 \
207 "argument" ""
208 mkdir -p $DIR
209 check_call "./pipeglade -O" 1 \
210 "argument" ""
211 check_call "./pipeglade -O $DIR" 1 \
212 "" "redirecting stderr to"
213 check_call "./pipeglade -l $DIR" 1 \
214 "opening log file" ""
215 check_call "./pipeglade -l" 1 \
216 "argument" ""
217 # assuming we can't adjust permissions of /dev/null:
218 check_call "./pipeglade -O /dev/null" 1 \
219 "" "setting permissions of /dev/null:"
220 check_call "./pipeglade -l /dev/null" 1 \
221 "setting permissions of /dev/null:" ""
222 check_call "./pipeglade yyy" 1 \
223 "illegal parameter 'yyy'" ""
224 check_call "./pipeglade --display nnn" 1 \
225 "nnn"
226 check_rm $FIN
227 check_rm $FOUT
232 #exit
234 echo "
235 # BATCH TWO
237 # Error handling tests---bogus actions leading to appropriate error
238 # messages. Most of these tests should run automatically.
239 ######################################################################
242 mkfifo $FERR
244 # check_error command expected_stderr
245 check_error() {
246 echo "$SEND ${1:0:300}"
247 echo -e "$1" >$FIN
248 while read r <$FERR; do
249 # ignore irrelevant GTK warnings
250 if test "$r" != "" && ! grep -qe "WARNING"<<< "$r"; then
251 break;
253 done
254 if grep -qFe "${2:0:300}" <<< "${r:0:300}"; then
255 count_ok
256 echo " $OK ${r:0:300}"
257 else
258 count_fail
259 echo " $FAIL ${r:0:300}"
260 echo " $EXPECTED ${2:0:300}"
264 read r 2< $FERR &
265 ./pipeglade -i $FIN 2> $FERR &
266 # wait for $FIN to appear
267 while test ! \( -e $FIN \); do :; done
269 if test $AUTOMATIC; then
270 # Non-existent id
271 check_error "nnn" \
272 "ignoring command \"nnn\""
273 check_error "BIG_STRING" \
274 "ignoring command \"BIG_STRING\""
275 check_error "nnn:set_text FFFF" \
276 "ignoring command \"nnn:set_text FFFF\""
277 check_error "nnn:set_text $BIG_STRING" \
278 "ignoring command \"nnn:set_text $BIG_STRING\""
279 check_error "nnn:set_tooltip_text FFFF" \
280 "ignoring command \"nnn:set_tooltip_text FFFF\""
281 check_error "nnn:set_tooltip_text $BIG_STRING" \
282 "ignoring command \"nnn:set_tooltip_text $BIG_STRING\""
283 check_error "nnn:set_sensitive 0" \
284 "ignoring command \"nnn:set_sensitive 0\""
285 check_error "nnn:set_sensitive 1" \
286 "ignoring command \"nnn:set_sensitive 1\""
287 check_error "nnn:set_visible 0" \
288 "ignoring command \"nnn:set_visible 0\""
289 check_error "nnn:set_visible 1" \
290 "ignoring command \"nnn:set_visible 1\""
291 check_error "nnn:grab_focus" \
292 "ignoring command \"nnn:grab_focus\""
293 check_error "nnn:set_size_request 100 100" \
294 "ignoring command \"nnn:set_size_request 100 100\""
295 check_error "nnn:set_size_request $BIG_NUM $BIG_NUM" \
296 "ignoring command \"nnn:set_size_request $BIG_NUM $BIG_NUM\""
297 check_error "nnn:style font:Bold 11" \
298 "ignoring command \"nnn:style font:Bold 11\""
299 check_error "nnn:force" \
300 "ignoring command \"nnn:force\""
301 check_error "nnn:block 1" \
302 "ignoring command \"nnn:block 1\""
303 # Illegal id
304 check_error "+:main_quit" \
305 "ignoring command \"+:main_quit"
306 check_error "=:main_quit" \
307 "ignoring command \"=:main_quit"
308 check_error "|:main_quit" \
309 "ignoring command \"|:main_quit"
310 # Wrong number or kind of arguments for generic actions
311 check_error "button1:set_sensitive" \
312 "ignoring GtkButton command \"button1:set_sensitive\""
313 check_error "button1:set_sensitive 2" \
314 "ignoring GtkButton command \"button1:set_sensitive 2\""
315 check_error "button1:set_sensitive $BIG_NUM" \
316 "ignoring GtkButton command \"button1:set_sensitive $BIG_NUM\""
317 check_error "button1:set_sensitive nnn" \
318 "ignoring GtkButton command \"button1:set_sensitive nnn\""
319 check_error "button1:set_sensitive 0 1" \
320 "ignoring GtkButton command \"button1:set_sensitive 0 1\""
321 check_error "button1:set_visible" \
322 "ignoring GtkButton command \"button1:set_visible\""
323 check_error "button1:set_visible 2" \
324 "ignoring GtkButton command \"button1:set_visible 2\""
325 check_error "button1:set_visible $BIG_NUM" \
326 "ignoring GtkButton command \"button1:set_visible $BIG_NUM\""
327 check_error "button1:set_visible nnn" \
328 "ignoring GtkButton command \"button1:set_visible nnn\""
329 check_error "button1:set_visible 0 1" \
330 "ignoring GtkButton command \"button1:set_visible 0 1\""
331 check_error "button1:grab_focus 2" \
332 "ignoring GtkButton command \"button1:grab_focus 2\""
333 check_error "button1:set_size_request 100" \
334 "ignoring GtkButton command \"button1:set_size_request 100\""
335 check_error "button1:set_size_request 100 100 100" \
336 "ignoring GtkButton command \"button1:set_size_request 100 100 100\""
337 check_error "button1:force 2" \
338 "ignoring GtkButton command \"button1:force 2\""
339 check_error "_:main_quit 2" \
340 "ignoring command \"_:main_quit 2\""
341 check_error "button1:block 2" \
342 "ignoring GtkButton command \"button1:block 2\""
343 check_error "button1:block 0 0" \
344 "ignoring GtkButton command \"button1:block 0 0\""
345 check_error "button1:snapshot" \
346 "ignoring GtkButton command \"button1:snapshot\""
347 check_error "button1:snapshot " \
348 "ignoring GtkButton command \"button1:snapshot \""
349 # Widget that shouldn't fire callbacks
350 check_error "label1:force" \
351 "ignoring GtkLabel command \"label1:force\""
352 # Widget that can't grab focus
353 check_error "label1:grab_focus" \
354 "ignoring GtkLabel command \"label1:grab_focus\""
355 # load file
356 check_error "_:load" \
357 "ignoring command \"_:load\""
358 check_error "_:load " \
359 "ignoring command \"_:load \""
360 check_error "_:load nonexistent.txt" \
361 "ignoring command \"_:load nonexistent.txt\""
362 for i in $WEIRD_PATHS; do
363 check_error "_:load nonexistent/${i}QqQ" \
364 "ignoring command \"_:load nonexistent/${i}QqQ\""
365 done
366 # _:load junk
367 mkdir -p $DIR
368 cat >$DIR/$FILE1 <<< "blah"
369 check_error "_:load $DIR/$FILE1" \
370 "ignoring command \"blah\""
371 for i in $WEIRD_PATHS; do
372 cat >$i <<< "blah"
373 check_error "_:load $i" \
374 "ignoring command \"blah\""
375 done
376 # recursive :load
377 cat >$DIR/$FILE1 <<< "_:load $DIR/$FILE1"
378 check_error "_:load $DIR/$FILE1" \
379 "ignoring command \"_:load $DIR/$FILE1\""
380 for i in $WEIRD_PATHS; do
381 cat >$i <<< "_:load $i"
382 check_error "_:load $i" \
383 "ignoring command \"_:load $i\""
384 done
385 cat >$DIR/$FILE1 <<< "_:load $DIR/$FILE2"
386 cat >$DIR/$FILE2 <<< "_:load $DIR/$FILE1"
387 check_error "_:load $DIR/$FILE1" \
388 "ignoring command \"_:load $DIR/$FILE1\""
389 cat >$DIR/$FILE1 <<< "_:load $DIR/$FILE2"
390 cat >$DIR/$FILE2 <<< "_:blah"
391 check_error "_:load $DIR/$FILE1" \
392 "ignoring command \"_:blah\""
393 rm -rf $DIR
394 # GtkWindow
395 check_error "main:nnn" \
396 "ignoring GtkWindow command \"main:nnn\""
397 check_error "main:move" \
398 "ignoring GtkWindow command \"main:move\""
399 check_error "main:move " \
400 "ignoring GtkWindow command \"main:move \""
401 check_error "main:move 700" \
402 "ignoring GtkWindow command \"main:move 700\""
403 check_error "main:move 700 nnn" \
404 "ignoring GtkWindow command \"main:move 700 nnn\""
405 check_error "main:move $BIG_NUM $BIG_STRING" \
406 "ignoring GtkWindow command \"main:move $BIG_NUM $BIG_STRING\""
407 check_error "main:move 700 700 700" \
408 "ignoring GtkWindow command \"main:move 700 700 700\""
409 check_error "main:resize 700" \
410 "ignoring GtkWindow command \"main:resize 700\""
411 check_error "main:resize 700 nnn" \
412 "ignoring GtkWindow command \"main:resize 700 nnn\""
413 check_error "main:resize 700 700 700" \
414 "ignoring GtkWindow command \"main:resize 700 700 700\""
415 check_error "main:fullscreen 1" \
416 "ignoring GtkWindow command \"main:fullscreen 1\""
417 check_error "main:unfullscreen 1" \
418 "ignoring GtkWindow command \"main:unfullscreen 1\""
419 # GtkLabel
420 check_error "label1:nnn" \
421 "ignoring GtkLabel command \"label1:nnn\""
422 # GtkImage
423 check_error "image1:nnn" \
424 "ignoring GtkImage command \"image1:nnn\""
425 # GtkNotebook
426 check_error "notebook1:nnn" \
427 "ignoring GtkNotebook command \"notebook1:nnn\""
428 check_error "notebook1:set_current_page" \
429 "ignoring GtkNotebook command \"notebook1:set_current_page\""
430 check_error "notebook1:set_current_page " \
431 "ignoring GtkNotebook command \"notebook1:set_current_page \""
432 check_error "notebook1:set_current_page nnn" \
433 "ignoring GtkNotebook command \"notebook1:set_current_page nnn\""
434 check_error "notebook1:set_current_page -1" \
435 "ignoring GtkNotebook command \"notebook1:set_current_page -1\""
436 check_error "notebook1:set_current_page $BIG_NUM" \
437 "ignoring GtkNotebook command \"notebook1:set_current_page $BIG_NUM\""
438 check_error "notebook1:set_current_page 1 1" \
439 "ignoring GtkNotebook command \"notebook1:set_current_page 1 1\""
440 # GtkExpander
441 check_error "expander1:nnn" \
442 "ignoring GtkExpander command \"expander1:nnn\""
443 check_error "expander1:set_expanded" \
444 "ignoring GtkExpander command \"expander1:set_expanded\""
445 check_error "expander1:set_expanded 3" \
446 "ignoring GtkExpander command \"expander1:set_expanded 3\""
447 check_error "expander1:set_expanded $BIG_NUM" \
448 "ignoring GtkExpander command \"expander1:set_expanded $BIG_NUM\""
449 check_error "expander1:set_expanded 0 1" \
450 "ignoring GtkExpander command \"expander1:set_expanded 0 1\""
451 # GtkTextView
452 check_error "textview1:nnn" \
453 "ignoring GtkTextView command \"textview1:nnn\""
454 check_error "textview1:save" \
455 "ignoring GtkTextView command \"textview1:save\""
456 check_error "textview1:delete nnn" \
457 "ignoring GtkTextView command \"textview1:delete nnn\""
458 check_error "textview1:place_cursor" \
459 "ignoring GtkTextView command \"textview1:place_cursor\""
460 check_error "textview1:place_cursor " \
461 "ignoring GtkTextView command \"textview1:place_cursor \""
462 check_error "textview1:place_cursor nnn" \
463 "ignoring GtkTextView command \"textview1:place_cursor nnn\""
464 check_error "textview1:place_cursor 1 1" \
465 "ignoring GtkTextView command \"textview1:place_cursor 1 1\""
466 check_error "textview1:place_cursor end 1" \
467 "ignoring GtkTextView command \"textview1:place_cursor end 1\""
468 check_error "textview1:place_cursor_at_line" \
469 "ignoring GtkTextView command \"textview1:place_cursor_at_line\""
470 check_error "textview1:place_cursor_at_line " \
471 "ignoring GtkTextView command \"textview1:place_cursor_at_line \""
472 check_error "textview1:place_cursor_at_line nnn" \
473 "ignoring GtkTextView command \"textview1:place_cursor_at_line nnn\""
474 check_error "textview1:place_cursor_at_line 1 1" \
475 "ignoring GtkTextView command \"textview1:place_cursor_at_line 1 1\""
476 check_error "textview1:scroll_to_cursor nnn" \
477 "ignoring GtkTextView command \"textview1:scroll_to_cursor nnn\""
478 mkdir $DIR; chmod a-w $DIR
479 check_error "textview1:save $DIR/$FILE1" \
480 "ignoring GtkTextView command \"textview1:save $DIR/$FILE1\""
481 check_error "textview1:save nonexistent/$FILE1" \
482 "ignoring GtkTextView command \"textview1:save nonexistent/$FILE1\""
483 for i in $WEIRD_PATHS; do
484 check_error "textview1:save nonexistent/$i" \
485 "ignoring GtkTextView command \"textview1:save nonexistent/$i\""
486 done
488 rm -rf $DIR
489 # GtkButton
490 check_error "button1:nnn" \
491 "ignoring GtkButton command \"button1:nnn\""
492 # GtkSwitch
493 check_error "switch1:nnn" \
494 "ignoring GtkSwitch command \"switch1:nnn\""
495 check_error "switch1:set_active" \
496 "ignoring GtkSwitch command \"switch1:set_active\""
497 check_error "switch1:set_active " \
498 "ignoring GtkSwitch command \"switch1:set_active \""
499 check_error "switch1:set_active 2" \
500 "ignoring GtkSwitch command \"switch1:set_active 2\""
501 check_error "switch1:set_active $BIG_NUM" \
502 "ignoring GtkSwitch command \"switch1:set_active $BIG_NUM\""
503 check_error "switch1:set_active 0 1" \
504 "ignoring GtkSwitch command \"switch1:set_active 0 1\""
505 # GtkToggleButton
506 check_error "togglebutton1:nnn" \
507 "ignoring GtkToggleButton command \"togglebutton1:nnn\""
508 check_error "togglebutton1:set_active" \
509 "ignoring GtkToggleButton command \"togglebutton1:set_active\""
510 check_error "togglebutton1:set_active " \
511 "ignoring GtkToggleButton command \"togglebutton1:set_active \""
512 check_error "togglebutton1:set_active 2" \
513 "ignoring GtkToggleButton command \"togglebutton1:set_active 2\""
514 check_error "togglebutton1:set_active $BIG_NUM" \
515 "ignoring GtkToggleButton command \"togglebutton1:set_active $BIG_NUM\""
516 check_error "togglebutton1:set_active 1 0" \
517 "ignoring GtkToggleButton command \"togglebutton1:set_active 1 0\""
518 # GtkCheckButton
519 check_error "checkbutton1:nnn" \
520 "ignoring GtkCheckButton command \"checkbutton1:nnn\""
521 check_error "checkbutton1:set_active" \
522 "ignoring GtkCheckButton command \"checkbutton1:set_active\""
523 check_error "checkbutton1:set_active " \
524 "ignoring GtkCheckButton command \"checkbutton1:set_active \""
525 check_error "checkbutton1:set_active 2" \
526 "ignoring GtkCheckButton command \"checkbutton1:set_active 2\""
527 check_error "checkbutton1:set_active $BIG_NUM" \
528 "ignoring GtkCheckButton command \"checkbutton1:set_active $BIG_NUM\""
529 check_error "checkbutton1:set_active 1 1" \
530 "ignoring GtkCheckButton command \"checkbutton1:set_active 1 1\""
531 # GtkRadioButton
532 check_error "radiobutton1:nnn" \
533 "ignoring GtkRadioButton command \"radiobutton1:nnn\""
534 check_error "radiobutton1:set_active" \
535 "ignoring GtkRadioButton command \"radiobutton1:set_active\""
536 check_error "radiobutton1:set_active " \
537 "ignoring GtkRadioButton command \"radiobutton1:set_active \""
538 check_error "radiobutton1:set_active 2" \
539 "ignoring GtkRadioButton command \"radiobutton1:set_active 2\""
540 check_error "radiobutton1:set_active $BIG_NUM" \
541 "ignoring GtkRadioButton command \"radiobutton1:set_active $BIG_NUM\""
542 check_error "radiobutton1:set_active nnn" \
543 "ignoring GtkRadioButton command \"radiobutton1:set_active nnn\""
544 check_error "radiobutton1:set_active 0 1" \
545 "ignoring GtkRadioButton command \"radiobutton1:set_active 0 1\""
546 # GtkSpinButton
547 check_error "spinbutton1:nnn" \
548 "ignoring GtkSpinButton command \"spinbutton1:nnn\""
549 check_error "spinbutton1:set_text" \
550 "ignoring GtkSpinButton command \"spinbutton1:set_text\""
551 check_error "spinbutton1:set_text " \
552 "ignoring GtkSpinButton command \"spinbutton1:set_text \""
553 check_error "spinbutton1:set_text nnn" \
554 "ignoring GtkSpinButton command \"spinbutton1:set_text nnn\""
555 check_error "spinbutton1:set_text $BIG_STRING" \
556 "ignoring GtkSpinButton command \"spinbutton1:set_text $BIG_STRING\""
557 check_error "spinbutton1:set_text 10 10" \
558 "ignoring GtkSpinButton command \"spinbutton1:set_text 10 10\""
559 check_error "spinbutton1:set_range" \
560 "ignoring GtkSpinButton command \"spinbutton1:set_range\""
561 check_error "spinbutton1:set_range " \
562 "ignoring GtkSpinButton command \"spinbutton1:set_range \""
563 check_error "spinbutton1:set_range 10 nnn" \
564 "ignoring GtkSpinButton command \"spinbutton1:set_range 10 nnn\""
565 check_error "spinbutton1:set_range 10 20 10" \
566 "ignoring GtkSpinButton command \"spinbutton1:set_range 10 20 10\""
567 check_error "spinbutton1:set_increments" \
568 "ignoring GtkSpinButton command \"spinbutton1:set_increments\""
569 check_error "spinbutton1:set_increments " \
570 "ignoring GtkSpinButton command \"spinbutton1:set_increments \""
571 check_error "spinbutton1:set_increments 10 nnn" \
572 "ignoring GtkSpinButton command \"spinbutton1:set_increments 10 nnn\""
573 check_error "spinbutton1:set_increments 10 20 10" \
574 "ignoring GtkSpinButton command \"spinbutton1:set_increments 10 20 10\""
575 # GtkDialog
576 check_error "dialog1:resize 100" \
577 "ignoring GtkDialog command \"dialog1:resize 100\""
578 check_error "dialog1:resize 100 100 100" \
579 "ignoring GtkDialog command \"dialog1:resize 100 100 100\""
580 check_error "dialog1:move" \
581 "ignoring GtkDialog command \"dialog1:move\""
582 check_error "dialog1:move " \
583 "ignoring GtkDialog command \"dialog1:move \""
584 check_error "dialog1:move 100" \
585 "ignoring GtkDialog command \"dialog1:move 100\""
586 check_error "dialog1:move 100 100 100" \
587 "ignoring GtkDialog command \"dialog1:move 100 100 100\""
588 check_error "dialog1:fullscreen 1" \
589 "ignoring GtkDialog command \"dialog1:fullscreen 1\""
590 check_error "dialog1:unfullscreen 1" \
591 "ignoring GtkDialog command \"dialog1:unfullscreen 1\""
592 # GtkFileChooserButton
593 check_error "filechooserbutton1:nnn" \
594 "ignoring GtkFileChooserButton command \"filechooserbutton1:nnn\""
595 # GtkFilechooserDialog
596 check_error "open_dialog:nnn" \
597 "ignoring GtkFileChooserDialog command \"open_dialog:nnn\""
598 check_error "open_dialog:resize 100" \
599 "ignoring GtkFileChooserDialog command \"open_dialog:resize 100\""
600 check_error "open_dialog:resize 100 100 100" \
601 "ignoring GtkFileChooserDialog command \"open_dialog:resize 100 100 100\""
602 check_error "open_dialog:move" \
603 "ignoring GtkFileChooserDialog command \"open_dialog:move\""
604 check_error "open_dialog:move " \
605 "ignoring GtkFileChooserDialog command \"open_dialog:move \""
606 check_error "open_dialog:move 100" \
607 "ignoring GtkFileChooserDialog command \"open_dialog:move 100\""
608 check_error "open_dialog:move 100 100 100" \
609 "ignoring GtkFileChooserDialog command \"open_dialog:move 100 100 100\""
610 check_error "open_dialog:fullscreen 1" \
611 "ignoring GtkFileChooserDialog command \"open_dialog:fullscreen 1\""
612 check_error "open_dialog:unfullscreen 1" \
613 "ignoring GtkFileChooserDialog command \"open_dialog:unfullscreen 1\""
614 # GtkFontButton
615 check_error "fontbutton1:nnn" \
616 "ignoring GtkFontButton command \"fontbutton1:nnn\""
617 # GtkColorButton
618 check_error "colorbutton1:nnn" \
619 "ignoring GtkColorButton command \"colorbutton1:nnn\""
620 # GtkPrintUnixDialog
621 check_error "printdialog:nnn" \
622 "ignoring GtkPrintUnixDialog command \"printdialog:nnn\""
624 if test $INTERACTIVE; then
625 check_error "statusbar1:push Click \"Print\"\n printdialog:print nonexistent.ps" \
626 "ignoring GtkPrintUnixDialog command \" printdialog:print nonexistent.ps\""
628 if test $AUTOMATIC; then
629 # GtkScale
630 check_error "scale1:nnn" \
631 "ignoring GtkScale command \"scale1:nnn\""
632 check_error "scale1:set_value" \
633 "ignoring GtkScale command \"scale1:set_value\""
634 check_error "scale1:set_value " \
635 "ignoring GtkScale command \"scale1:set_value \""
636 check_error "scale1:set_value nnn" \
637 "ignoring GtkScale command \"scale1:set_value nnn\""
638 check_error "scale1:set_value $BIG_STRING" \
639 "ignoring GtkScale command \"scale1:set_value $BIG_STRING\""
640 check_error "scale1:set_value 10 10" \
641 "ignoring GtkScale command \"scale1:set_value 10 10\""
642 check_error "scale1:set_fill_level nnn" \
643 "ignoring GtkScale command \"scale1:set_fill_level nnn\""
644 check_error "scale1:set_fill_level $BIG_STRING" \
645 "ignoring GtkScale command \"scale1:set_fill_level $BIG_STRING\""
646 check_error "scale1:set_fill_level 10 10" \
647 "ignoring GtkScale command \"scale1:set_fill_level 10 10\""
648 check_error "scale1:set_range" \
649 "ignoring GtkScale command \"scale1:set_range\""
650 check_error "scale1:set_range " \
651 "ignoring GtkScale command \"scale1:set_range \""
652 check_error "scale1:set_range 10" \
653 "ignoring GtkScale command \"scale1:set_range 10\""
654 check_error "scale1:set_range $BIG_NUM" \
655 "ignoring GtkScale command \"scale1:set_range $BIG_NUM\""
656 check_error "scale1:set_range x 10" \
657 "ignoring GtkScale command \"scale1:set_range x 10\""
658 check_error "scale1:set_range 10 10 10" \
659 "ignoring GtkScale command \"scale1:set_range 10 10 10\""
660 check_error "scale1:set_increments" \
661 "ignoring GtkScale command \"scale1:set_increments\""
662 check_error "scale1:set_increments " \
663 "ignoring GtkScale command \"scale1:set_increments \""
664 check_error "scale1:set_increments 10" \
665 "ignoring GtkScale command \"scale1:set_increments 10\""
666 check_error "scale1:set_increments $BIG_NUM" \
667 "ignoring GtkScale command \"scale1:set_increments $BIG_NUM\""
668 check_error "scale1:set_increments x 10" \
669 "ignoring GtkScale command \"scale1:set_increments x 10\""
670 check_error "scale1:set_increments 10 10 10" \
671 "ignoring GtkScale command \"scale1:set_increments 10 10 10\""
672 # GtkProgressBar
673 check_error "progressbar1:nnn" \
674 "ignoring GtkProgressBar command \"progressbar1:nnn\""
675 check_error "progressbar1:set_fraction" \
676 "ignoring GtkProgressBar command \"progressbar1:set_fraction\""
677 check_error "progressbar1:set_fraction " \
678 "ignoring GtkProgressBar command \"progressbar1:set_fraction \""
679 check_error "progressbar1:set_fraction nnn" \
680 "ignoring GtkProgressBar command \"progressbar1:set_fraction nnn\""
681 check_error "progressbar1:set_fraction $BIG_STRING" \
682 "ignoring GtkProgressBar command \"progressbar1:set_fraction $BIG_STRING\""
683 check_error "progressbar1:set_fraction .5 1" \
684 "ignoring GtkProgressBar command \"progressbar1:set_fraction .5 1\""
685 # GtkSpinner
686 check_error "spinner1:nnn" \
687 "ignoring GtkSpinner command \"spinner1:nnn\""
688 check_error "spinner1:start 1" \
689 "ignoring GtkSpinner command \"spinner1:start 1\""
690 check_error "spinner1:start $BIG_STRING" \
691 "ignoring GtkSpinner command \"spinner1:start $BIG_STRING\""
692 check_error "spinner1:stop 1" \
693 "ignoring GtkSpinner command \"spinner1:stop 1\""
694 check_error "spinner1:stop $BIG_STRING" \
695 "ignoring GtkSpinner command \"spinner1:stop $BIG_STRING\""
696 # GtkStatusbar
697 check_error "statusbar1:nnn" \
698 "ignoring GtkStatusbar command \"statusbar1:nnn\""
699 check_error "statusbar1:push_id" \
700 "ignoring GtkStatusbar command \"statusbar1:push_id\""
701 check_error "statusbar1:pop_id" \
702 "ignoring GtkStatusbar command \"statusbar1:pop_id\""
703 check_error "statusbar1:remove_all_id" \
704 "ignoring GtkStatusbar command \"statusbar1:remove_all_id\""
705 check_error "statusbar1:remove_all_id " \
706 "ignoring GtkStatusbar command \"statusbar1:remove_all_id \""
707 check_error "statusbar1:remove_all_id a b" \
708 "ignoring GtkStatusbar command \"statusbar1:remove_all_id a b\""
709 check_error "statusbar1:remove_all a" \
710 "ignoring GtkStatusbar command \"statusbar1:remove_all a\""
711 check_error "statusbar1:remove_all $BIG_STRING" \
712 "ignoring GtkStatusbar command \"statusbar1:remove_all $BIG_STRING\""
713 # GtkComboBoxText
714 check_error "comboboxtext1:nnn" \
715 "ignoring GtkComboBoxText command \"comboboxtext1:nnn\""
716 check_error "comboboxtext1:force" \
717 "ignoring GtkComboBoxText command \"comboboxtext1:force\""
718 check_error "comboboxtext1:insert_text" \
719 "ignoring GtkComboBoxText command \"comboboxtext1:insert_text\""
720 check_error "comboboxtext1:insert_text x y" \
721 "ignoring GtkComboBoxText command \"comboboxtext1:insert_text x y\""
722 check_error "comboboxtext1:remove" \
723 "ignoring GtkComboBoxText command \"comboboxtext1:remove\""
724 check_error "comboboxtext1:remove x y" \
725 "ignoring GtkComboBoxText command \"comboboxtext1:remove x y\""
727 # GtkTreeView #
728 check_error "treeview1:nnn" \
729 "ignoring GtkTreeView command \"treeview1:nnn\""
730 check_error "treeview2:nnn" \
731 "ignoring GtkTreeView command \"treeview2:nnn\""
732 check_error "treeview1:force" \
733 "ignoring GtkTreeView command \"treeview1:force\""
734 # GtkTreeView save
735 check_error "treeview1:save" \
736 "ignoring GtkTreeView command \"treeview1:save\""
737 mkdir $DIR; chmod a-w $DIR
738 check_error "treeview1:save $DIR/$FILE1" \
739 "ignoring GtkTreeView command \"treeview1:save $DIR/$FILE1\""
740 check_error "treeview1:save nonexistent/$FILE1" \
741 "ignoring GtkTreeView command \"treeview1:save nonexistent/$FILE1\""
742 rm -rf $DIR
743 for i in $WEIRD_PATHS; do
744 check_error "treeview1:save nonexistent/$i" \
745 "ignoring GtkTreeView command \"treeview1:save nonexistent/$i\""
746 done
747 # GtkTreeView insert_row
748 check_error "treeview1:insert_row 10000" \
749 "ignoring GtkTreeView command \"treeview1:insert_row 10000\""
750 check_error "treeview1:insert_row $BIG_STRING" \
751 "ignoring GtkTreeView command \"treeview1:insert_row $BIG_STRING\""
752 check_error "treeview1:insert_row -1" \
753 "ignoring GtkTreeView command \"treeview1:insert_row -1\""
754 check_error "treeview1:insert_row nnn" \
755 "ignoring GtkTreeView command \"treeview1:insert_row nnn\""
756 check_error "treeview1:insert_row" \
757 "ignoring GtkTreeView command \"treeview1:insert_row\""
758 check_error "treeview1:insert_row " \
759 "ignoring GtkTreeView command \"treeview1:insert_row \""
760 check_error "treeview1:insert_row -1" \
761 "ignoring GtkTreeView command \"treeview1:insert_row -1\""
762 check_error "treeview1:insert_row 1000" \
763 "ignoring GtkTreeView command \"treeview1:insert_row 1000\""
764 check_error "treeview2:insert_row 0" \
765 "ignoring GtkTreeView command \"treeview2:insert_row 0\""
766 check_error "treeview3:insert_row end" \
767 "missing model/ignoring GtkTreeView command \"treeview3:insert_row end\""
768 check_error "treeview2:insert_row end\n treeview2:insert_row 0 as_child\n treeview2:insert_row 0:0 as_child\n treeview2:expand abc" \
769 "ignoring GtkTreeView command \" treeview2:expand abc\""
770 check_error "treeview2:expand" \
771 "ignoring GtkTreeView command \"treeview2:expand\""
772 check_error "treeview2:expand 0:abc" \
773 "ignoring GtkTreeView command \"treeview2:expand 0:abc\""
774 check_error "treeview2:expand 0 0" \
775 "ignoring GtkTreeView command \"treeview2:expand 0 0\""
776 check_error "treeview2:expand_all abc" \
777 "ignoring GtkTreeView command \"treeview2:expand_all abc\""
778 check_error "treeview2:expand_all $BIG_STRING" \
779 "ignoring GtkTreeView command \"treeview2:expand_all $BIG_STRING\""
780 check_error "treeview2:expand_all 0:abc" \
781 "ignoring GtkTreeView command \"treeview2:expand_all 0:abc\""
782 check_error "treeview2:expand_all 0 0" \
783 "ignoring GtkTreeView command \"treeview2:expand_all 0 0\""
784 check_error "treeview2:collapse abc" \
785 "ignoring GtkTreeView command \"treeview2:collapse abc\""
786 check_error "treeview2:collapse $BIG_STRING" \
787 "ignoring GtkTreeView command \"treeview2:collapse $BIG_STRING\""
788 check_error "treeview2:collapse 0:abc" \
789 "ignoring GtkTreeView command \"treeview2:collapse 0:abc\""
790 check_error "treeview2:collapse 0 0" \
791 "ignoring GtkTreeView command \"treeview2:collapse 0 0\""
792 check_error "treeview2:insert_row" \
793 "ignoring GtkTreeView command \"treeview2:insert_row\""
794 check_error "treeview2:insert_row abc" \
795 "ignoring GtkTreeView command \"treeview2:insert_row abc\""
796 check_error "treeview2:insert_row 0:abc" \
797 "ignoring GtkTreeView command \"treeview2:insert_row 0:abc\""
798 check_error "treeview2:insert_row end 0" \
799 "ignoring GtkTreeView command \"treeview2:insert_row end 0\""
800 # GtkTreeView move_row
801 check_error "treeview1:move_row" \
802 "ignoring GtkTreeView command \"treeview1:move_row\""
803 check_error "treeview1:move_row " \
804 "ignoring GtkTreeView command \"treeview1:move_row \""
805 check_error "treeview1:move_row nnn" \
806 "ignoring GtkTreeView command \"treeview1:move_row nnn\""
807 check_error "treeview1:move_row $BIG_STRING" \
808 "ignoring GtkTreeView command \"treeview1:move_row $BIG_STRING\""
809 check_error "treeview1:move_row 10000 end" \
810 "ignoring GtkTreeView command \"treeview1:move_row 10000 end\""
811 check_error "treeview1:move_row $BIG_STRING end" \
812 "ignoring GtkTreeView command \"treeview1:move_row $BIG_STRING end\""
813 check_error "treeview1:move_row -1 end" \
814 "ignoring GtkTreeView command \"treeview1:move_row -1 end\""
815 check_error "treeview1:move_row nnn end" \
816 "ignoring GtkTreeView command \"treeview1:move_row nnn end\""
817 check_error "treeview1:move_row 0 10000" \
818 "ignoring GtkTreeView command \"treeview1:move_row 0 10000\""
819 check_error "treeview1:move_row 0 -1" \
820 "ignoring GtkTreeView command \"treeview1:move_row 0 -1\""
821 check_error "treeview1:move_row 0 nnn" \
822 "ignoring GtkTreeView command \"treeview1:move_row 0 nnn\""
823 check_error "treeview2:move_row" \
824 "ignoring GtkTreeView command \"treeview2:move_row\""
825 check_error "treeview2:move_row 0:0 abc" \
826 "ignoring GtkTreeView command \"treeview2:move_row 0:0 abc\""
827 check_error "treeview2:move_row 0:0 0:abc" \
828 "ignoring GtkTreeView command \"treeview2:move_row 0:0 0:abc\""
829 check_error "treeview2:move_row abc end" \
830 "ignoring GtkTreeView command \"treeview2:move_row abc end\""
831 check_error "treeview2:move_row 0:abc end" \
832 "ignoring GtkTreeView command \"treeview2:move_row 0:abc end\""
833 check_error "treeview2:move_row 0 end 0" \
834 "ignoring GtkTreeView command \"treeview2:move_row 0 end 0\""
835 # GtkTreeView remove_row
836 check_error "treeview1:remove_row 10000" \
837 "ignoring GtkTreeView command \"treeview1:remove_row 10000\""
838 check_error "treeview1:remove_row -1" \
839 "ignoring GtkTreeView command \"treeview1:remove_row -1\""
840 check_error "treeview1:remove_row nnn" \
841 "ignoring GtkTreeView command \"treeview1:remove_row nnn\""
842 check_error "treeview1:remove_row $BIG_STRING" \
843 "ignoring GtkTreeView command \"treeview1:remove_row $BIG_STRING\""
844 check_error "treeview1:remove_row" \
845 "ignoring GtkTreeView command \"treeview1:remove_row\""
846 check_error "treeview1:remove_row " \
847 "ignoring GtkTreeView command \"treeview1:remove_row \""
848 check_error "treeview2:remove_row" \
849 "ignoring GtkTreeView command \"treeview2:remove_row\""
850 check_error "treeview2:remove_row abc" \
851 "ignoring GtkTreeView command \"treeview2:remove_row abc\""
852 check_error "treeview2:remove_row 0:abc" \
853 "ignoring GtkTreeView command \"treeview2:remove_row 0:abc\""
854 check_error "treeview2:remove_row 0 0" \
855 "ignoring GtkTreeView command \"treeview2:remove_row 0 0\""
856 # GtkTreeView scroll
857 check_error "treeview1:scroll" \
858 "ignoring GtkTreeView command \"treeview1:scroll\""
859 check_error "treeview1:scroll " \
860 "ignoring GtkTreeView command \"treeview1:scroll \""
861 check_error "treeview1:scroll nnn" \
862 "ignoring GtkTreeView command \"treeview1:scroll nnn\""
863 check_error "treeview1:scroll $BIG_STRING" \
864 "ignoring GtkTreeView command \"treeview1:scroll $BIG_STRING\""
865 check_error "treeview1:scroll -1 1" \
866 "ignoring GtkTreeView command \"treeview1:scroll -1 1\""
867 check_error "treeview1:scroll 1 -1" \
868 "ignoring GtkTreeView command \"treeview1:scroll 1 -1\""
869 check_error "treeview1:scroll nnn 1" \
870 "ignoring GtkTreeView command \"treeview1:scroll nnn 1\""
871 check_error "treeview1:scroll 1 nnn" \
872 "ignoring GtkTreeView command \"treeview1:scroll 1 nnn\""
873 check_error "treeview1:scroll 0 0 0" \
874 "ignoring GtkTreeView command \"treeview1:scroll 0 0 0\""
875 check_error "treeview2:scroll" \
876 "ignoring GtkTreeView command \"treeview2:scroll\""
877 check_error "treeview2:scroll abc" \
878 "ignoring GtkTreeView command \"treeview2:scroll abc\""
879 check_error "treeview2:scroll 0:abc" \
880 "ignoring GtkTreeView command \"treeview2:scroll 0:abc\""
881 check_error "treeview2:scroll abc 0" \
882 "ignoring GtkTreeView command \"treeview2:scroll abc 0\""
883 check_error "treeview2:scroll 0:abc 0" \
884 "ignoring GtkTreeView command \"treeview2:scroll 0:abc 0\""
885 check_error "treeview2:scroll 0:0" \
886 "ignoring GtkTreeView command \"treeview2:scroll 0:0\""
887 check_error "treeview2:scroll 0:0 abc" \
888 "ignoring GtkTreeView command \"treeview2:scroll 0:0 abc\""
889 check_error "treeview2:set_cursor abc" \
890 "ignoring GtkTreeView command \"treeview2:set_cursor abc\""
891 check_error "treeview2:set_cursor 0:abc" \
892 "ignoring GtkTreeView command \"treeview2:set_cursor 0:abc\""
893 check_error "treeview2:set_cursor 0 0" \
894 "ignoring GtkTreeView command \"treeview2:set_cursor 0 0\""
895 check_error "treeview2:set_cursor 0 $BIG_STRING" \
896 "ignoring GtkTreeView command \"treeview2:set_cursor 0 $BIG_STRING\""
897 check_error "treeview2:clear 0" \
898 "ignoring GtkTreeView command \"treeview2:clear 0\""
899 check_error "treeview2:clear\n treeview2:insert_row 0" \
900 "ignoring GtkTreeView command \" treeview2:insert_row 0\""
901 # GtkTreeView set
902 check_error "treeview1:set" \
903 "ignoring GtkTreeView command \"treeview1:set\""
904 check_error "treeview1:set " \
905 "ignoring GtkTreeView command \"treeview1:set \""
906 check_error "treeview1:set nnn" \
907 "ignoring GtkTreeView command \"treeview1:set nnn\""
908 check_error "treeview1:set $BIG_STRING" \
909 "ignoring GtkTreeView command \"treeview1:set $BIG_STRING\""
910 check_error "treeview1:set 0 nnn" \
911 "ignoring GtkTreeView command \"treeview1:set 0 nnn\""
912 check_error "treeview1:set nnn 0" \
913 "ignoring GtkTreeView command \"treeview1:set nnn 0\""
914 check_error "treeview1:set 1 10000 77" \
915 "ignoring GtkTreeView command \"treeview1:set 1 10000 77\""
916 check_error "treeview1:set 1 11 77" \
917 "ignoring GtkTreeView command \"treeview1:set 1 11 77\""
918 check_error "treeview1:set nnn 1 77" \
919 "ignoring GtkTreeView command \"treeview1:set nnn 1 77\""
920 check_error "treeview1:set 1 nnn 77" \
921 "ignoring GtkTreeView command \"treeview1:set 1 nnn 77\""
922 check_error "treeview1:set -1 1 77" \
923 "ignoring GtkTreeView command \"treeview1:set -1 1 77\""
924 check_error "treeview1:set 1 -1 77" \
925 "ignoring GtkTreeView command \"treeview1:set 1 -1 77\""
926 # GtkTreeView set junk into numeric columns
927 check_error "treeview1:set 1 1 abc" \
928 "ignoring GtkTreeView command \"treeview1:set 1 1 abc\""
929 check_error "treeview1:set 1 1 $BIG_STRING" \
930 "ignoring GtkTreeView command \"treeview1:set 1 1 $BIG_STRING\""
931 check_error "treeview1:set 1 1" \
932 "ignoring GtkTreeView command \"treeview1:set 1 1\""
933 check_error "treeview1:set 1 1 555.5" \
934 "ignoring GtkTreeView command \"treeview1:set 1 1 555.5\""
935 check_error "treeview1:set 1 1 555 5" \
936 "ignoring GtkTreeView command \"treeview1:set 1 1 555 5\""
937 check_error "treeview1:set 1 7 abc" \
938 "ignoring GtkTreeView command \"treeview1:set 1 7 abc\""
939 check_error "treeview1:set 1 7 $BIG_STRING" \
940 "ignoring GtkTreeView command \"treeview1:set 1 7 $BIG_STRING\""
941 check_error "treeview1:set 1 7" \
942 "ignoring GtkTreeView command \"treeview1:set 1 7\""
943 check_error "treeview1:set 1 7 555 5" \
944 "ignoring GtkTreeView command \"treeview1:set 1 7 555 5\""
946 # GtkTreeViewColumn (which is not a GtkWidget)
947 check_error "treeviewcolumn3:nnn" \
948 "ignoring GtkTreeViewColumn command \"treeviewcolumn3:nnn\""
949 check_error "treeviewcolumn3:force" \
950 "ignoring GtkTreeViewColumn command \"treeviewcolumn3:force\""
951 check_error "treeviewcolumn3:grab_focus" \
952 "ignoring GtkTreeViewColumn command \"treeviewcolumn3:grab_focus\""
953 check_error "treeviewcolumn3:snapshot x.svg" \
954 "ignoring GtkTreeViewColumn command \"treeviewcolumn3:snapshot x.svg\""
955 check_error "treeviewcolumn3:set_sensitive 0" \
956 "ignoring GtkTreeViewColumn command \"treeviewcolumn3:set_sensitive 0\""
957 check_error "treeviewcolumn3:set_size_request 50 60" \
958 "ignoring GtkTreeViewColumn command \"treeviewcolumn3:set_size_request 50 60\""
959 check_error "treeviewcolumn3:set_visible 0" \
960 "ignoring GtkTreeViewColumn command \"treeviewcolumn3:set_visible 0\""
961 check_error "treeviewcolumn3:style" \
962 "ignoring GtkTreeViewColumn command \"treeviewcolumn3:style\""
963 check_error "treeviewcolumn3:set_tooltip_text" \
964 "ignoring GtkTreeViewColumn command \"treeviewcolumn3:set_tooltip_text\""
966 # GtkEntry
967 check_error "entry1:nnn" \
968 "ignoring GtkEntry command \"entry1:nnn\""
969 # GtkCalendar
970 check_error "calendar1:nnn" \
971 "ignoring GtkCalendar command \"calendar1:nnn\""
972 check_error "calendar1:select_date" \
973 "ignoring GtkCalendar command \"calendar1:select_date\""
974 check_error "calendar1:select_date " \
975 "ignoring GtkCalendar command \"calendar1:select_date \""
976 check_error "calendar1:select_date nnn" \
977 "ignoring GtkCalendar command \"calendar1:select_date nnn\""
978 check_error "calendar1:select_date $BIG_STRING" \
979 "ignoring GtkCalendar command \"calendar1:select_date $BIG_STRING\""
980 check_error "calendar1:select_date 2000-12-33" \
981 "ignoring GtkCalendar command \"calendar1:select_date 2000-12-33\""
982 check_error "calendar1:select_date 2000-13-20" \
983 "ignoring GtkCalendar command \"calendar1:select_date 2000-13-20\""
984 check_error "calendar1:select_date 2000-10-10 1" \
985 "ignoring GtkCalendar command \"calendar1:select_date 2000-10-10 1\""
986 check_error "calendar1:mark_day" \
987 "ignoring GtkCalendar command \"calendar1:mark_day\""
988 check_error "calendar1:mark_day " \
989 "ignoring GtkCalendar command \"calendar1:mark_day \""
990 check_error "calendar1:mark_day nnn" \
991 "ignoring GtkCalendar command \"calendar1:mark_day nnn\""
992 check_error "calendar1:mark_day $BIG_STRING" \
993 "ignoring GtkCalendar command \"calendar1:mark_day $BIG_STRING\""
994 check_error "calendar1:mark_day 10 1" \
995 "ignoring GtkCalendar command \"calendar1:mark_day 10 1\""
996 check_error "calendar1:clear_marks 1" \
997 "ignoring GtkCalendar command \"calendar1:clear_marks 1\""
998 # GtkSocket
999 check_error "socket1:nnn" \
1000 "ignoring GtkSocket command \"socket1:nnn\""
1001 check_error "socket1:id 1" \
1002 "ignoring GtkSocket command \"socket1:id 1\""
1003 # GtkScrolledWindow
1004 check_error "scrolledwindow3:nnn" \
1005 "ignoring GtkScrolledWindow command \"scrolledwindow3:nnn\""
1006 check_error "scrolledwindow3:hscroll" \
1007 "ignoring GtkScrolledWindow command \"scrolledwindow3:hscroll\""
1008 check_error "scrolledwindow3:hscroll " \
1009 "ignoring GtkScrolledWindow command \"scrolledwindow3:hscroll \""
1010 check_error "scrolledwindow3:hscroll nnn" \
1011 "ignoring GtkScrolledWindow command \"scrolledwindow3:hscroll nnn\""
1012 check_error "scrolledwindow3:hscroll $BIG_STRING" \
1013 "ignoring GtkScrolledWindow command \"scrolledwindow3:hscroll $BIG_STRING\""
1014 check_error "scrolledwindow3:hscroll 100 100" \
1015 "ignoring GtkScrolledWindow command \"scrolledwindow3:hscroll 100 100\""
1016 check_error "scrolledwindow3:vscroll" \
1017 "ignoring GtkScrolledWindow command \"scrolledwindow3:vscroll\""
1018 check_error "scrolledwindow3:vscroll " \
1019 "ignoring GtkScrolledWindow command \"scrolledwindow3:vscroll \""
1020 check_error "scrolledwindow3:vscroll nnn" \
1021 "ignoring GtkScrolledWindow command \"scrolledwindow3:vscroll nnn\""
1022 check_error "scrolledwindow3:vscroll $BIG_STRING" \
1023 "ignoring GtkScrolledWindow command \"scrolledwindow3:vscroll $BIG_STRING\""
1024 check_error "scrolledwindow3:vscroll 100 100" \
1025 "ignoring GtkScrolledWindow command \"scrolledwindow3:vscroll 100 100\""
1026 check_error "scrolledwindow3:hscroll_to_range" \
1027 "ignoring GtkScrolledWindow command \"scrolledwindow3:hscroll_to_range\""
1028 check_error "scrolledwindow3:hscroll_to_range " \
1029 "ignoring GtkScrolledWindow command \"scrolledwindow3:hscroll_to_range \""
1030 check_error "scrolledwindow3:hscroll_to_range nnn" \
1031 "ignoring GtkScrolledWindow command \"scrolledwindow3:hscroll_to_range nnn\""
1032 check_error "scrolledwindow3:hscroll_to_range $BIG_STRING" \
1033 "ignoring GtkScrolledWindow command \"scrolledwindow3:hscroll_to_range $BIG_STRING\""
1034 check_error "scrolledwindow3:hscroll_to_range 10" \
1035 "ignoring GtkScrolledWindow command \"scrolledwindow3:hscroll_to_range 10\""
1036 check_error "scrolledwindow3:hscroll_to_range 10 nnn" \
1037 "ignoring GtkScrolledWindow command \"scrolledwindow3:hscroll_to_range 10 nnn\""
1038 check_error "scrolledwindow3:hscroll_to_range nnn 10" \
1039 "ignoring GtkScrolledWindow command \"scrolledwindow3:hscroll_to_range nnn 10\""
1040 check_error "scrolledwindow3:hscroll_to_range 5 10 10" \
1041 "ignoring GtkScrolledWindow command \"scrolledwindow3:hscroll_to_range 5 10 10\""
1042 check_error "scrolledwindow3:vscroll_to_range" \
1043 "ignoring GtkScrolledWindow command \"scrolledwindow3:vscroll_to_range\""
1044 check_error "scrolledwindow3:vscroll_to_range " \
1045 "ignoring GtkScrolledWindow command \"scrolledwindow3:vscroll_to_range \""
1046 check_error "scrolledwindow3:vscroll_to_range nnn" \
1047 "ignoring GtkScrolledWindow command \"scrolledwindow3:vscroll_to_range nnn\""
1048 check_error "scrolledwindow3:vscroll_to_range $BIG_STRING" \
1049 "ignoring GtkScrolledWindow command \"scrolledwindow3:vscroll_to_range $BIG_STRING\""
1050 check_error "scrolledwindow3:vscroll_to_range 10" \
1051 "ignoring GtkScrolledWindow command \"scrolledwindow3:vscroll_to_range 10\""
1052 check_error "scrolledwindow3:vscroll_to_range 10 nnn" \
1053 "ignoring GtkScrolledWindow command \"scrolledwindow3:vscroll_to_range 10 nnn\""
1054 check_error "scrolledwindow3:vscroll_to_range nnn 10" \
1055 "ignoring GtkScrolledWindow command \"scrolledwindow3:vscroll_to_range nnn 10\""
1056 check_error "scrolledwindow3:vscroll_to_range 5 10 10" \
1057 "ignoring GtkScrolledWindow command \"scrolledwindow3:vscroll_to_range 5 10 10\""
1058 # GtkEventBox
1059 check_error "eventbox1:nnn" \
1060 "ignoring GtkEventBox command \"eventbox1:nnn\""
1061 # GtkDrawingArea
1062 check_error "drawingarea1:nnn" \
1063 "ignoring GtkDrawingArea command \"drawingarea1:nnn\""
1064 check_error "drawingarea1:rectangle" \
1065 "ignoring GtkDrawingArea command \"drawingarea1:rectangle\""
1066 check_error "drawingarea1:rectangle " \
1067 "ignoring GtkDrawingArea command \"drawingarea1:rectangle \""
1068 check_error "drawingarea1:rectangle nnn" \
1069 "ignoring GtkDrawingArea command \"drawingarea1:rectangle nnn\""
1070 check_error "drawingarea1:rectangle $BIG_STRING" \
1071 "ignoring GtkDrawingArea command \"drawingarea1:rectangle $BIG_STRING\""
1072 check_error "drawingarea1:rectangle 1" \
1073 "ignoring GtkDrawingArea command \"drawingarea1:rectangle 1\""
1074 check_error "drawingarea1:rectangle 1 10" \
1075 "ignoring GtkDrawingArea command \"drawingarea1:rectangle 1 10\""
1076 check_error "drawingarea1:rectangle 1 10 10" \
1077 "ignoring GtkDrawingArea command \"drawingarea1:rectangle 1 10 10\""
1078 check_error "drawingarea1:rectangle 1 10 10 20" \
1079 "ignoring GtkDrawingArea command \"drawingarea1:rectangle 1 10 10 20\""
1080 check_error "drawingarea1:rectangle 1 10 10 20 nnn" \
1081 "ignoring GtkDrawingArea command \"drawingarea1:rectangle 1 10 10 20 nnn\""
1082 check_error "drawingarea1:rectangle 1 10 10 20 20 20" \
1083 "ignoring GtkDrawingArea command \"drawingarea1:rectangle 1 10 10 20 20 20\""
1084 check_error "drawingarea1:arc" \
1085 "ignoring GtkDrawingArea command \"drawingarea1:arc\""
1086 check_error "drawingarea1:arc " \
1087 "ignoring GtkDrawingArea command \"drawingarea1:arc \""
1088 check_error "drawingarea1:arc nnn" \
1089 "ignoring GtkDrawingArea command \"drawingarea1:arc nnn\""
1090 check_error "drawingarea1:arc $BIG_STRING" \
1091 "ignoring GtkDrawingArea command \"drawingarea1:arc $BIG_STRING\""
1092 check_error "drawingarea1:arc 1" \
1093 "ignoring GtkDrawingArea command \"drawingarea1:arc 1\""
1094 check_error "drawingarea1:arc 1 10" \
1095 "ignoring GtkDrawingArea command \"drawingarea1:arc 1 10\""
1096 check_error "drawingarea1:arc 1 10 10" \
1097 "ignoring GtkDrawingArea command \"drawingarea1:arc 1 10 10\""
1098 check_error "drawingarea1:arc 1 10 10 20" \
1099 "ignoring GtkDrawingArea command \"drawingarea1:arc 1 10 10 20\""
1100 check_error "drawingarea1:arc 1 10 10 20 45" \
1101 "ignoring GtkDrawingArea command \"drawingarea1:arc 1 10 10 20 45\""
1102 check_error "drawingarea1:arc 1 10 10 20 45 nnn" \
1103 "ignoring GtkDrawingArea command \"drawingarea1:arc 1 10 10 20 45 nnn\""
1104 check_error "drawingarea1:arc 1 10 10 20 45 90 7" \
1105 "ignoring GtkDrawingArea command \"drawingarea1:arc 1 10 10 20 45 90 7\""
1106 check_error "drawingarea1:arc_negative" \
1107 "ignoring GtkDrawingArea command \"drawingarea1:arc_negative\""
1108 check_error "drawingarea1:arc_negative " \
1109 "ignoring GtkDrawingArea command \"drawingarea1:arc_negative \""
1110 check_error "drawingarea1:arc_negative nnn" \
1111 "ignoring GtkDrawingArea command \"drawingarea1:arc_negative nnn\""
1112 check_error "drawingarea1:arc_negative $BIG_STRING" \
1113 "ignoring GtkDrawingArea command \"drawingarea1:arc_negative $BIG_STRING\""
1114 check_error "drawingarea1:arc_negative 1" \
1115 "ignoring GtkDrawingArea command \"drawingarea1:arc_negative 1\""
1116 check_error "drawingarea1:arc_negative 1 10" \
1117 "ignoring GtkDrawingArea command \"drawingarea1:arc_negative 1 10\""
1118 check_error "drawingarea1:arc_negative 1 10 10" \
1119 "ignoring GtkDrawingArea command \"drawingarea1:arc_negative 1 10 10\""
1120 check_error "drawingarea1:arc_negative 1 10 10 20" \
1121 "ignoring GtkDrawingArea command \"drawingarea1:arc_negative 1 10 10 20\""
1122 check_error "drawingarea1:arc_negative 1 10 10 20 45" \
1123 "ignoring GtkDrawingArea command \"drawingarea1:arc_negative 1 10 10 20 45\""
1124 check_error "drawingarea1:arc_negative 1 10 10 20 45 nnn" \
1125 "ignoring GtkDrawingArea command \"drawingarea1:arc_negative 1 10 10 20 45 nnn\""
1126 check_error "drawingarea1:arc_negative 1 10 10 20 45 90 7" \
1127 "ignoring GtkDrawingArea command \"drawingarea1:arc_negative 1 10 10 20 45 90 7\""
1128 check_error "drawingarea1:curve_to" \
1129 "ignoring GtkDrawingArea command \"drawingarea1:curve_to\""
1130 check_error "drawingarea1:curve_to " \
1131 "ignoring GtkDrawingArea command \"drawingarea1:curve_to \""
1132 check_error "drawingarea1:curve_to nnn" \
1133 "ignoring GtkDrawingArea command \"drawingarea1:curve_to nnn\""
1134 check_error "drawingarea1:curve_to $BIG_STRING" \
1135 "ignoring GtkDrawingArea command \"drawingarea1:curve_to $BIG_STRING\""
1136 check_error "drawingarea1:curve_to 1" \
1137 "ignoring GtkDrawingArea command \"drawingarea1:curve_to 1\""
1138 check_error "drawingarea1:curve_to 1 10" \
1139 "ignoring GtkDrawingArea command \"drawingarea1:curve_to 1 10\""
1140 check_error "drawingarea1:curve_to 1 10 10" \
1141 "ignoring GtkDrawingArea command \"drawingarea1:curve_to 1 10 10\""
1142 check_error "drawingarea1:curve_to 1 10 10 20" \
1143 "ignoring GtkDrawingArea command \"drawingarea1:curve_to 1 10 10 20\""
1144 check_error "drawingarea1:curve_to 1 10 10 20 20" \
1145 "ignoring GtkDrawingArea command \"drawingarea1:curve_to 1 10 10 20 20\""
1146 check_error "drawingarea1:curve_to 1 10 10 20 20 25" \
1147 "ignoring GtkDrawingArea command \"drawingarea1:curve_to 1 10 10 20 20 25\""
1148 check_error "drawingarea1:curve_to 1 10 10 20 20 25 nnn" \
1149 "ignoring GtkDrawingArea command \"drawingarea1:curve_to 1 10 10 20 20 25 nnn\""
1150 check_error "drawingarea1:curve_to 1 10 10 20 20 25 25 77" \
1151 "ignoring GtkDrawingArea command \"drawingarea1:curve_to 1 10 10 20 20 25 25 77\""
1152 check_error "drawingarea1:rel_curve_to" \
1153 "ignoring GtkDrawingArea command \"drawingarea1:rel_curve_to\""
1154 check_error "drawingarea1:rel_curve_to " \
1155 "ignoring GtkDrawingArea command \"drawingarea1:rel_curve_to \""
1156 check_error "drawingarea1:rel_curve_to nnn" \
1157 "ignoring GtkDrawingArea command \"drawingarea1:rel_curve_to nnn\""
1158 check_error "drawingarea1:rel_curve_to $BIG_STRING" \
1159 "ignoring GtkDrawingArea command \"drawingarea1:rel_curve_to $BIG_STRING\""
1160 check_error "drawingarea1:rel_curve_to 1" \
1161 "ignoring GtkDrawingArea command \"drawingarea1:rel_curve_to 1\""
1162 check_error "drawingarea1:rel_curve_to 1 10" \
1163 "ignoring GtkDrawingArea command \"drawingarea1:rel_curve_to 1 10\""
1164 check_error "drawingarea1:rel_curve_to 1 10 10" \
1165 "ignoring GtkDrawingArea command \"drawingarea1:rel_curve_to 1 10 10\""
1166 check_error "drawingarea1:rel_curve_to 1 10 10 20" \
1167 "ignoring GtkDrawingArea command \"drawingarea1:rel_curve_to 1 10 10 20\""
1168 check_error "drawingarea1:rel_curve_to 1 10 10 20 20" \
1169 "ignoring GtkDrawingArea command \"drawingarea1:rel_curve_to 1 10 10 20 20\""
1170 check_error "drawingarea1:rel_curve_to 1 10 10 20 20 25" \
1171 "ignoring GtkDrawingArea command \"drawingarea1:rel_curve_to 1 10 10 20 20 25\""
1172 check_error "drawingarea1:rel_curve_to 1 10 10 20 20 25 nnn" \
1173 "ignoring GtkDrawingArea command \"drawingarea1:rel_curve_to 1 10 10 20 20 25 nnn\""
1174 check_error "drawingarea1:rel_curve_to 1 10 10 20 20 25 25 77" \
1175 "ignoring GtkDrawingArea command \"drawingarea1:rel_curve_to 1 10 10 20 20 25 25 77\""
1176 check_error "drawingarea1:line_to" \
1177 "ignoring GtkDrawingArea command \"drawingarea1:line_to\""
1178 check_error "drawingarea1:line_to " \
1179 "ignoring GtkDrawingArea command \"drawingarea1:line_to \""
1180 check_error "drawingarea1:line_to nnn" \
1181 "ignoring GtkDrawingArea command \"drawingarea1:line_to nnn\""
1182 check_error "drawingarea1:line_to $BIG_STRING" \
1183 "ignoring GtkDrawingArea command \"drawingarea1:line_to $BIG_STRING\""
1184 check_error "drawingarea1:line_to 1" \
1185 "ignoring GtkDrawingArea command \"drawingarea1:line_to 1\""
1186 check_error "drawingarea1:line_to 1 20" \
1187 "ignoring GtkDrawingArea command \"drawingarea1:line_to 1 20\""
1188 check_error "drawingarea1:line_to 1 20 nnn" \
1189 "ignoring GtkDrawingArea command \"drawingarea1:line_to 1 20 nnn\""
1190 check_error "drawingarea1:line_to 1 20 20 20" \
1191 "ignoring GtkDrawingArea command \"drawingarea1:line_to 1 20 20 20\""
1192 check_error "drawingarea1:rel_line_to" \
1193 "ignoring GtkDrawingArea command \"drawingarea1:rel_line_to\""
1194 check_error "drawingarea1:rel_line_to " \
1195 "ignoring GtkDrawingArea command \"drawingarea1:rel_line_to \""
1196 check_error "drawingarea1:rel_line_to nnn" \
1197 "ignoring GtkDrawingArea command \"drawingarea1:rel_line_to nnn\""
1198 check_error "drawingarea1:rel_line_to $BIG_STRING" \
1199 "ignoring GtkDrawingArea command \"drawingarea1:rel_line_to $BIG_STRING\""
1200 check_error "drawingarea1:rel_line_to 1" \
1201 "ignoring GtkDrawingArea command \"drawingarea1:rel_line_to 1\""
1202 check_error "drawingarea1:rel_line_to 1 20" \
1203 "ignoring GtkDrawingArea command \"drawingarea1:rel_line_to 1 20\""
1204 check_error "drawingarea1:rel_line_to 1 20 nnn" \
1205 "ignoring GtkDrawingArea command \"drawingarea1:rel_line_to 1 20 nnn\""
1206 check_error "drawingarea1:rel_line_to 1 20 nnn" \
1207 "ignoring GtkDrawingArea command \"drawingarea1:rel_line_to 1 20 nnn\""
1208 check_error "drawingarea1:rel_line_to 1 20 20 20" \
1209 "ignoring GtkDrawingArea command \"drawingarea1:rel_line_to 1 20 20 20\""
1210 check_error "drawingarea1:move_to" \
1211 "ignoring GtkDrawingArea command \"drawingarea1:move_to\""
1212 check_error "drawingarea1:move_to " \
1213 "ignoring GtkDrawingArea command \"drawingarea1:move_to \""
1214 check_error "drawingarea1:move_to nnn" \
1215 "ignoring GtkDrawingArea command \"drawingarea1:move_to nnn\""
1216 check_error "drawingarea1:move_to $BIG_STRING" \
1217 "ignoring GtkDrawingArea command \"drawingarea1:move_to $BIG_STRING\""
1218 check_error "drawingarea1:move_to 1" \
1219 "ignoring GtkDrawingArea command \"drawingarea1:move_to 1\""
1220 check_error "drawingarea1:move_to 1 20" \
1221 "ignoring GtkDrawingArea command \"drawingarea1:move_to 1 20\""
1222 check_error "drawingarea1:move_to 1 20 nnn" \
1223 "ignoring GtkDrawingArea command \"drawingarea1:move_to 1 20 nnn\""
1224 check_error "drawingarea1:move_to 1 20 20 20" \
1225 "ignoring GtkDrawingArea command \"drawingarea1:move_to 1 20 20 20\""
1226 check_error "drawingarea1:rel_move_to" \
1227 "ignoring GtkDrawingArea command \"drawingarea1:rel_move_to\""
1228 check_error "drawingarea1:rel_move_to " \
1229 "ignoring GtkDrawingArea command \"drawingarea1:rel_move_to \""
1230 check_error "drawingarea1:rel_move_to nnn" \
1231 "ignoring GtkDrawingArea command \"drawingarea1:rel_move_to nnn\""
1232 check_error "drawingarea1:rel_move_to $BIG_STRING" \
1233 "ignoring GtkDrawingArea command \"drawingarea1:rel_move_to $BIG_STRING\""
1234 check_error "drawingarea1:rel_move_to 1" \
1235 "ignoring GtkDrawingArea command \"drawingarea1:rel_move_to 1\""
1236 check_error "drawingarea1:rel_move_to 1 20" \
1237 "ignoring GtkDrawingArea command \"drawingarea1:rel_move_to 1 20\""
1238 check_error "drawingarea1:rel_move_to 1 20 nnn" \
1239 "ignoring GtkDrawingArea command \"drawingarea1:rel_move_to 1 20 nnn\""
1240 check_error "drawingarea1:rel_move_to 1 20 20 20" \
1241 "ignoring GtkDrawingArea command \"drawingarea1:rel_move_to 1 20 20 20\""
1242 check_error "drawingarea1:close_path" \
1243 "ignoring GtkDrawingArea command \"drawingarea1:close_path\""
1244 check_error "drawingarea1:close_path " \
1245 "ignoring GtkDrawingArea command \"drawingarea1:close_path \""
1246 check_error "drawingarea1:close_path nnn" \
1247 "ignoring GtkDrawingArea command \"drawingarea1:close_path nnn\""
1248 check_error "drawingarea1:close_path $BIG_STRING" \
1249 "ignoring GtkDrawingArea command \"drawingarea1:close_path $BIG_STRING\""
1250 check_error "drawingarea1:close_path 1 1" \
1251 "ignoring GtkDrawingArea command \"drawingarea1:close_path 1 1\""
1252 check_error "drawingarea1:set_source_rgba" \
1253 "ignoring GtkDrawingArea command \"drawingarea1:set_source_rgba\""
1254 check_error "drawingarea1:set_source_rgba " \
1255 "ignoring GtkDrawingArea command \"drawingarea1:set_source_rgba \""
1256 check_error "drawingarea1:set_source_rgba nnn" \
1257 "ignoring GtkDrawingArea command \"drawingarea1:set_source_rgba nnn\""
1258 check_error "drawingarea1:set_source_rgba $BIG_STRING" \
1259 "ignoring GtkDrawingArea command \"drawingarea1:set_source_rgba $BIG_STRING\""
1260 check_error "drawingarea1:set_dash" \
1261 "ignoring GtkDrawingArea command \"drawingarea1:set_dash\""
1262 check_error "drawingarea1:set_dash " \
1263 "ignoring GtkDrawingArea command \"drawingarea1:set_dash \""
1264 check_error "drawingarea1:set_dash nnn" \
1265 "ignoring GtkDrawingArea command \"drawingarea1:set_dash nnn\""
1266 check_error "drawingarea1:set_dash $BIG_STRING" \
1267 "ignoring GtkDrawingArea command \"drawingarea1:set_dash $BIG_STRING\""
1268 check_error "drawingarea1:set_line_cap" \
1269 "ignoring GtkDrawingArea command \"drawingarea1:set_line_cap\""
1270 check_error "drawingarea1:set_line_cap " \
1271 "ignoring GtkDrawingArea command \"drawingarea1:set_line_cap \""
1272 check_error "drawingarea1:set_line_cap nnn" \
1273 "ignoring GtkDrawingArea command \"drawingarea1:set_line_cap nnn\""
1274 check_error "drawingarea1:set_line_cap $BIG_STRING" \
1275 "ignoring GtkDrawingArea command \"drawingarea1:set_line_cap $BIG_STRING\""
1276 check_error "drawingarea1:set_line_cap 1" \
1277 "ignoring GtkDrawingArea command \"drawingarea1:set_line_cap 1\""
1278 check_error "drawingarea1:set_line_cap 1 nnn" \
1279 "ignoring GtkDrawingArea command \"drawingarea1:set_line_cap 1 nnn\""
1280 check_error "drawingarea1:set_line_cap 1 butt butt" \
1281 "ignoring GtkDrawingArea command \"drawingarea1:set_line_cap 1 butt butt\""
1282 check_error "drawingarea1:set_line_join" \
1283 "ignoring GtkDrawingArea command \"drawingarea1:set_line_join\""
1284 check_error "drawingarea1:set_line_join " \
1285 "ignoring GtkDrawingArea command \"drawingarea1:set_line_join \""
1286 check_error "drawingarea1:set_line_join nnn" \
1287 "ignoring GtkDrawingArea command \"drawingarea1:set_line_join nnn\""
1288 check_error "drawingarea1:set_line_join $BIG_STRING" \
1289 "ignoring GtkDrawingArea command \"drawingarea1:set_line_join $BIG_STRING\""
1290 check_error "drawingarea1:set_line_join 1" \
1291 "ignoring GtkDrawingArea command \"drawingarea1:set_line_join 1\""
1292 check_error "drawingarea1:set_line_join 1 nnn" \
1293 "ignoring GtkDrawingArea command \"drawingarea1:set_line_join 1 nnn\""
1294 check_error "drawingarea1:set_line_join 1 miter miter" \
1295 "ignoring GtkDrawingArea command \"drawingarea1:set_line_join 1 miter miter\""
1296 check_error "drawingarea1:set_line_width" \
1297 "ignoring GtkDrawingArea command \"drawingarea1:set_line_width\""
1298 check_error "drawingarea1:set_line_width " \
1299 "ignoring GtkDrawingArea command \"drawingarea1:set_line_width \""
1300 check_error "drawingarea1:set_line_width nnn" \
1301 "ignoring GtkDrawingArea command \"drawingarea1:set_line_width nnn\""
1302 check_error "drawingarea1:set_line_width $BIG_STRING" \
1303 "ignoring GtkDrawingArea command \"drawingarea1:set_line_width $BIG_STRING\""
1304 check_error "drawingarea1:set_line_width 1" \
1305 "ignoring GtkDrawingArea command \"drawingarea1:set_line_width 1\""
1306 check_error "drawingarea1:set_line_width 1 nnn" \
1307 "ignoring GtkDrawingArea command \"drawingarea1:set_line_width 1 nnn\""
1308 check_error "drawingarea1:set_line_width 1 3 3" \
1309 "ignoring GtkDrawingArea command \"drawingarea1:set_line_width 1 3 3\""
1310 check_error "drawingarea1:fill" \
1311 "ignoring GtkDrawingArea command \"drawingarea1:fill\""
1312 check_error "drawingarea1:fill " \
1313 "ignoring GtkDrawingArea command \"drawingarea1:fill \""
1314 check_error "drawingarea1:fill nnn" \
1315 "ignoring GtkDrawingArea command \"drawingarea1:fill nnn\""
1316 check_error "drawingarea1:fill $BIG_STRING" \
1317 "ignoring GtkDrawingArea command \"drawingarea1:fill $BIG_STRING\""
1318 check_error "drawingarea1:fill 1 1" \
1319 "ignoring GtkDrawingArea command \"drawingarea1:fill 1 1\""
1320 check_error "drawingarea1:fill_preserve" \
1321 "ignoring GtkDrawingArea command \"drawingarea1:fill_preserve\""
1322 check_error "drawingarea1:fill_preserve " \
1323 "ignoring GtkDrawingArea command \"drawingarea1:fill_preserve \""
1324 check_error "drawingarea1:fill_preserve nnn" \
1325 "ignoring GtkDrawingArea command \"drawingarea1:fill_preserve nnn\""
1326 check_error "drawingarea1:fill_preserve $BIG_STRING" \
1327 "ignoring GtkDrawingArea command \"drawingarea1:fill_preserve $BIG_STRING\""
1328 check_error "drawingarea1:fill_preserve 1 1" \
1329 "ignoring GtkDrawingArea command \"drawingarea1:fill_preserve 1 1\""
1330 check_error "drawingarea1:stroke" \
1331 "ignoring GtkDrawingArea command \"drawingarea1:stroke\""
1332 check_error "drawingarea1:stroke " \
1333 "ignoring GtkDrawingArea command \"drawingarea1:stroke \""
1334 check_error "drawingarea1:stroke nnn" \
1335 "ignoring GtkDrawingArea command \"drawingarea1:stroke nnn\""
1336 check_error "drawingarea1:stroke $BIG_STRING" \
1337 "ignoring GtkDrawingArea command \"drawingarea1:stroke $BIG_STRING\""
1338 check_error "drawingarea1:stroke 3 3" \
1339 "ignoring GtkDrawingArea command \"drawingarea1:stroke 3 3\""
1340 check_error "drawingarea1:stroke_preserve" \
1341 "ignoring GtkDrawingArea command \"drawingarea1:stroke_preserve\""
1342 check_error "drawingarea1:stroke_preserve " \
1343 "ignoring GtkDrawingArea command \"drawingarea1:stroke_preserve \""
1344 check_error "drawingarea1:stroke_preserve nnn" \
1345 "ignoring GtkDrawingArea command \"drawingarea1:stroke_preserve nnn\""
1346 check_error "drawingarea1:stroke_preserve $BIG_STRING" \
1347 "ignoring GtkDrawingArea command \"drawingarea1:stroke_preserve $BIG_STRING\""
1348 check_error "drawingarea1:stroke_preserve 3 3" \
1349 "ignoring GtkDrawingArea command \"drawingarea1:stroke_preserve 3 3\""
1350 check_error "drawingarea1:remove" \
1351 "ignoring GtkDrawingArea command \"drawingarea1:remove\""
1352 check_error "drawingarea1:remove " \
1353 "ignoring GtkDrawingArea command \"drawingarea1:remove \""
1354 check_error "drawingarea1:remove nnn" \
1355 "ignoring GtkDrawingArea command \"drawingarea1:remove nnn\""
1356 check_error "drawingarea1:remove $BIG_STRING" \
1357 "ignoring GtkDrawingArea command \"drawingarea1:remove $BIG_STRING\""
1358 check_error "drawingarea1:remove 1 1" \
1359 "ignoring GtkDrawingArea command \"drawingarea1:remove 1 1\""
1360 check_error "drawingarea1:set_show_text" \
1361 "ignoring GtkDrawingArea command \"drawingarea1:set_show_text\""
1362 check_error "drawingarea1:set_show_text " \
1363 "ignoring GtkDrawingArea command \"drawingarea1:set_show_text \""
1364 check_error "drawingarea1:set_show_text nnn" \
1365 "ignoring GtkDrawingArea command \"drawingarea1:set_show_text nnn\""
1366 check_error "drawingarea1:set_show_text $BIG_STRING" \
1367 "ignoring GtkDrawingArea command \"drawingarea1:set_show_text $BIG_STRING\""
1368 check_error "drawingarea1:set_font_face" \
1369 "ignoring GtkDrawingArea command \"drawingarea1:set_font_face\""
1370 check_error "drawingarea1:set_font_face " \
1371 "ignoring GtkDrawingArea command \"drawingarea1:set_font_face \""
1372 check_error "drawingarea1:set_font_face nnn" \
1373 "ignoring GtkDrawingArea command \"drawingarea1:set_font_face nnn\""
1374 check_error "drawingarea1:set_font_face $BIG_STRING" \
1375 "ignoring GtkDrawingArea command \"drawingarea1:set_font_face $BIG_STRING\""
1376 check_error "drawingarea1:set_font_face 1" \
1377 "ignoring GtkDrawingArea command \"drawingarea1:set_font_face 1\""
1378 check_error "drawingarea1:set_font_face 1 normal" \
1379 "ignoring GtkDrawingArea command \"drawingarea1:set_font_face 1 normal\""
1380 check_error "drawingarea1:set_font_size" \
1381 "ignoring GtkDrawingArea command \"drawingarea1:set_font_size\""
1382 check_error "drawingarea1:set_font_size " \
1383 "ignoring GtkDrawingArea command \"drawingarea1:set_font_size \""
1384 check_error "drawingarea1:set_font_size nnn" \
1385 "ignoring GtkDrawingArea command \"drawingarea1:set_font_size nnn\""
1386 check_error "drawingarea1:set_font_size $BIG_STRING" \
1387 "ignoring GtkDrawingArea command \"drawingarea1:set_font_size $BIG_STRING\""
1388 check_error "drawingarea1:set_font_size 1" \
1389 "ignoring GtkDrawingArea command \"drawingarea1:set_font_size 1\""
1390 check_error "drawingarea1:set_font_size 1 nnn" \
1391 "ignoring GtkDrawingArea command \"drawingarea1:set_font_size 1 nnn\""
1392 check_error "drawingarea1:set_font_size 1 10 10" \
1393 "ignoring GtkDrawingArea command \"drawingarea1:set_font_size 1 10 10\""
1394 check_error "drawingarea1:set_font_face" \
1395 "ignoring GtkDrawingArea command \"drawingarea1:set_font_face\""
1396 check_error "drawingarea1:set_font_face 1" \
1397 "ignoring GtkDrawingArea command \"drawingarea1:set_font_face 1\""
1398 check_error "drawingarea1:set_font_face 1 normal" \
1399 "ignoring GtkDrawingArea command \"drawingarea1:set_font_face 1 normal\""
1400 check_error "drawingarea1:set_font_face 1 normal nnn" \
1401 "ignoring GtkDrawingArea command \"drawingarea1:set_font_face 1 normal nnn\""
1402 check_error "drawingarea1:set_font_face 1 nnn normal" \
1403 "ignoring GtkDrawingArea command \"drawingarea1:set_font_face 1 nnn normal\""
1404 check_error "drawingarea1:set_font_face 1 normal $BIG_STRING" \
1405 "ignoring GtkDrawingArea command \"drawingarea1:set_font_face 1 normal $BIG_STRING\""
1406 check_error "drawingarea1:set_font_face 1 $BIG_STRING normal" \
1407 "ignoring GtkDrawingArea command \"drawingarea1:set_font_face 1 $BIG_STRING normal\""
1408 check_error "drawingarea1:set_font_face x normal normal" \
1409 "ignoring GtkDrawingArea command \"drawingarea1:set_font_face x normal normal\""
1410 check_error "drawingarea1:rel_move_for" \
1411 "ignoring GtkDrawingArea command \"drawingarea1:rel_move_for\""
1412 check_error "drawingarea1:rel_move_for " \
1413 "ignoring GtkDrawingArea command \"drawingarea1:rel_move_for \""
1414 check_error "drawingarea1:rel_move_for 1" \
1415 "ignoring GtkDrawingArea command \"drawingarea1:rel_move_for 1\""
1416 check_error "drawingarea1:rel_move_for 1 nnn Text" \
1417 "ignoring GtkDrawingArea command \"drawingarea1:rel_move_for 1 nnn Text\""
1418 check_error "drawingarea1:rel_move_for 1 $BIG_STRING Text" \
1419 "ignoring GtkDrawingArea command \"drawingarea1:rel_move_for 1 $BIG_STRING Text\""
1420 check_error "drawingarea1:rel_move_for nnn c Text" \
1421 "ignoring GtkDrawingArea command \"drawingarea1:rel_move_for nnn c Text\""
1422 check_error "drawingarea1:transform" \
1423 "ignoring GtkDrawingArea command \"drawingarea1:transform\""
1424 check_error "drawingarea1:transform " \
1425 "ignoring GtkDrawingArea command \"drawingarea1:transform \""
1426 check_error "drawingarea1:transform nnn" \
1427 "ignoring GtkDrawingArea command \"drawingarea1:transform nnn\""
1428 check_error "drawingarea1:transform $BIG_STRING" \
1429 "ignoring GtkDrawingArea command \"drawingarea1:transform $BIG_STRING\""
1430 check_error "drawingarea1:transform 1 2" \
1431 "ignoring GtkDrawingArea command \"drawingarea1:transform 1 2\""
1432 check_error "drawingarea1:transform 1 2 3" \
1433 "ignoring GtkDrawingArea command \"drawingarea1:transform 1 2 3\""
1434 check_error "drawingarea1:transform 1 2 3 4" \
1435 "ignoring GtkDrawingArea command \"drawingarea1:transform 1 2 3 4\""
1436 check_error "drawingarea1:transform 1 2 3 4 5" \
1437 "ignoring GtkDrawingArea command \"drawingarea1:transform 1 2 3 4 5\""
1438 check_error "drawingarea1:transform 1 2 3 4 5 6" \
1439 "ignoring GtkDrawingArea command \"drawingarea1:transform 1 2 3 4 5 6\""
1440 check_error "drawingarea1:transform 1 2 3 x 5 6 7" \
1441 "ignoring GtkDrawingArea command \"drawingarea1:transform 1 2 3 x 5 6 7\""
1442 check_error "drawingarea1:transform 1 2 3 4 5 6 7 8" \
1443 "ignoring GtkDrawingArea command \"drawingarea1:transform 1 2 3 4 5 6 7 8\""
1444 check_error "drawingarea1:translate" \
1445 "ignoring GtkDrawingArea command \"drawingarea1:translate\""
1446 check_error "drawingarea1:translate " \
1447 "ignoring GtkDrawingArea command \"drawingarea1:translate \""
1448 check_error "drawingarea1:translate nnn" \
1449 "ignoring GtkDrawingArea command \"drawingarea1:translate nnn\""
1450 check_error "drawingarea1:translate $BIG_STRING" \
1451 "ignoring GtkDrawingArea command \"drawingarea1:translate $BIG_STRING\""
1452 check_error "drawingarea1:translate 1" \
1453 "ignoring GtkDrawingArea command \"drawingarea1:translate 1\""
1454 check_error "drawingarea1:translate 1 2" \
1455 "ignoring GtkDrawingArea command \"drawingarea1:translate 1 2\""
1456 check_error "drawingarea1:translate nnn 2 3" \
1457 "ignoring GtkDrawingArea command \"drawingarea1:translate nnn 2 3\""
1458 check_error "drawingarea1:translate 1 x 3" \
1459 "ignoring GtkDrawingArea command \"drawingarea1:translate 1 x 3\""
1460 check_error "drawingarea1:translate 1 2 3 4" \
1461 "ignoring GtkDrawingArea command \"drawingarea1:translate 1 2 3 4\""
1462 check_error "drawingarea1:scale" \
1463 "ignoring GtkDrawingArea command \"drawingarea1:scale\""
1464 check_error "drawingarea1:scale " \
1465 "ignoring GtkDrawingArea command \"drawingarea1:scale \""
1466 check_error "drawingarea1:scale nnn" \
1467 "ignoring GtkDrawingArea command \"drawingarea1:scale nnn\""
1468 check_error "drawingarea1:scale $BIG_STRING" \
1469 "ignoring GtkDrawingArea command \"drawingarea1:scale $BIG_STRING\""
1470 check_error "drawingarea1:scale 1" \
1471 "ignoring GtkDrawingArea command \"drawingarea1:scale 1\""
1472 check_error "drawingarea1:scale 1 2" \
1473 "ignoring GtkDrawingArea command \"drawingarea1:scale 1 2\""
1474 check_error "drawingarea1:scale nnn 2 3" \
1475 "ignoring GtkDrawingArea command \"drawingarea1:scale nnn 2 3\""
1476 check_error "drawingarea1:scale 1 x 3" \
1477 "ignoring GtkDrawingArea command \"drawingarea1:scale 1 x 3\""
1478 check_error "drawingarea1:scale 1 2 3 4" \
1479 "ignoring GtkDrawingArea command \"drawingarea1:scale 1 2 3 4\""
1480 check_error "drawingarea1:rotate" \
1481 "ignoring GtkDrawingArea command \"drawingarea1:rotate\""
1482 check_error "drawingarea1:rotate " \
1483 "ignoring GtkDrawingArea command \"drawingarea1:rotate \""
1484 check_error "drawingarea1:rotate 1" \
1485 "ignoring GtkDrawingArea command \"drawingarea1:rotate 1\""
1486 check_error "drawingarea1:rotate nnn 2" \
1487 "ignoring GtkDrawingArea command \"drawingarea1:rotate nnn 2\""
1488 check_error "drawingarea1:rotate $BIG_STRING 2" \
1489 "ignoring GtkDrawingArea command \"drawingarea1:rotate $BIG_STRING 2\""
1490 check_error "drawingarea1:rotate 1 x" \
1491 "ignoring GtkDrawingArea command \"drawingarea1:rotate 1 x\""
1492 check_error "drawingarea1:rotate 1 10 10" \
1493 "ignoring GtkDrawingArea command \"drawingarea1:rotate 1 10 10\""
1494 check_error "drawingarea1:snapshot" \
1495 "ignoring GtkDrawingArea command \"drawingarea1:snapshot\""
1496 check_error "drawingarea1:snapshot " \
1497 "ignoring GtkDrawingArea command \"drawingarea1:snapshot \""
1498 check_error "drawingarea1:snapshot x" \
1499 "ignoring GtkDrawingArea command \"drawingarea1:snapshot x\""
1500 check_error "drawingarea1:snapshot $BIG_STRING" \
1501 "ignoring GtkDrawingArea command \"drawingarea1:snapshot $BIG_STRING\""
1502 check_error "drawingarea1:snapshot x.yz" \
1503 "ignoring GtkDrawingArea command \"drawingarea1:snapshot x.yz\""
1504 check_error "drawingarea1:snapshot x.pdf 2" \
1505 "ignoring GtkDrawingArea command \"drawingarea1:snapshot x.pdf 2\""
1506 check_error "drawingarea1:snapshot xsvg" \
1507 "ignoring GtkDrawingArea command \"drawingarea1:snapshot xsvg\""
1510 echo "-:main_quit" >$FIN
1511 check_rm $FIN
1514 if test $AUTOMATIC; then
1516 ## Logging to stderr
1517 read r 2< $FERR &
1518 ./pipeglade -i $FIN 2> $FERR -l - &
1519 # wait for $FIN to appear
1520 while test ! \( -e $FIN -a -e $FERR \); do :; done
1522 check_error "# Comment" \
1523 "########## ##### (New Pipeglade session) #####"
1524 check_error "" \
1525 "### (Idle) ###"
1526 check_error "-:main_quit" \
1527 " # Comment"
1528 check_rm $FIN
1529 rm $FERR
1533 #exit
1535 echo "
1536 # BATCH THREE
1538 # Tests for the principal functionality---valid actions leading to
1539 # correct results. Manual intervention is required. Instructions
1540 # will be given on the statusbar of the test GUI.
1541 ######################################################################
1544 mkfifo $FOUT
1546 # check nr_of_feedback_msgs user_instruction command expected_feedback1 expected_feedback2 ...
1547 check() {
1548 while test ! \( -e $FOUT \); do :; done
1549 # Flush stale pipeglade output
1550 while read -t .1 <$FOUT; do : ; done
1551 N=$1
1552 INSTRUCTION="$2"
1553 echo "$SEND ${3:0:300}"
1554 if test "$INSTRUCTION"; then
1555 echo -e "statusbar1:push_id =check= $INSTRUCTION" >$FIN
1557 while test ! \( -e $FIN \); do :; done
1558 echo -e "$3" >$FIN
1560 while (( i<$N )); do
1561 read r <$FOUT
1562 if test "$r" != ""; then
1563 if grep -qFe "${4:0:300}" <<< ${r:0:300}; then
1564 count_ok
1565 echo " $OK ($i) ${r:0:300}"
1566 else
1567 count_fail
1568 echo " $FAIL($i) ${r:0:300}"
1569 echo " $EXPECTED ${4:0:300}"
1571 shift
1572 (( i+=1 ))
1574 done
1575 if test "$INSTRUCTION"; then
1576 echo -e "statusbar1:pop_id =check=" >$FIN
1581 if test $AUTOMATIC; then
1583 # Being impervious to locale
1584 LC_ALL=de_DE.UTF-8 ./pipeglade -i $FIN -o $FOUT -O $ERR_FILE -b >/dev/null
1585 check 0 "" \
1586 "drawingarea1:transform 1 1.5 1 1 1 1 1"
1587 check 0 "" \
1588 "progressbar1:set_fraction .5"
1589 check 1 "" \
1590 "scale1:set_value .5" \
1591 "scale1:value 0.50"
1592 sleep .5
1593 check 0 "" \
1594 "_:main_quit"
1595 sleep .5
1596 check_cmd "(! grep -qe \"ignoring GtkDrawingArea command\" $ERR_FILE)"
1597 check_cmd "(! grep -qe \"ignoring GtkProgressBar command\" $ERR_FILE)"
1598 check_cmd "(! grep -qe \"ignoring GtkScale command\" $ERR_FILE)"
1599 check_rm $FIN
1600 check_rm $FOUT
1601 rm $ERR_FILE
1603 # Logging to stderr while redirecting stderr
1604 ./pipeglade -i $FIN -o $FOUT -O $ERR_FILE -l - -b >/dev/null
1605 check 0 "" \
1606 "# Comment"
1607 check 0 "" \
1608 "BlahBlah"
1609 check 0 "" \
1610 "_:main_quit"
1612 check_cmd "grep -qe \"# Comment\" $ERR_FILE"
1613 check_cmd "grep -qe \"ignoring command\" $ERR_FILE"
1614 check_rm $FIN
1617 # check if stdout remains line buffered even if directed to file
1618 ./pipeglade -i $FIN >$OUT_FILE &
1619 # wait for $FIN and $OUT_FILE to appear
1620 while test ! \( -e $FIN -a -e $OUT_FILE \); do :; done
1621 echo "button1:force" >$FIN
1622 check_cmd "grep -qe 'button1:clicked' $OUT_FILE"
1623 echo "_:main_quit" >$FIN
1624 rm -f $OUT_FILE
1627 ./pipeglade -i $FIN -o $FOUT -b >$PID_FILE
1628 check_cmd "kill `cat $PID_FILE /dev/null` 2&>/dev/null"
1629 rm $FIN $FOUT
1632 ./pipeglade --display ${DISPLAY-:0} -i $FIN -o $FOUT -b >/dev/null
1633 check 0 "" \
1634 "# checking --display $DISPLAY\n _:main_quit"
1635 check_rm $FIN
1636 check_rm $FOUT
1639 ./pipeglade -u simple_dialog.ui -i $FIN -o $FOUT -b >$PID_FILE
1640 check_cmd "ps -p `cat $PID_FILE` >/dev/null"
1641 check 1 "" \
1642 "main_apply:force" \
1643 "main_apply:clicked"
1644 check 0 "" \
1645 "main_cancel:force"
1646 check_rm $FIN
1647 check_rm $FOUT
1648 check_cmd "! ps -p `cat $PID_FILE` >/dev/null"
1649 rm $PID_FILE
1652 ./pipeglade -u simple_dialog.ui -i $FIN -o $FOUT -b >/dev/null
1653 check 1 "" \
1654 "button1:force" \
1655 "button1:clicked"
1656 check 1 "" \
1657 "main_ok:force" \
1658 "main_ok:clicked"
1659 check_rm $FIN
1660 check_rm $FOUT
1663 ./pipeglade -u simple_open.ui -i $FIN -o $FOUT >/dev/null &
1664 # wait for $FIN and $OUT_FILE to appear
1665 while test ! \( -e $FIN -a -e $FOUT \); do :; done
1666 check 3 "" \
1667 "main_apply:force" \
1668 "main_apply:clicked" \
1669 "main:file" \
1670 "main:folder"
1671 check 0 "" \
1672 "main_cancel:force"
1673 check_rm $FIN
1674 check_rm $FOUT
1677 ./pipeglade -u simple_open.ui -i $FIN -o $FOUT >/dev/null &
1678 # wait for $FIN and $OUT_FILE to appear
1679 while test ! \( -e $FIN -a -e $FOUT \); do :; done
1680 check 2 "" \
1681 "main_ok:force" \
1682 "main_ok:clicked" \
1683 "main:file"
1684 check_rm $FIN
1685 check_rm $FOUT
1688 mkfifo -m 777 $FIN
1689 mkfifo -m 777 $FOUT
1690 touch $ERR_FILE $LOG
1691 chmod 777 $ERR_FILE $LOG
1692 ./pipeglade -i $FIN -o $FOUT -O $ERR_FILE -l $LOG -b >/dev/null
1693 check_cmd "$STAT_CMD $FIN | grep -q '600$' 2>/dev/null"
1694 check_cmd "$STAT_CMD $FOUT | grep -q '600$' 2>/dev/null"
1695 check_cmd "$STAT_CMD $ERR_FILE | grep -q '600$' 2>/dev/null"
1696 check_cmd "$STAT_CMD $LOG | grep -q '600$' 2>/dev/null"
1697 echo -e "_:main_quit" > $FIN
1698 check_rm $FIN
1699 check_rm $FOUT
1700 rm -f $ERR_FILE $LOG
1703 ./pipeglade -i $FIN -o $FOUT -O $ERR_FILE -l $LOG -b >/dev/null
1704 check_cmd "$STAT_CMD $FIN | grep -q '600$' 2>/dev/null"
1705 check_cmd "$STAT_CMD $FOUT | grep -q '600$' 2>/dev/null"
1706 check_cmd "$STAT_CMD $ERR_FILE | grep -q '600$' 2>/dev/null"
1707 check_cmd "$STAT_CMD $LOG | grep -q '600$' 2>/dev/null"
1708 echo -e "_:main_quit" > $FIN
1709 check_rm $FIN
1710 check_rm $FOUT
1711 rm -f $ERR_FILE $LOG
1713 ./pipeglade -u clock.ui -i $FIN -o $FOUT -b
1714 check 0 "" \
1715 "main:resize 500 600\n main:move 100 100"
1716 check_cmd 'test $(xdotool search --name pipeglade-clock getwindowgeometry --shell | grep -c -e "X=...$" -e "Y=...$" -e "WIDTH=500" -e "HEIGHT=600") -eq 4'
1717 check 0 "" \
1718 "main:resize\n main:move 0 0"
1719 check_cmd 'test $(xdotool search --name pipeglade-clock getwindowgeometry --shell | grep -c -e "X=.$" -e "Y=.$" -e "WIDTH=440" -e "HEIGHT=440") -eq 4'
1720 check 0 "" \
1721 "main:fullscreen"
1722 check_cmd 'test $(xdotool search --name pipeglade-clock getwindowgeometry --shell | grep -c -e "WIDTH=..." -e "HEIGHT=...") -eq 2'
1723 check 0 "" \
1724 "main:unfullscreen"
1725 check_cmd 'test $(xdotool search --name pipeglade-clock getwindowgeometry --shell | grep -c -e "WIDTH=440" -e "HEIGHT=440") -eq 2'
1726 check 0 "" \
1727 "main:set_title Another Title!"
1728 check_cmd 'xdotool search --name "Another Title!" getwindowname | grep -qe "Another Title!"'
1729 check 0 "" \
1730 "_:main_quit"
1734 echo "#### # Initial line to check if -l option appends" >$LOG
1735 LC_NUMERIC=de_DE.UTF-8 ./pipeglade -i $FIN -o $FOUT -l $LOG -b >/dev/null
1738 if test $AUTOMATIC; then
1740 check 0 "" \
1741 "socket1:id"
1742 read XID <$FOUT
1743 XID=${XID/socket1:id }
1744 (sleep .5; ./pipeglade -u simple_dialog.ui -e $XID <<< "main_cancel:force") >/dev/null &
1745 check 2 "" \
1746 "" \
1747 "socket1:plug-added" \
1748 "socket1:plug-removed"
1749 (sleep .5; ./pipeglade -u simple_dialog.ui -e $XID <<< "main_cancel:force") >/dev/null &
1750 check 2 "" \
1751 "" \
1752 "socket1:plug-added" \
1753 "socket1:plug-removed"
1755 check 1 "" \
1756 "entry1:set_text FFFF" \
1757 "entry1:text FFFF"
1758 check 1 "" \
1759 "entry1:block 1\n entry1:set_text XXXXX\n entry1:block 0\n entry1:set_text EEEE" \
1760 "entry1:text EEEE"
1761 check 1 "" \
1762 "entry1:set_text $BIG_STRING" \
1763 "entry1:text $BIG_STRING"
1764 check 1 "" \
1765 "entry1:set_text" \
1766 "entry1:text"
1767 check 1 "" \
1768 "entry1:set_text FFFF" \
1769 "entry1:text FFFF"
1770 check 1 "" \
1771 "entry1:set_text " \
1772 "entry1:text"
1773 check 0 "" \
1774 "entry1:set_placeholder_text hint hint" # not much of a test
1775 check 1 "" \
1776 "entry1:set_text FFFF" \
1777 "entry1:text FFFF"
1778 check 1 "" \
1779 "entry1:set_text GGGG" \
1780 "entry1:text GGGG"
1781 check 1 "" \
1782 "entry1:force" \
1783 "entry1:text GGGG"
1784 check 1 "" \
1785 "spinbutton1:block 1\n spinbutton1:set_text 29.0\n spinbutton1:block 0\n spinbutton1:set_text 28.0\n" \
1786 "spinbutton1:text 28.0"
1787 check 2 "" \
1788 "spinbutton1:set_text 33.0\n spinbutton1:set_range 50 60\n" \
1789 "spinbutton1:text 33.0" \
1790 "spinbutton1:text 50.0"
1791 check 1 "" \
1792 "radiobutton2:block 1\n radiobutton2:set_active 1\n radiobutton2:block 0" \
1793 "radiobutton1:0"
1794 check 2 "" \
1795 "radiobutton1:set_active 1" \
1796 "radiobutton2:0" \
1797 "radiobutton1:1"
1798 check 1 "" \
1799 "switch1:set_active 1\n switch1:block 1\n switch1:set_active 0" \
1800 "switch1:1"
1801 check 1 "" \
1802 "switch1:set_active 1\n switch1:block 0\n switch1:set_active 0" \
1803 "switch1:0"
1804 # Although this should be handled gracefully, it mangles the UI too much
1805 # check 0 "" \
1806 # "progressbar1:set_text $BIG_STRING"
1807 check 0 "" \
1808 "progressbar1:set_text This Is A Progressbar."
1809 check 3 "" \
1810 "label1:ping\n button1:ping\n main:ping" \
1811 "label1:ping" \
1812 "button1:ping" \
1813 "main:ping"
1817 check 1 "" \
1818 "togglebutton1:set_active 1" \
1819 "togglebutton1:1"
1820 check 1 "" \
1821 "togglebutton1:block 1\n togglebutton1:set_active 0\n togglebutton1:block 0\n togglebutton1:set_active 1" \
1822 "togglebutton1:1"
1823 check 1 "" \
1824 "calendar1:block 1\n calendar1:select_date 1752-05-17\n calendar1:block 0\n calendar1:select_date 1752-05-18" \
1825 "calendar1:clicked 1752-05-18"
1826 check 1 "" \
1827 "calendar1:select_date 1752-03-29" \
1828 "calendar1:clicked 1752-03-29"
1830 if test $INTERACTIVE; then
1831 check 1 "Open what should now be named \"EXPANDER\" and click the \"button inside expander\"" \
1832 "expander1:set_expanded 0\n expander1:set_label EXPANDER" \
1833 "button6:clicked"
1834 check 0 "" \
1835 "expander1:set_expanded 0"
1838 check 24 "" \
1839 "treeview1:set_cursor 1\n treeview1:block 1\n treeview1:set_cursor 1\n treeview1:block 0\n treeview1:set_cursor 1" \
1840 "treeview1:clicked" \
1841 "treeview1:gboolean 1 0 1" \
1842 "treeview1:gint 1 1 1" \
1843 "treeview1:guint 1 2 0" \
1844 "treeview1:glong 1 3 0" \
1845 "treeview1:glong 1 4 0" \
1846 "treeview1:glong 1 5 0" \
1847 "treeview1:gulong 1 6 0" \
1848 "treeview1:gfloat 1 7 0.000000" \
1849 "treeview1:gdouble 1 8 0.000000" \
1850 "treeview1:gchararray 1 9 def" \
1851 "treeview1:gchararray 1 10 blue" \
1852 "treeview1:clicked" \
1853 "treeview1:gboolean 1 0 1" \
1854 "treeview1:gint 1 1 1" \
1855 "treeview1:guint 1 2 0" \
1856 "treeview1:glong 1 3 0" \
1857 "treeview1:glong 1 4 0" \
1858 "treeview1:glong 1 5 0" \
1859 "treeview1:gulong 1 6 0" \
1860 "treeview1:gfloat 1 7 0.000000" \
1861 "treeview1:gdouble 1 8 0.000000" \
1862 "treeview1:gchararray 1 9 def" \
1863 "treeview1:gchararray 1 10 blue"
1865 check 12 "" \
1866 "treeview2:set_visible 0\n treeview1:set 2 0 1\n treeview1:set 2 1 -30000\n treeview1:set 2 2 66\n treeview1:set 2 3 -2000000000\n treeview1:set 2 4 4000000000\n treeview1:set 2 5 -2000000000\n treeview1:set 2 6 4000000000\n treeview1:set 2 7 3.141\n treeview1:set 2 8 3.141\n treeview1:set 2 9 TEXT\n treeview1:set_cursor 2" \
1867 "treeview1:clicked" \
1868 "treeview1:gboolean 2 0 1" \
1869 "treeview1:gint 2 1 -30000" \
1870 "treeview1:guint 2 2 66" \
1871 "treeview1:glong 2 3 -2000000000" \
1872 "treeview1:glong 2 4 4000000000" \
1873 "treeview1:glong 2 5 -2000000000" \
1874 "treeview1:gulong 2 6 4000000000" \
1875 "treeview1:gfloat 2 7 3.141000" \
1876 "treeview1:gdouble 2 8 3.141000" \
1877 "treeview1:gchararray 2 9 TEXT" \
1878 "treeview1:gchararray 2 10 cyan"
1879 mkdir -p $DIR
1880 check 0 "" \
1881 "treeview1:save $DIR/$FILE1"
1882 check 0 "" \
1883 "treeview1:save $DIR/$FILE1.bak"
1884 check 1 "" \
1885 "treeview1:set_cursor" \
1886 "treeview1:clicked"
1887 check 12 "" \
1888 "treeview1:insert_row 0\n treeview1:insert_row 2\n treeview1:set_cursor 4" \
1889 "treeview1:clicked" \
1890 "treeview1:gboolean 4 0 1" \
1891 "treeview1:gint 4 1 -30000" \
1892 "treeview1:guint 4 2 66" \
1893 "treeview1:glong 4 3 -2000000000" \
1894 "treeview1:glong 4 4 4000000000" \
1895 "treeview1:glong 4 5 -2000000000" \
1896 "treeview1:gulong 4 6 4000000000" \
1897 "treeview1:gfloat 4 7 3.141000" \
1898 "treeview1:gdouble 4 8 3.141000" \
1899 "treeview1:gchararray 4 9 TEXT" \
1900 "treeview1:gchararray 4 10 cyan"
1901 check 1 "" \
1902 "treeview1:set_cursor" \
1903 "treeview1:clicked"
1904 check 12 "" \
1905 "treeview1:move_row 4 0\n treeview1:set_cursor 0" \
1906 "treeview1:clicked" \
1907 "treeview1:gboolean 0 0 1" \
1908 "treeview1:gint 0 1 -30000" \
1909 "treeview1:guint 0 2 66" \
1910 "treeview1:glong 0 3 -2000000000" \
1911 "treeview1:glong 0 4 4000000000" \
1912 "treeview1:glong 0 5 -2000000000" \
1913 "treeview1:gulong 0 6 4000000000" \
1914 "treeview1:gfloat 0 7 3.141000" \
1915 "treeview1:gdouble 0 8 3.141000" \
1916 "treeview1:gchararray 0 9 TEXT" \
1917 "treeview1:gchararray 0 10 cyan"
1918 check 1 "" \
1919 "treeview1:set_cursor" \
1920 "treeview1:clicked"
1921 check 12 "" \
1922 "treeview1:move_row 0 2\n treeview1:set_cursor 1" \
1923 "treeview1:clicked" \
1924 "treeview1:gboolean 1 0 1" \
1925 "treeview1:gint 1 1 -30000" \
1926 "treeview1:guint 1 2 66" \
1927 "treeview1:glong 1 3 -2000000000" \
1928 "treeview1:glong 1 4 4000000000" \
1929 "treeview1:glong 1 5 -2000000000" \
1930 "treeview1:gulong 1 6 4000000000" \
1931 "treeview1:gfloat 1 7 3.141000" \
1932 "treeview1:gdouble 1 8 3.141000" \
1933 "treeview1:gchararray 1 9 TEXT" \
1934 "treeview1:gchararray 1 10 cyan"
1935 check 1 "" \
1936 "treeview1:set_cursor" \
1937 "treeview1:clicked"
1938 check 12 "" \
1939 "treeview1:insert_row end\n treeview1:move_row 1 end\n treeview1:set_cursor 6" \
1940 "treeview1:clicked" \
1941 "treeview1:gboolean 6 0 1" \
1942 "treeview1:gint 6 1 -30000" \
1943 "treeview1:guint 6 2 66" \
1944 "treeview1:glong 6 3 -2000000000" \
1945 "treeview1:glong 6 4 4000000000" \
1946 "treeview1:glong 6 5 -2000000000" \
1947 "treeview1:gulong 6 6 4000000000" \
1948 "treeview1:gfloat 6 7 3.141000" \
1949 "treeview1:gdouble 6 8 3.141000" \
1950 "treeview1:gchararray 6 9 TEXT" \
1951 "treeview1:gchararray 6 10 cyan"
1952 check 1 "" \
1953 "treeview1:set_cursor" \
1954 "treeview1:clicked"
1955 check 12 "" \
1956 "treeview1:remove_row 0\n treeview1:remove_row 2\n treeview1:set_cursor 4" \
1957 "treeview1:clicked" \
1958 "treeview1:gboolean 4 0 1" \
1959 "treeview1:gint 4 1 -30000" \
1960 "treeview1:guint 4 2 66" \
1961 "treeview1:glong 4 3 -2000000000" \
1962 "treeview1:glong 4 4 4000000000" \
1963 "treeview1:glong 4 5 -2000000000" \
1964 "treeview1:gulong 4 6 4000000000" \
1965 "treeview1:gfloat 4 7 3.141000" \
1966 "treeview1:gdouble 4 8 3.141000" \
1967 "treeview1:gchararray 4 9 TEXT" \
1968 "treeview1:gchararray 4 10 cyan"
1969 check 1 "" \
1970 "treeview1:set_cursor" \
1971 "treeview1:clicked"
1972 check 12 "" \
1973 "treeview1:move_row 0 end\n treeview1:set_cursor 3" \
1974 "treeview1:clicked" \
1975 "treeview1:gboolean 3 0 1" \
1976 "treeview1:gint 3 1 -30000" \
1977 "treeview1:guint 3 2 66" \
1978 "treeview1:glong 3 3 -2000000000" \
1979 "treeview1:glong 3 4 4000000000" \
1980 "treeview1:glong 3 5 -2000000000" \
1981 "treeview1:gulong 3 6 4000000000" \
1982 "treeview1:gfloat 3 7 3.141000" \
1983 "treeview1:gdouble 3 8 3.141000" \
1984 "treeview1:gchararray 3 9 TEXT" \
1985 "treeview1:gchararray 3 10 cyan"
1986 check 24 "" \
1987 "treeview1:remove_row 3" \
1988 "treeview1:clicked" \
1989 "treeview1:gboolean 3 0 0" \
1990 "treeview1:gint 3 1 0" \
1991 "treeview1:guint 3 2 0" \
1992 "treeview1:glong 3 3 0" \
1993 "treeview1:glong 3 4 0" \
1994 "treeview1:glong 3 5 0" \
1995 "treeview1:gulong 3 6 0" \
1996 "treeview1:gfloat 3 7 0.000000" \
1997 "treeview1:gdouble 3 8 0.000000" \
1998 "treeview1:gchararray 3 9 abc" \
1999 "treeview1:gchararray 3 10 magenta" \
2000 "treeview1:clicked" \
2001 "treeview1:gboolean 3 0 0" \
2002 "treeview1:gint 3 1 0" \
2003 "treeview1:guint 3 2 0" \
2004 "treeview1:glong 3 3 0" \
2005 "treeview1:glong 3 4 0" \
2006 "treeview1:glong 3 5 0" \
2007 "treeview1:gulong 3 6 0" \
2008 "treeview1:gfloat 3 7 0.000000" \
2009 "treeview1:gdouble 3 8 0.000000" \
2010 "treeview1:gchararray 3 9 abc" \
2011 "treeview1:gchararray 3 10 magenta"
2013 if test $INTERACTIVE; then
2014 check 1 "Click column col4 in the lowest line visible in the scrolled area and type 444 <Enter> (scroll)" \
2015 "treeview1:insert_row 2\n treeview1:insert_row 2\n treeview1:insert_row 2\n treeview1:insert_row 2\n treeview1:insert_row 2\n treeview1:insert_row 2\n treeview1:insert_row 2\n treeview1:insert_row 2\n treeview1:insert_row 2\n treeview1:insert_row 2\n treeview1:insert_row 2\n treeview1:insert_row 2\n treeview1:insert_row 2\n treeview1:insert_row 2\n treeview1:insert_row 2\n treeview1:insert_row 2\n treeview1:insert_row 2\n treeview1:insert_row 2\n treeview1:insert_row 2\n treeview1:insert_row 2\n treeview1:insert_row 2\n treeview1:scroll 24 0" \
2016 "treeview1:gint 24 1 444"
2017 check 12 "Click column col3 in the highest line visible in the scrolled area (scroll)" \
2018 "treeview1:scroll 1 0" \
2019 "treeview1:clicked" \
2020 "treeview1:gboolean 1 0 1" \
2021 "treeview1:gint 1 1 3" \
2022 "treeview1:guint 1 2 0" \
2023 "treeview1:glong 1 3 0" \
2024 "treeview1:glong 1 4 0" \
2025 "treeview1:glong 1 5 0" \
2026 "treeview1:gulong 1 6 0" \
2027 "treeview1:gfloat 1 7 0.000000" \
2028 "treeview1:gdouble 1 8 0.000000" \
2029 "treeview1:gchararray 1 9 jkl" \
2030 "treeview1:gchararray 1 10 green"
2032 check 1 "Click the header of column \"col3\"" \
2033 "" \
2034 "treeviewcolumn3:clicked"
2037 check 2 "" \
2038 "treeview1:clear\n button1:force" \
2039 "treeview1:clicked" \
2040 "button1:clicked"
2042 check 12 "" \
2043 "treeview2:set_visible 1\n treeview2:insert_row end\n treeview2:insert_row 0 as_child\n treeview2:insert_row 0:0 as_child\n treeview2:insert_row 0:0\n treeview2:set 100:1:0 0 1\n treeview2:set 100:1:0 1 -30000\n treeview2:set 100:1:0 2 33\n treeview2:set 100:1:0 3 -2000000000\n treeview2:set 100:1:0 4 4000000000\n treeview2:set 100:1:0 5 -2000000000\n treeview2:set 100:1:0 6 4000000000\n treeview2:set 100:1:0 7 3.141\n treeview2:set 100:1:0 8 3.141\n treeview2:set 100:1:0 9 TEXT\n treeview2:expand_all\n treeview2:set_cursor 100:1:0" \
2044 "treeview2:clicked" \
2045 "treeview2:gboolean 100:1:0 0 1" \
2046 "treeview2:gint 100:1:0 1 -30000" \
2047 "treeview2:guint 100:1:0 2 33" \
2048 "treeview2:glong 100:1:0 3 -2000000000" \
2049 "treeview2:glong 100:1:0 4 4000000000" \
2050 "treeview2:glong 100:1:0 5 -2000000000" \
2051 "treeview2:gulong 100:1:0 6 4000000000" \
2052 "treeview2:gfloat 100:1:0 7 3.141000" \
2053 "treeview2:gdouble 100:1:0 8 3.141000" \
2054 "treeview2:gchararray 100:1:0 9 TEXT" \
2055 "treeview2:gchararray 100:1:0 10"
2056 check 1 "" \
2057 "treeview2:set_cursor" \
2058 "treeview2:clicked"
2059 check 12 "" \
2060 "treeview2:insert_row 0\n treeview2:insert_row 0\n treeview2:set 102:1 3 876543210\n treeview2:set 102 3 448822\n treeview2:collapse\n treeview2:set_cursor 102" \
2061 "treeview2:clicked" \
2062 "treeview2:gboolean 102 0 0" \
2063 "treeview2:gint 102 1 0" \
2064 "treeview2:guint 102 2 0" \
2065 "treeview2:glong 102 3 448822" \
2066 "treeview2:glong 102 4 0" \
2067 "treeview2:glong 102 5 0" \
2068 "treeview2:gulong 102 6 0" \
2069 "treeview2:gfloat 102 7 0.000000" \
2070 "treeview2:gdouble 102 8 0.000000" \
2071 "treeview2:gchararray 102 9" \
2072 "treeview2:gchararray 102 10"
2073 check 1 "" \
2074 "treeview2:set_cursor" \
2075 "treeview2:clicked"
2076 check 0 "" \
2077 "treeview2:save $DIR/$FILE2"
2078 check 0 "" \
2079 "treeview2:save $DIR/$FILE2.bak"
2080 check 12 "" \
2081 "treeview2:insert_row 0\n treeview2:collapse\n treeview2:set_cursor 103" \
2082 "treeview2:clicked" \
2083 "treeview2:gboolean 103 0 0" \
2084 "treeview2:gint 103 1 0" \
2085 "treeview2:guint 103 2 0" \
2086 "treeview2:glong 103 3 448822" \
2087 "treeview2:glong 103 4 0" \
2088 "treeview2:glong 103 5 0" \
2089 "treeview2:gulong 103 6 0" \
2090 "treeview2:gfloat 103 7 0.000000" \
2091 "treeview2:gdouble 103 8 0.000000" \
2092 "treeview2:gchararray 103 9" \
2093 "treeview2:gchararray 103 10"
2094 check 1 "" \
2095 "treeview2:set_cursor" \
2096 "treeview2:clicked"
2098 if test $INTERACTIVE; then
2099 check 12 "Click the lowest line visible in the scrolled area (1)" \
2100 "treeview2:expand_all 103\n treeview2:scroll 103:1:0 0" \
2101 "treeview2:clicked" \
2102 "treeview2:gboolean 103:1:0 0 1" \
2103 "treeview2:gint 103:1:0 1 -30000" \
2104 "treeview2:guint 103:1:0 2 33" \
2105 "treeview2:glong 103:1:0 3 -2000000000" \
2106 "treeview2:glong 103:1:0 4 4000000000" \
2107 "treeview2:glong 103:1:0 5 -2000000000" \
2108 "treeview2:gulong 103:1:0 6 4000000000" \
2109 "treeview2:gfloat 103:1:0 7 3.141000" \
2110 "treeview2:gdouble 103:1:0 8 3.141000" \
2111 "treeview2:gchararray 103:1:0 9 TEXT" \
2112 "treeview2:gchararray 103:1:0 10"
2113 check 1 "" \
2114 "treeview2:set_cursor" \
2115 "treeview2:clicked"
2116 check 12 "Click the lowest visible line (2)" \
2117 "treeview2:collapse\n treeview2:expand 103\n treeview2:scroll 103:1 0" \
2118 "treeview2:clicked" \
2119 "treeview2:gboolean 103:1 0 0" \
2120 "treeview2:gint 103:1 1 0" \
2121 "treeview2:guint 103:1 2 0" \
2122 "treeview2:glong 103:1 3 876543210" \
2123 "treeview2:glong 103:1 4 0" \
2124 "treeview2:glong 103:1 5 0" \
2125 "treeview2:gulong 103:1 6 0" \
2126 "treeview2:gfloat 103:1 7 0.000000" \
2127 "treeview2:gdouble 103:1 8 0.000000" \
2128 "treeview2:gchararray 103:1 9" \
2129 "treeview2:gchararray 103:1 10"
2130 check 1 "" \
2131 "treeview2:set_cursor" \
2132 "treeview2:clicked"
2133 check 12 "Click the lowest visible line (3)" \
2134 "treeview2:collapse\n treeview2:expand_all\n treeview2:scroll 103:1:0 0" \
2135 "treeview2:clicked" \
2136 "treeview2:gboolean 103:1:0 0 1" \
2137 "treeview2:gint 103:1:0 1 -30000" \
2138 "treeview2:guint 103:1:0 2 33" \
2139 "treeview2:glong 103:1:0 3 -2000000000" \
2140 "treeview2:glong 103:1:0 4 4000000000" \
2141 "treeview2:glong 103:1:0 5 -2000000000" \
2142 "treeview2:gulong 103:1:0 6 4000000000" \
2143 "treeview2:gfloat 103:1:0 7 3.141000" \
2144 "treeview2:gdouble 103:1:0 8 3.141000" \
2145 "treeview2:gchararray 103:1:0 9 TEXT" \
2146 "treeview2:gchararray 103:1:0 10"
2147 check 1 "" \
2148 "treeview2:set_cursor" \
2149 "treeview2:clicked"
2150 check 12 "Click the lowest visible line (4)" \
2151 "treeview2:expand_all\n treeview2:collapse 103:1\n treeview2:scroll 103:1 0" \
2152 "treeview2:clicked" \
2153 "treeview2:gboolean 103:1 0 0" \
2154 "treeview2:gint 103:1 1 0" \
2155 "treeview2:guint 103:1 2 0" \
2156 "treeview2:glong 103:1 3 876543210" \
2157 "treeview2:glong 103:1 4 0" \
2158 "treeview2:glong 103:1 5 0" \
2159 "treeview2:gulong 103:1 6 0" \
2160 "treeview2:gfloat 103:1 7 0.000000" \
2161 "treeview2:gdouble 103:1 8 0.000000" \
2162 "treeview2:gchararray 103:1 9" \
2163 "treeview2:gchararray 103:1 10"
2164 check 1 "" \
2165 "treeview2:set_cursor" \
2166 "treeview2:clicked"
2168 check 1 "Click the header of column \"col23\"" \
2169 "" \
2170 "treeviewcolumn23:clicked"
2174 if test $AUTOMATIC; then
2176 check 12 "" \
2177 "treeview1:clear\n treeview1:set 1 9 $BIG_STRING\n treeview1:set_cursor 1" \
2178 "treeview1:clicked" \
2179 "treeview1:gboolean 1 0 0" \
2180 "treeview1:gint 1 1 0" \
2181 "treeview1:guint 1 2 0" \
2182 "treeview1:glong 1 3 0" \
2183 "treeview1:glong 1 4 0" \
2184 "treeview1:glong 1 5 0" \
2185 "treeview1:gulong 1 6 0" \
2186 "treeview1:gfloat 1 7 0.000000" \
2187 "treeview1:gdouble 1 8 0.000000" \
2188 "treeview1:gchararray 1 9 $BIG_STRING" \
2189 "treeview1:gchararray 1 10"
2190 check 12 "" \
2191 "treeview1:clear\n treeview1:set 1 9 ABC\\\\nDEF\\\\nGHI\n treeview1:set_cursor 1" \
2192 "treeview1:clicked" \
2193 "treeview1:clicked" \
2194 "treeview1:gboolean 1 0 0" \
2195 "treeview1:gint 1 1 0" \
2196 "treeview1:guint 1 2 0" \
2197 "treeview1:glong 1 3 0" \
2198 "treeview1:glong 1 4 0" \
2199 "treeview1:glong 1 5 0" \
2200 "treeview1:gulong 1 6 0" \
2201 "treeview1:gfloat 1 7 0.000000" \
2202 "treeview1:gdouble 1 8 0.000000" \
2203 "treeview1:gchararray 1 9 ABCnDEFnGHI" \
2204 "treeview1:gchararray 1 10"
2205 check 0 "" \
2206 "treeview1:clear\n treeview2:clear"
2207 check 0 "" \
2208 "_:load $DIR/$FILE1"
2209 rm -f $DIR/$FILE1
2210 sleep .5
2211 check 1 "" \
2212 "treeview1:save $DIR/$FILE1\n button1:force" \
2213 "button1:clicked"
2214 check_cmd "cmp $DIR/$FILE1 $DIR/$FILE1.bak"
2215 check 0 "" \
2216 "treeview1:clear\n treeview2:clear"
2217 check 0 "" \
2218 "_:load $DIR/$FILE2"
2219 sleep .5
2220 rm -f $DIR/$FILE2
2221 sleep .5
2222 check 1 "" \
2223 "treeview2:save $DIR/$FILE2\n button1:force" \
2224 "button1:clicked"
2225 check_cmd "cmp $DIR/$FILE2 $DIR/$FILE2.bak"
2226 cat >$DIR/$FILE3 <<< "_:load $DIR/$FILE1.bak"
2227 cat >>$DIR/$FILE3 <<< "_:load $DIR/$FILE2.bak"
2228 cat >$DIR/$FILE4 <<< "_:load $DIR/$FILE3"
2229 cat >$DIR/$FILE5 <<< "_:load $DIR/$FILE4"
2230 cat >$DIR/$FILE6 <<< "_:load $DIR/$FILE5"
2231 rm -f $DIR/$FILE1 $DIR/$FILE2
2232 sleep .5
2233 check 0 "" \
2234 "treeview1:clear\n treeview2:clear"
2235 check 0 "" \
2236 "_:load $DIR/$FILE6"
2237 rm -f $DIR/$FILE1 $DIR/$FILE2
2238 sleep .5
2239 check 1 "" \
2240 "treeview1:save $DIR/$FILE1\n treeview2:save $DIR/$FILE2\n button1:force" \
2241 "button1:clicked"
2242 check_cmd "cmp $DIR/$FILE1 $DIR/$FILE1.bak"
2243 check_cmd "cmp $DIR/$FILE2 $DIR/$FILE2.bak"
2244 rm -rf $DIR
2245 check 0 "" \
2246 "treeview1:set 100 9 XXXYYY"
2247 check 0 "" \
2248 "treeview2:clear\n treeview2:set 2 0 1"
2250 check 0 "" \
2251 "notebook1:set_current_page 2"
2252 check 1 "" \
2253 "nonexistent_send_text:force" \
2254 "nonexistent_send_text:clicked"
2255 check 1 "" \
2256 "nonexistent_send_selection:force" \
2257 "nonexistent_send_selection:clicked"
2258 check 1 "" \
2259 "nonexistent_ok:force" \
2260 "nonexistent_ok:clicked"
2261 check 1 "" \
2262 "nonexistent_apply:force" \
2263 "nonexistent_apply:clicked"
2264 check 1 "" \
2265 "nonexistent_cancel:force" \
2266 "nonexistent_cancel:clicked"
2267 check 0 "" \
2268 "notebook1:set_current_page 1"
2269 check 1 "" \
2270 "textview1_send_text:force" \
2271 "textview1_send_text:text some textnetcn"
2272 check 1 "" \
2273 "textview1:place_cursor 5\n textview1:insert_at_cursor MORE \n textview1_send_text:force" \
2274 "textview1_send_text:text some MORE textnetcn"
2275 check 1 "" \
2276 "textview1:place_cursor_at_line 1\n textview1:insert_at_cursor ETC \n textview1_send_text:force" \
2277 "textview1_send_text:text some MORE textnETC etcn"
2278 mkdir -p $DIR
2279 check 1 "" \
2280 "textview1:save $DIR/$FILE1\n button1:force" \
2281 "button1:clicked"
2283 while (( i<2000 )); do
2284 (( i+=1 ))
2285 cat $DIR/$FILE1 >> $DIR/$FILE2
2286 done
2288 while (( i<2000 )); do
2289 (( i+=1 ))
2290 echo "textview2:insert_at_cursor ##### THIS IS LINE $i.\\n" >> $DIR/$FILE3
2291 done
2292 check 0 "" \
2293 "_:load $DIR/$FILE2"
2294 check 0 "" \
2295 "textview1:save $DIR/$FILE1"
2296 check 0 "" \
2297 "textview1:save $DIR/$FILE1"
2298 check 0 "" \
2299 "textview1:delete"
2300 check 0 "" \
2301 "textview2:delete"
2302 check 0 "" \
2303 "_:load $DIR/$FILE3"
2304 check 0 "" \
2305 "_:load $DIR/$FILE1"
2306 check 0 "" \
2307 "textview2:save $DIR/$FILE3"
2308 check 1 "" \
2309 "textview1:save $DIR/$FILE2\n button1:force" \
2310 "button1:clicked"
2311 check_cmd "cmp $DIR/$FILE1 $DIR/$FILE2"
2312 echo "textview1:insert_at_cursor I'm a text containing backslashes:\\nONE\\\\\nTWO\\\\\\\\\\nTHREE\\\\\\\\\\\\\\nEnd" > $DIR/$FILE1
2313 check 0 "" \
2314 "textview1:delete\n _:load $DIR/$FILE1"
2315 check 1 "" \
2316 "textview1:save $DIR/$FILE1\n textview1:save $DIR/$FILE2\n textview1:delete\n _:load $DIR/$FILE1\n button1:force" \
2317 "button1:clicked"
2318 rm $DIR/$FILE1
2319 sleep .5
2320 check 1 "" \
2321 "textview1:save $DIR/$FILE1\n button1:force" \
2322 "button1:clicked"
2323 check_cmd "test 96 = `wc -c $DIR/$FILE1 | awk '{print $1}'`"
2324 check_cmd "cmp $DIR/$FILE1 $DIR/$FILE2"
2328 check 1 "" \
2329 "textview1:delete\n textview1_send_text:force" \
2330 "textview1_send_text:text"
2332 if test $INTERACTIVE; then
2334 check 1 "Highlight the lowest visible character and press \"send_selection\"" \
2335 "textview1:place_cursor_at_line 1 \ntextview1:insert_at_cursor A\\\\nB\\\\nC\\\\nD\\\\nE\\\\nF\\\\nG\\\\nH\\\\nI\\\\nJ\\\\nK\\\\nL\\\\nM\\\\nN\\\\nO\\\\nP\\\\nQ\\\\nR\\\\nS\\\\nT\\\\nU\\\\nV\\\\nW\\\\nX\\\\nY\\\\nZ\\\\na\\\\nb\\\\nc\\\\nd\\\\ne\\\\nf\\\\ng\\\\nh\\\\ni\\\\nj\\\\nk\\\\nl\\\\nm\\\\nn\\\\no\\\\np\\\\nq\\\\nr\\\\ns\\\\nt\\\\nu\\\\nv\\\\nw\\\\nx\\\\ny\\\\nz \n textview1:place_cursor_at_line 46 \n textview1:scroll_to_cursor\n notebook1:set_current_page 1" \
2336 "textview1_send_selection:text u"
2337 check 1 "Again, highlight the lowest visible character and press \"send_selection\"" \
2338 "textview1:place_cursor end\n textview1:scroll_to_cursor" \
2339 "textview1_send_selection:text z"
2340 check 1 "Highlight the highest visible character and press \"send_selection\"" \
2341 "textview1:place_cursor 0 \n textview1:scroll_to_cursor" \
2342 "textview1_send_selection:text A"
2346 if test $AUTOMATIC; then
2347 check 1 "" \
2348 "treeview2:set 100:10:5 2 8888888\n treeview2:save $DIR/$FILE1\n textview2:save $DIR/$FILE2\n button1:force" \
2349 "button1:clicked"
2350 cp $DIR/$FILE1 $DIR/$FILE4
2351 check_cmd "cmp $DIR/$FILE2 $DIR/$FILE3"
2352 check 1 "" \
2353 "treeview2:clear\n textview2:delete\n _:load $DIR/$FILE1\n _:load $DIR/$FILE2\n button1:force" \
2354 "button1:clicked"
2355 rm $DIR/$FILE1 $DIR/$FILE2
2356 sleep .5
2357 check 1 "" \
2358 "treeview2:save $DIR/$FILE1\n textview2:save $DIR/$FILE2\n button1:force" \
2359 "button1:clicked"
2360 check_cmd "cmp $DIR/$FILE1 $DIR/$FILE4"
2361 check_cmd "cmp $DIR/$FILE2 $DIR/$FILE3"
2362 # rm -rf $DIR
2363 sleep .5
2364 check 2 "" \
2365 "scale1:set_value 10\n scale1:set_increments 5 20\n scale1:force" \
2366 "scale1:value 10.000000" \
2367 "scale1:value 10.000000"
2368 check 2 "" \
2369 "scale1:block 1\n scale1:set_range 20 22\n scale1:set_value 21\n scale1:block 0\n scale1:set_value 10\n scale1:set_value 100" \
2370 "scale1:value 20.000000" \
2371 "scale1:value 22.000000"
2372 check 1 "" \
2373 "scale1:set_fill_level\n scale1:set_fill_level 20.5\n scale1:set_value 21.3" \
2374 "scale1:value 21.300000"
2375 check 6 "" \
2376 "open_dialog:set_filename q.png\n file:force\n open_dialog_invoke:force\n open_dialog_apply:force\n open_dialog_ok:force" \
2377 "file:active _File" \
2378 "open_dialog_apply:clicked" \
2379 "open_dialog:file $PWD/q.png" \
2380 "open_dialog:folder $PWD" \
2381 "open_dialog_ok:clicked" \
2382 "open_dialog:file $PWD/q.png" \
2383 "open_dialog:folder $PWD"
2384 check 2 "" \
2385 "file:force\n open_dialog_invoke:force\n open_dialog_cancel:force" \
2386 "file:active _File" \
2387 "open_dialog_cancel:clicked"
2388 check 3 "" \
2389 "save_as_dialog:set_current_name /somewhere/crazy_idea\n file:force\n save_as_dialog_invoke:force\n save_as_dialog_ok:force" \
2390 "file:active _File" \
2391 "save_as_dialog_ok:clicked" \
2392 "save_as_dialog:file /somewhere/crazy_idea" \
2393 "save_as_dialog:folder"
2394 check 1 "" \
2395 "nonexistent_invoke:force" \
2396 "nonexistent_invoke:active nonexistent"
2398 # _:load
2399 mkdir -p $DIR
2400 for i in $WEIRD_PATHS; do
2401 cat >$i <<< "entry1:set_text RsT${i}UVwX"
2402 done
2403 for i in $WEIRD_PATHS; do
2404 check 1 "" \
2405 "_:load $i" \
2406 "entry1:text RsT${i}UVwX"
2407 rm -f $i
2408 done
2412 if test $INTERACTIVE; then
2414 check 1 "Press the \"button\" which should now be renamed \"OK\"" \
2415 "button1:set_label OK" \
2416 "button1:clicked"
2417 check 1 "Press the \"togglebutton\" which should now be renamed \"on/off\"" \
2418 "togglebutton1:set_label on/off" \
2419 "togglebutton1:0"
2420 check 1 "" \
2421 "togglebutton1:force" \
2422 "togglebutton1:1"
2423 check 1 "Press the \"checkbutton\" which should now be renamed \"REGISTER\"" \
2424 "checkbutton1:set_label REGISTER" \
2425 "checkbutton1:1"
2426 check 1 "" \
2427 "checkbutton1:force" \
2428 "checkbutton1:0"
2429 check 2 "Press the \"radiobutton\" which should now be renamed \"RADIO\"" \
2430 "radiobutton2:set_label RADIO" \
2431 "radiobutton1:0" \
2432 "radiobutton2:1"
2433 check 2 "" \
2434 "radiobutton1:force" \
2435 "radiobutton2:0" \
2436 "radiobutton1:1"
2437 check 1 "Click the widget whose label font is now Bold Italic 20" \
2438 "switch1:style font:Bold Italic 20" \
2439 "switch1:1"
2440 check 1 "Click the widget whose label has turned red" \
2441 "switch1:style color:red" \
2442 "switch1:0"
2443 check 1 "Click the widget whose background has turned yellow" \
2444 "checkbutton1:style background-color:yellow" \
2445 "checkbutton1:1"
2446 check 1 "Press \"OK\" if font and colors changed in previous steps are back to normal\n switch1:style" \
2447 "checkbutton1:style" \
2448 "button1:clicked"
2449 check 1 "" \
2450 "switch1:force" \
2451 "switch1:1"
2452 check 1 "Press \"OK\" if the \"lorem ipsum dolor ...\" text inside \"frame1\" now reads \"LABEL\"" \
2453 "label1:set_text LABEL" \
2454 "button1:clicked"
2455 check 1 "Press \"OK\" if the label of the frame around \"LABEL\" now reads \"LOREM IPSUM\"" \
2456 "frame1:set_label LOREM IPSUM" \
2457 "button1:clicked"
2458 check 1 "Press \"OK\" if the green dot has turned red" \
2459 "image1:set_from_icon_name gtk-no" \
2460 "button1:clicked"
2461 check 1 "Press \"OK\" if the red dot has turned into a green \"Q\"" \
2462 "image1:set_from_file q.png" \
2463 "button1:clicked"
2464 check 1 "Select \"FIRST\" from the combobox" \
2465 "comboboxtext1:prepend_text FIRST" \
2466 "comboboxtext1_entry:text FIRST"
2467 check 1 "Select \"LAST\" from the combobox" \
2468 "comboboxtext1:append_text LAST" \
2469 "comboboxtext1_entry:text LAST"
2470 check 1 "Select \"AVERAGE\" from the combobox" \
2471 "comboboxtext1:insert_text 3 AVERAGE" \
2472 "comboboxtext1_entry:text AVERAGE"
2473 check 1 "Select the second entry from the combobox" \
2474 "comboboxtext1:remove 0" \
2475 "comboboxtext1_entry:text def"
2476 check 2 "Left-click the \"+\" of the spinbutton" \
2477 "spinbutton1:set_range 0 100\n spinbutton1:set_text 33" \
2478 "spinbutton1:text 33.00" \
2479 "spinbutton1:text 34.00"
2480 check 1 "Left-click the \"+\" of the spinbutton again" \
2481 "spinbutton1:set_increments 2 4" \
2482 "spinbutton1:text 36.00"
2483 check 1 "Middle-click the \"+\" of the spinbutton" \
2484 "" \
2485 "spinbutton1:text 40.00"
2486 check 1 "" \
2487 "spinbutton1:force" \
2488 "spinbutton1:text 40.00"
2489 check 1 "Using the file chooser button (now labelled \"etc\"), select \"File System\" (= \"/\")" \
2490 "filechooserbutton1:set_filename /etc/" \
2491 "filechooserbutton1:file /"
2492 check 1 "" \
2493 "filechooserbutton1:force" \
2494 "filechooserbutton1:file /"
2495 check 1 "Click \"Select\"\n fontbutton1:set_font_name Sans Bold 40" \
2496 "fontbutton1:force" \
2497 "fontbutton1:font Sans Bold 40"
2498 check 1 "Click \"Select\" (1)\n colorbutton1:set_color yellow" \
2499 "colorbutton1:force" \
2500 "colorbutton1:color rgb(255,255,0)"
2501 check 1 "Click \"Select\" (2)\n colorbutton1:set_color rgb(0,255,0)" \
2502 "colorbutton1:force" \
2503 "colorbutton1:color rgb(0,255,0)"
2504 check 1 "Click \"Select\" (3)\n colorbutton1:set_color #00f" \
2505 "colorbutton1:force" \
2506 "colorbutton1:color rgb(0,0,255)"
2507 check 1 "Click \"Select\" (4)\n colorbutton1:set_color #ffff00000000" \
2508 "colorbutton1:force" \
2509 "colorbutton1:color rgb(255,0,0)"
2510 check 1 "Click \"Select\" (5)\n colorbutton1:set_color rgba(0,255,0,.5)" \
2511 "colorbutton1:force" \
2512 "colorbutton1:color rgba(0,255,0,0.5)"
2513 check 1 "Close the dialog by hitting Escape" \
2514 "printdialog:print nonexistent.ps" \
2515 "printdialog:closed"
2516 check 1 "Press \"OK\" if both 1752-03-13 and 1752-03-14 are marked on the calendar" \
2517 "calendar1:mark_day 13\n calendar1:mark_day 14" \
2518 "button1:clicked"
2519 check 1 "Press \"OK\" if 1752-03-13 and 1752-03-14 are no longer marked on the calendar" \
2520 "calendar1:clear_marks" \
2521 "button1:clicked"
2522 check 3 "Hover over the calendar and do what the tooltip says" \
2523 "calendar1:set_tooltip_text Double-click on 1752-03-13" \
2524 "calendar1:clicked 1752-03-13" \
2525 "calendar1:clicked 1752-03-13" \
2526 "calendar1:doubleclicked 1752-03-13"
2527 check 0 "" \
2528 "calendar1:set_tooltip_text"
2529 check 1 "" \
2530 "calendar1:force" \
2531 "calendar1:clicked 1752-03-13"
2535 check 0 "" \
2536 "drawingarea1:transform =100 1 0 0 1 0 0"
2537 check 0 "" \
2538 "drawingarea1:set_source_rgba =101 green"
2539 check 0 "" \
2540 "drawingarea1:set_source_rgba =102 red"
2541 check 0 "" \
2542 "drawingarea1:rectangle =1 0 0 150 150\n drawingarea1:fill 1"
2543 check 0 "" \
2544 "drawingarea1:remove 1\n drawingarea1:remove 2\n drawingarea1:remove 3\n drawingarea1:remove 4"
2545 check 0 "" \
2546 "drawingarea1:rectangle 1 0 0 150 150\n drawingarea1:fill 1"
2547 check 0 "" \
2548 "drawingarea1:arc 1 80 80 60 30 60\n drawingarea1:set_source_rgba 1 red\n drawingarea1:stroke_preserve 1\n drawingarea1:line_to 1 80 80\n drawingarea1:fill 1"
2549 check 0 "" \
2550 "drawingarea1:arc_negative 1 80 80 70 30 60\n drawingarea1:set_source_rgba 1 green\n drawingarea1:stroke_preserve 1\n drawingarea1:rel_line_to 1 -50 -50\n drawingarea1:stroke 1"
2551 check 0 "" \
2552 "drawingarea1:curve_to 1 30 30 90 120 120 30\n drawingarea1:set_source_rgba 1 blue\n drawingarea1:stroke 1"
2553 check 0 "" \
2554 "drawingarea1:move_to 1 160 160\n drawingarea1:rel_curve_to 1 30 30 90 120 120 30\n drawingarea1:set_source_rgba 1 orange\n drawingarea1:stroke_preserve 1"
2555 check 0 "" \
2556 "drawingarea1:move_to 1 0 0\n drawingarea1:rel_move_to 1 0 155\n drawingarea1:rel_line_to 1 300 0\n drawingarea1:set_dash 1 10\n drawingarea1:stroke 1"
2557 check 0 "" \
2558 "drawingarea1:move_to 1 0 160\n drawingarea1:rel_line_to 1 300 0\n drawingarea1:set_dash 1 20 5\n drawingarea1:stroke 1"
2559 check 0 "" \
2560 "drawingarea1:move_to 1 0 165\n drawingarea1:rel_line_to 1 300 0\n drawingarea1:set_dash 1 5 20\n drawingarea1:stroke 1"
2561 check 0 "" \
2562 "drawingarea1:move_to 1 0 170\n drawingarea1:rel_line_to 1 300 0\n drawingarea1:set_dash 1 3 3 3 3 3 15\n drawingarea1:stroke 1"
2563 check 0 "" \
2564 "drawingarea1:set_dash 1"
2565 check 0 "" \
2566 "drawingarea1:set_source_rgba 103 brown\n drawingarea1:set_line_width 1 15"
2568 if test $INTERACTIVE; then
2569 check 1 "Press \"OK\" if the brown shape is rounded" \
2570 "drawingarea1:set_line_join 2 round\n drawingarea1:set_line_cap 2 round\n drawingarea1:move_to 1 160 20\n drawingarea1:rel_line_to 1 20 0\n drawingarea1:rel_line_to 1 0 20\n drawingarea1:stroke 1" \
2571 "button1:clicked"
2572 check 1 "Press \"OK\" if the second brown shape is shorter and bevelled and the square is mostly blue" \
2573 "drawingarea1:set_line_join 3 bevel\n drawingarea1:set_line_cap 3 butt\n drawingarea1:move_to 1 160 70\n drawingarea1:rel_line_to 1 20 0\n drawingarea1:rel_line_to 1 0 20\n drawingarea1:stroke 1\n drawingarea1:set_source_rgba =102 blue" \
2574 "button1:clicked"
2575 check 1 "Press \"OK\" if the third brown shape is square everything is a bit smaller" \
2576 "drawingarea1:set_line_join 3 miter\n drawingarea1:set_line_cap 3 square\n drawingarea1:move_to 1 160 120\n drawingarea1:rel_line_to 1 20 0\n drawingarea1:rel_line_to 1 0 20\n drawingarea1:stroke 1\n drawingarea1:set_source_rgba =101 magenta\n drawingarea1:scale =100 .7 .7" \
2577 "button1:clicked"
2578 check 1 "Press \"OK\" if the first brown shape is no longer rounded and everything rotated a bit" \
2579 "drawingarea1:remove 2\n drawingarea1:rotate 105<100 10" \
2580 "button1:clicked"
2581 check 1 "Press \"OK\" if all three brown shapes look the same" \
2582 "drawingarea1:remove 3" \
2583 "button1:clicked"
2587 check 0 "" \
2588 "drawingarea1:move_to 5 50 50\n drawingarea1:line_to 5 200 10\n drawingarea1:line_to 5 150 200\n drawingarea1:close_path 1\n drawingarea1:set_source_rgba 5 rgba(0,255,0,.2)\n drawingarea1:fill_preserve 1"
2589 check 0 "" \
2590 "drawingarea1:move_to 5 10 50\n drawingarea1:set_source_rgba 5 cyan\n drawingarea1:set_font_size 5 30\n drawingarea1:show_text 5 Xyz 789\n drawingarea1:set_font_size 5 10\n drawingarea1:show_text 5 Abc 123"
2591 check 0 "" \
2592 "drawingarea1:move_to 5 10 75\n drawingarea1:set_source_rgba 5 red\n drawingarea1:set_font_face 5 italic bold Courier\n drawingarea1:set_font_size 5 30\n drawingarea1:show_text 5 Xyz 789\n drawingarea1:set_font_size 5 10\n drawingarea1:show_text 5 Abc 123"
2593 check 0 "" \
2594 "drawingarea1:remove 1\n drawingarea1:remove 2\n drawingarea1:remove 3\n drawingarea1:remove 4"
2596 check 0 "" \
2597 "drawingarea2:rotate 55<500 5\n drawingarea2:scale 33 .7 .7\n drawingarea2:translate 77 30 30\n drawingarea2:transform 44"
2598 check 0 "" \
2599 "drawingarea2:rectangle 1<500 0 0 150 150\n drawingarea2:fill 1"
2600 check 0 "" \
2601 "drawingarea2:arc 1 80 80 60 30 60\n drawingarea2:set_source_rgba 1 red\n drawingarea2:stroke_preserve 1\n drawingarea2:line_to 1 80 80\n drawingarea2:fill 1"
2602 check 0 "" \
2603 "drawingarea2:arc_negative 1 80 80 70 30 60\n drawingarea2:set_source_rgba 1 green\n drawingarea2:stroke_preserve 1\n drawingarea2:rel_line_to 1 -50 -50\n drawingarea2:stroke 1"
2604 check 0 "" \
2605 "drawingarea2:curve_to 1 30 30 90 120 120 30\n drawingarea2:set_source_rgba 1 blue\n drawingarea2:stroke 1"
2606 check 0 "" \
2607 "drawingarea2:move_to 1 160 160\n drawingarea2:rel_curve_to 1 30 30 90 120 120 30\n drawingarea2:set_source_rgba 1 orange\n drawingarea2:stroke_preserve 1"
2608 check 0 "" \
2609 "drawingarea2:move_to 1 0 0\n drawingarea2:rel_move_to 1 0 155\n drawingarea2:rel_line_to 1 300 0\n drawingarea2:set_dash 1 10\n drawingarea2:stroke 1"
2610 check 0 "" \
2611 "drawingarea2:move_to 1 0 160\n drawingarea2:rel_line_to 1 300 0\n drawingarea2:set_dash 1 20 5\n drawingarea2:stroke 1"
2612 check 0 "" \
2613 "drawingarea2:move_to 1 0 165\n drawingarea2:rel_line_to 1 300 0\n drawingarea2:set_dash 1 5 20\n drawingarea2:stroke 1"
2614 check 0 "" \
2615 "drawingarea2:move_to 1 0 170\n drawingarea2:rel_line_to 1 300 0\n drawingarea2:set_dash 1 3 3 3 3 3 15\n drawingarea2:stroke 1"
2616 check 0 "" \
2617 "drawingarea2:set_dash 1"
2618 check 0 "" \
2619 "drawingarea2:set_source_rgba 1 brown\n drawingarea2:set_line_width 1 15"
2620 check 0 "" \
2621 "drawingarea2:set_line_cap 2 round\n drawingarea2:move_to 1 160 20\n drawingarea2:rel_line_to 1 20 0\n drawingarea2:rel_line_to 1 0 20\n drawingarea2:stroke 1"
2622 check 0 "" \
2623 "drawingarea2:set_line_join 3 bevel\n drawingarea2:set_line_cap 3 butt\n drawingarea2:move_to 1 160 70\n drawingarea2:rel_line_to 1 20 0\n drawingarea2:rel_line_to 1 0 20\n drawingarea2:stroke 1"
2624 check 0 "" \
2625 "drawingarea2:set_line_join 3 miter\n drawingarea2:set_line_cap 3 square\n drawingarea2:move_to 1 160 120\n drawingarea2:rel_line_to 1 20 0\n drawingarea2:rel_line_to 1 0 20\n drawingarea2:stroke 1"
2626 check 0 "" \
2627 "drawingarea2:remove 2"
2628 check 0 "" \
2629 "drawingarea2:remove 3"
2631 if test $INTERACTIVE; then
2633 check 1 "Press \"OK\" if the drawing looks tilted and displaced" \
2634 "drawingarea2:remove 44" \
2635 "button1:clicked"
2636 check 1 "Press \"OK\" if the drawing doesn't look tilted anymore" \
2637 "drawingarea2:remove 55" \
2638 "button1:clicked"
2639 check 1 "Press \"OK\" if the drawing has grown a bit" \
2640 "drawingarea2:remove 33" \
2641 "button1:clicked"
2642 check 1 "Press \"OK\" if the drawing has moved into the NE corner" \
2643 "drawingarea2:remove 77" \
2644 "button1:clicked"
2648 check 0 "" \
2649 "drawingarea1:set_source_rgba 6 red\n drawingarea1:set_font_size 6 20\n drawingarea1:transform 99 .985 -.174 .174 .985 0 0"
2650 check 0 "" \
2651 "drawingarea1:move_to 6 100 100\n drawingarea1:rel_move_for 6 c CENTER\n drawingarea1:show_text 6 CENTER"
2652 check 0 "" \
2653 "drawingarea1:set_source_rgba 6 blue\n drawingarea1:set_font_size 6 20"
2654 check 0 "" \
2655 "drawingarea1:move_to 6 100 100\n drawingarea1:rel_move_for 6 nw NORTHWEST\n drawingarea1:show_text 6 NORTHWEST"
2656 check 0 "" \
2657 "drawingarea1:move_to 6 100 100\n drawingarea1:rel_move_for 6 ne NORTHEAST\n drawingarea1:show_text 6 NORTHEAST"
2658 check 0 "" \
2659 "drawingarea1:move_to 6 100 100\n drawingarea1:rel_move_for 6 se SOUTHEAST\n drawingarea1:show_text 6 SOUTHEAST"
2660 check 0 "" \
2661 "drawingarea1:move_to 6 100 100\n drawingarea1:rel_move_for 6 sw SOUTHWEST\n drawingarea1:show_text 6 SOUTHWEST"
2662 check 0 "" \
2663 "drawingarea1:set_source_rgba 6 magenta\n drawingarea1:set_font_size 6 20"
2664 check 0 "" \
2665 "drawingarea1:move_to 6 100 140\n drawingarea1:rel_move_for 6 s SOUTH\n drawingarea1:show_text 6 SOUTH"
2666 check 0 "" \
2667 "drawingarea1:move_to 6 100 140\n drawingarea1:rel_move_for 6 n NORTH\n drawingarea1:show_text 6 NORTH"
2668 check 0 "" \
2669 "drawingarea1:set_source_rgba 6 green\n drawingarea1:set_font_size 6 20"
2670 check 0 "" \
2671 "drawingarea1:move_to 6 100 140\n drawingarea1:rel_move_for 6 e EAST\n drawingarea1:show_text 6 EAST"
2672 check 0 "" \
2673 "drawingarea1:move_to 600 100 140\n drawingarea1:rel_move_for 6 w WEST\n drawingarea1:show_text 6 WEST\n drawingarea1:set_font_size 800<600 30"
2674 check 0 "" \
2675 "drawingarea1:snapshot $EPS_FILE\n drawingarea1:snapshot $EPSF_FILE\n drawingarea1:snapshot $PDF_FILE\n drawingarea1:snapshot $PS_FILE\n drawingarea1:snapshot $SVG_FILE"
2677 check_cmd "file -b $EPS_FILE | grep -qe EPS"
2678 check_cmd "file -b $EPSF_FILE | grep -qe EPS"
2679 check_cmd "file -b $PS_FILE | grep -qe PostScript"
2680 check_cmd "file -b $SVG_FILE | grep -qe SVG"
2681 check 0 "" \
2682 "notebook1:set_current_page 0\n image2:set_from_file $SVG_FILE"
2684 if test $INTERACTIVE; then
2686 check 2 "Hit Backspace, Enter" \
2687 "eventbox1:grab_focus" \
2688 "eventbox1:key_press BackSpace" \
2689 "eventbox1:key_press Return"
2690 check 6 "Inside the DrawingArea, left-click, middle-click, right-click (Don't move the mouse while clicking)" \
2691 "" \
2692 "eventbox1:button_press 1" \
2693 "eventbox1:button_release 1" \
2694 "eventbox1:button_press 2" \
2695 "eventbox1:button_release 2" \
2696 "eventbox1:button_press 3" \
2697 "eventbox1:button_release 3"
2698 check 3 "Inside the DrawingArea and all within one second, hold the left button down, move around a bit, and release it again" \
2699 "" \
2700 "eventbox1:button_press 1" \
2701 "eventbox1:motion" \
2702 "eventbox1:motion"
2703 sleep 1.5
2704 check 1 "Hit Space" \
2705 "button1:grab_focus" \
2706 "button1:clicked"
2708 check 1 "Press the biggest button if there is a spinning spinner" \
2709 "spinner1:start\n no_button:set_size_request 400 200" \
2710 "no_button:clicked"
2711 check 1 "Press \"OK\" if the spinner has stopped" \
2712 "spinner1:stop" \
2713 "button1:clicked"
2714 check 1 "Press \"OK\" if the \"No\" button is back to normal size" \
2715 "no_button:set_size_request" \
2716 "button1:clicked"
2718 check 0 "" \
2719 "notebook1:set_current_page 3"
2720 check 1 "Click into page 4 (vscroll)" \
2721 "scrolledwindow8:vscroll 4500" \
2722 "button_sw:clicked"
2723 check 1 "Click into page 4 (hscroll)" \
2724 "scrolledwindow8:hscroll 4500" \
2725 "button_se:clicked"
2726 check 1 "Click into page 4 (hscroll_to_range, vscroll_to_range)" \
2727 "scrolledwindow8:hscroll_to_range 1600 2900\n scrolledwindow8:vscroll_to_range 1600 2900" \
2728 "button_c:clicked"
2730 check 1 "Press \"OK\" if there is now a \"Disconnect\" button" \
2731 "button2:set_visible 1\n button2:set_sensitive 0" \
2732 "button1:clicked"
2733 check 1 "Press \"Disconnect\"" \
2734 "button2:set_sensitive 1" \
2735 "button2:clicked"
2737 check 1 "Press \"BIG BUTTON\" inside the window titled \"PRESS ME\"" \
2738 "dialog1:set_title PRESS ME\n dialog1:set_visible 1\n dialog1:resize 800 800\n dialog1:move 50 50" \
2739 "button3:clicked"
2740 check 1 "" \
2741 "button3:set_label PRESS THIS GIANT BUTTON NOW\n dialog1:fullscreen" \
2742 "button3:clicked"
2743 check 1 "" \
2744 "button3:set_label Hit Escape to close this window\n button3:set_sensitive 0" \
2745 "dialog1:closed"
2746 check 0 "" \
2747 "dialog1:set_visible 0"
2749 check 1 "Press \"OK\" if the progress bar shows 90%" \
2750 "progressbar1:set_fraction .9\n progressbar1:set_text" \
2751 "button1:clicked"
2752 check 1 "Press \"OK\" if the progress bar text reads \"The End\"" \
2753 "progressbar1:set_text The End" \
2754 "button1:clicked"
2755 check 1 "" \
2756 "statusbar1:push_id Id100 Press \"No\"\n statusbar1:push_id ABC nonsense #1\n statusbar1:push_id DEF nonsense #2.1\n statusbar1:push_id DEF nonsense 2.2\n statusbar1:pop\n statusbar1:pop\n statusbar1:pop_id 1\n statusbar1:pop_id ABC\n statusbar1:pop_id DEF\n statusbar1:pop_id DEF\n statusbar1:push_id GHI nonsense 3.1\n statusbar1:push_id GHI nonsense 3.2\n statusbar1:remove_all_id GHI" \
2757 "no_button:clicked"
2761 check 0 "" \
2762 "statusbar1:remove_all_id ZZZ"
2765 echo "_:main_quit" >$FIN
2766 check_rm $FIN
2767 check_rm $FOUT
2770 check_cmd "head -n 2 $LOG | tail -n 1 | grep -q '##### (New Pipeglade session) #####'"
2771 check_cmd "tail -n 4 $LOG | head -n 1 | grep -q '### (Idle) ###'"
2772 check_cmd "tail -n 3 $LOG | head -n 1 | grep -q 'statusbar1:remove_all_id ZZZ'"
2773 check_cmd "tail -n 2 $LOG | head -n 1 | grep -q '### (Idle) ###'"
2774 # check_cmd "tail -n 1 $LOG | grep '_:main_quit'"
2776 if test $AUTOMATIC; then
2777 unset -v BIG_STRING
2778 unset -v BIG_NUM
2779 unset -v WEIRD_PATH
2780 for i in {1..10}; do
2781 echo "treeview1:set $i 3 $RANDOM"
2782 echo "treeview1:set $i 8 $RANDOM"
2783 echo "treeview1:set $i 9 row $i"
2784 done > $DIR/$FILE4
2785 for i in {1..10}; do
2786 echo "treeview2:set $i 3 $RANDOM"
2787 echo "treeview2:set $i 8 $RANDOM"
2788 echo "treeview2:set $i 9 row $i"
2789 done > $DIR/$FILE5
2790 cut -f2- $LOG > $DIR/$FILE6
2791 echo -e "g/_:main_quit/d\ng/printdialog:/d\ng|$FILE6|d\ng/:load/s|$FILE1|$FILE4|\ng/:load/s|$FILE2|$FILE5|\nwq" | ed -s $DIR/$FILE6
2792 for i in {1..5}; do
2793 cat $DIR/$FILE6
2794 done >$BIG_INPUT
2795 cp "$BIG_INPUT" "$BIG_INPUT2"
2796 echo "_:load $BIG_INPUT2" >>$BIG_INPUT
2797 echo "_:main_quit" >>$BIG_INPUT
2798 echo -e "g/_:load/d\ng/^#/d\nwq" | ed -s $BIG_INPUT2
2799 ./pipeglade -i $FIN -o $FOUT -O $BIG_INPUT_ERR -b >/dev/null
2800 cat "$FOUT" >/dev/null &
2801 cat "$BIG_INPUT" > "$FIN"
2802 while test \( -e $FOUT -a -e $FIN \); do sleep .5; done
2803 check_cmd "test $(grep -v -e WARNING -e '^$' $BIG_INPUT_ERR | wc -l) -eq 0"
2804 cat $BIG_INPUT_ERR
2805 rm -f $BIG_INPUT_ERR
2806 ./pipeglade -O $BIG_INPUT_ERR <$BIG_INPUT >/dev/null
2807 check_cmd "test $(grep -v -e WARNING -e '^$' $BIG_INPUT_ERR | wc -l) -eq 0"
2811 echo "
2812 # BATCH FOUR
2814 # Tests of project metadata
2815 ######################################################################
2818 # Does the manual page cover all implemented actions and no unimplemented ones?
2819 check_cmd 'test "`make prog-actions`" == "`make man-actions`"'
2821 # Is the manual page table of contents complete and correct?
2822 check_cmd 'test "`make man-widgets`" == "`make man-toc`"'
2824 # Are the correct widgets in buildables.txt marked done?
2825 check_cmd 'test "`make man-widgets`" == "`make done-list`"'
2827 # Is our collection of test widgets complete?
2828 check_cmd 'test "`make man-widgets | sed s/Gtk// | tr \"[:upper:]\" \"[:lower:]\"`" == "`make examples-list | sed s/\\.ui$//`"'
2832 echo "
2833 # BATCH FIVE
2835 # Possible and impossible combinations of widgets and actions. Not
2836 # crashing means test passed, here.
2837 ######################################################################
2840 MAINPING=`mktemp`
2841 MAINQUIT=`mktemp`
2842 TEMPFOUT=`mktemp`
2843 echo -e "main:ping" > $MAINPING
2844 echo -e "_:main_quit" > $MAINQUIT
2846 # check_alive command
2847 check_alive() {
2848 echo "$SEND ${1}"
2849 echo -e "$1" >$FIN
2850 while read -t .5 <$FOUT; do : ; done
2851 if test -p $FIN; then
2852 timeout -k0 1 cp $MAINPING $FIN
2854 if test -p $FOUT; then
2855 :>$TEMPFOUT
2856 timeout -k0 1 cp $FOUT $TEMPFOUT
2858 if grep -q "main:ping" $TEMPFOUT; then
2859 count_ok
2860 echo " $OK"
2861 else
2862 count_fail
2863 echo " $FAIL"
2868 for wid in `make examples-list`; do
2869 PID=`./pipeglade -i $FIN -o $FOUT -b -u widget-examples/$wid`
2870 cmd=""
2871 for act in `make prog-actions`; do
2872 if test "$act" != "main_quit"; then
2873 cmd="$cmd\n ${wid/\.ui/}1:$act"
2874 for args in '0' '0 1' '0 1 1' '1 0 1 2' '1 0 1 2 3' '1 0 1 2 3 4 5' '1 s XYZ' 'x.svg' 'x.eps' 'x.ps' 'x.pdf'; do
2875 cmd="$cmd\n ${wid/\.ui/}1:$act $args"
2876 done
2878 done
2879 check_alive "$cmd"
2880 timeout -k0 1 cp $MAINQUIT $FIN
2881 kill $PID
2882 done
2884 rm -f $MAINPING $MAINQUIT $TEMPFOUT
2888 echo "PASSED: $OKS/$TESTS; FAILED: $FAILS/$TESTS"