Fix a bug introduced in last commit
[pipeglade.git] / pipegladetest.sh
blobf6243f1c240f1701b3c0ddb7a108db0cdb4bbf00
1 #! /usr/bin/env bash
3 # Another possible shebang line:
4 #! /usr/bin/env mksh
6 # Pipeglade tests; they should be invoked in the build directory.
8 # Failure of a test can cause failure of one or more subsequent tests.
10 export LC_ALL=C
11 export NO_AT_BRIDGE=1
12 FIN=to-g.fifo
13 FOUT=from-g.fifo
14 FERR=err.fifo
15 LOG=test.log
16 ERR_FILE=err.txt
17 BAD_FIFO=bad_fifo
18 PID_FILE=pid
19 OUT_FILE=out.txt
20 DIR=test_dir
21 EPS_FILE=test.eps
22 EPSF_FILE=test.epsf
23 PDF_FILE=test.pdf
24 PS_FILE=test.ps
25 SVG_FILE=test.svg
26 FILE1=saved1.txt
27 FILE2=saved2.txt
28 FILE3=saved3.txt
29 FILE4=saved4.txt
30 FILE5=saved5.txt
31 FILE6=saved6.txt
32 rm -rf $FIN $FOUT $FERR $LOG $ERR_FILE $BAD_FIFO $PID_FILE $OUT_FILE \
33 $EPS_FILE $EPSF_FILE $PDF_FILE $PS_FILE $SVG_FILE \
34 $FILE1 $FILE2 $FILE3 $FILE4 $FILE5 $FILE6 $DIR
36 if stat -f "%0p"; then
37 STAT_CMD='stat -f "%0p"'
38 else
39 # probably GNU stat
40 STAT_CMD='stat -c "%a"'
43 # colored messages: bright green
44 OK=$'\E[32;1mOK\E[0m'
45 # bright red
46 FAIL=$'\E[31;1mFAIL\E[0m'
47 EXPECTED=$'\E[31;1mEXPECTED\E[0m'
48 # yellow
49 CALL=$'\E[33mCALL\E[0m'
50 SEND=$'\E[33mSEND\E[0m'
52 TESTS=0
53 FAILS=0
54 OKS=0
56 count_fail() {
57 (( TESTS+=1 ))
58 (( FAILS+=1 ))
61 count_ok() {
62 (( TESTS+=1 ))
63 (( OKS+=1 ))
66 check_rm() {
67 i=0
68 while test -e $1 && (( i<50 )); do
69 sleep .1
70 (( i+=1 ))
71 done
72 if test -e $1; then
73 count_fail
74 echo " $FAIL $1 should be deleted"
75 rm -f $1
76 else
77 count_ok
78 echo " $OK $1 deleted"
82 check_cmd() {
83 i=0
84 while ! eval "$1" && (( i<50 )); do
85 sleep .1
86 (( i+=1 ))
87 done
88 if eval "$1"; then
89 count_ok
90 echo " $OK $1"
91 else
92 count_fail
93 echo " $FAIL $1"
98 echo "
99 # BATCH ONE
101 # Situations where pipeglade should exit immediately. These tests
102 # should run automatically
103 ######################################################################
106 # check_call command expected_status expected_stderr expected_stdout
107 check_call() {
108 r=$2
109 e=$3
110 o=$4
111 output=$($1 2>tmperr.txt)
112 retval=$?
113 error=$(<tmperr.txt)
114 rm tmperr.txt
115 echo "$CALL $1"
116 if test "$output" = "" -a "$o" = "" || (echo "$output" | grep -Fqe "$o"); then
117 count_ok
118 echo " $OK STDOUT $output"
119 else
120 count_fail
121 echo " $FAIL STDOUT $output"
122 echo " $EXPECTED $o"
124 if test "$error" = "" -a "$e" = "" || test "$retval" -eq "$r" && (echo "$error" | grep -Fqe "$e"); then
125 count_ok
126 echo " $OK EXIT/STDERR $retval $error"
127 else
128 count_fail
129 echo " $FAIL EXIT/STDERR $retval $error"
130 echo " $EXPECTED $r $e"
134 check_call "./pipeglade -u nonexistent.ui" 1 \
135 "nonexistent.ui" ""
136 check_call "./pipeglade -u bad_window.ui" 1 \
137 "no toplevel window named 'main'" ""
138 check_call "./pipeglade -u www-template/404.html" 1 \
139 "html" ""
140 check_call "./pipeglade -u README" 1 \
141 "Document must begin with an element" ""
142 check_call "./pipeglade -e x" 1 \
143 "x is not a valid XEmbed socket id" ""
144 check_call "./pipeglade -ex" 1 \
145 "x is not a valid XEmbed socket id" ""
146 check_call "./pipeglade -e -77" 1 \
147 "-77 is not a valid XEmbed socket id" ""
148 check_call "./pipeglade -e 77x" 1 \
149 "77x is not a valid XEmbed socket id" ""
150 check_call "./pipeglade -e +77" 1 \
151 "+77 is not a valid XEmbed socket id" ""
152 check_call "./pipeglade -e 999999999999999999999999999999" 1 \
153 "999999999999999999999999999999 is not a valid XEmbed socket id" ""
154 check_call "./pipeglade -e 99999999999999999" 1 \
155 "unable to embed into XEmbed socket 99999999999999999" ""
156 touch $BAD_FIFO
157 check_call "./pipeglade -i $BAD_FIFO" 1 \
158 "making fifo" ""
159 check_call "./pipeglade -o $BAD_FIFO" 1 \
160 "making fifo" ""
161 rm $BAD_FIFO
162 check_call "./pipeglade -b" 1 \
163 "parameter -b requires both -i and -o"
164 check_call "./pipeglade -b -i $FIN" 1 \
165 "parameter -b requires both -i and -o"
166 check_call "./pipeglade -b -i $FOUT" 1 \
167 "parameter -b requires both -i and -o"
168 rm $FIN $FOUT
169 check_call "./pipeglade -h" 0 \
170 "" "usage: pipeglade [[-i in-fifo] [-o out-fifo] [-b] [-u glade-file.ui] [-e xid]
171 [-l log-file] [-O err-file] [--display X-server]] | [-h|-G|-V]"
172 check_call "./pipeglade -G" 0 \
173 "" "GTK+ v"
174 check_call "./pipeglade -G" 0 \
175 "" "cairo v"
176 check_call "./pipeglade -V" 0 \
177 "" "."
178 check_call "./pipeglade -X" 1 \
179 "option" ""
180 check_call "./pipeglade -e" 1 \
181 "argument" ""
182 check_call "./pipeglade -u" 1 \
183 "argument" ""
184 check_call "./pipeglade -i" 1 \
185 "argument" ""
186 check_call "./pipeglade -o" 1 \
187 "argument" ""
188 mkdir -p $DIR
189 check_call "./pipeglade -O" 1 \
190 "argument" ""
191 check_call "./pipeglade -O $DIR" 1 \
192 "" "couldn't redirect stderr to"
193 check_call "./pipeglade -l $DIR" 1 \
194 "opening log file" ""
195 check_call "./pipeglade -l" 1 \
196 "argument" ""
197 check_call "./pipeglade yyy" 1 \
198 "illegal parameter 'yyy'" ""
199 check_call "./pipeglade --display nnn" 1 \
200 "nnn"
201 mkfifo $FIN
202 echo -e "statusbar1:pop\n _:main_quit" > $FIN &
203 check_call "./pipeglade -i $FIN" 0 \
204 "" ""
205 mkfifo $FIN
206 echo -e "statusbar1:pop_id 111\n _:main_quit" > $FIN &
207 check_call "./pipeglade -i $FIN" 0 \
208 "" ""
210 check_rm $FIN
211 check_rm $FOUT
215 #exit
217 echo "
218 # BATCH TWO
220 # Error handling tests---bogus actions leading to appropriate error
221 # messages. Most of these tests should run automatically.
222 ######################################################################
225 mkfifo $FERR
227 # check_error command expected_stderr
228 check_error() {
229 echo "$SEND $1"
230 echo -e "$1" >$FIN
231 while read r <$FERR; do
232 # ignore irrelevant GTK warnings
233 if test "$r" != "" && ! grep -qe "WARNING"<<< "$r"; then
234 break;
236 done
237 if grep -qe "$2" <<< "$r"; then
238 count_ok
239 echo " $OK $r"
240 else
241 count_fail
242 echo " $FAIL $r"
243 echo " $EXPECTED $2"
247 read r 2< $FERR &
248 ./pipeglade -i $FIN 2> $FERR &
250 # wait for $FIN to appear
251 while test ! \( -e $FIN \); do :; done
253 # Non-existent name
254 check_error "nnn" \
255 "ignoring command \"nnn\""
256 check_error "nnn:set_text FFFF" \
257 "ignoring command \"nnn:set_text FFFF\""
258 check_error "nnn:set_tooltip_text FFFF" \
259 "ignoring command \"nnn:set_tooltip_text FFFF\""
260 check_error "nnn:set_sensitive 0" \
261 "ignoring command \"nnn:set_sensitive 0\""
262 check_error "nnn:set_sensitive 1" \
263 "ignoring command \"nnn:set_sensitive 1\""
264 check_error "nnn:set_visible 0" \
265 "ignoring command \"nnn:set_visible 0\""
266 check_error "nnn:set_visible 1" \
267 "ignoring command \"nnn:set_visible 1\""
268 check_error "nnn:grab_focus" \
269 "ignoring command \"nnn:grab_focus\""
270 check_error "nnn:set_size_request 100 100" \
271 "ignoring command \"nnn:set_size_request 100 100\""
272 check_error "nnn:style font:Bold 11" \
273 "ignoring command \"nnn:style font:Bold 11\""
274 check_error "nnn:force" \
275 "ignoring command \"nnn:force\""
276 # Wrong number or kind of arguments for generic actions
277 check_error "button1:set_sensitive" \
278 "ignoring GtkButton command \"button1:set_sensitive\""
279 check_error "button1:set_sensitive 2" \
280 "ignoring GtkButton command \"button1:set_sensitive 2\""
281 check_error "button1:set_sensitive nnn" \
282 "ignoring GtkButton command \"button1:set_sensitive nnn\""
283 check_error "button1:set_sensitive 0 1" \
284 "ignoring GtkButton command \"button1:set_sensitive 0 1\""
285 check_error "button1:set_visible" \
286 "ignoring GtkButton command \"button1:set_visible\""
287 check_error "button1:set_visible 2" \
288 "ignoring GtkButton command \"button1:set_visible 2\""
289 check_error "button1:set_visible nnn" \
290 "ignoring GtkButton command \"button1:set_visible nnn\""
291 check_error "button1:set_visible 0 1" \
292 "ignoring GtkButton command \"button1:set_visible 0 1\""
293 check_error "button1:grab_focus 2" \
294 "ignoring GtkButton command \"button1:grab_focus 2\""
295 check_error "nnn:set_size_request 100" \
296 "ignoring command \"nnn:set_size_request 100\""
297 check_error "nnn:set_size_request 100 100 100" \
298 "ignoring command \"nnn:set_size_request 100 100 100\""
299 check_error "button1:force 2" \
300 "ignoring GtkButton command \"button1:force 2\""
301 check_error "_:main_quit 2" \
302 "ignoring command \"_:main_quit 2\""
303 # Widget that shouldn't fire callbacks
304 check_error "label1:force" \
305 "ignoring GtkLabel command \"label1:force\""
306 # Widget that can't grab focus
307 check_error "label1:grab_focus" \
308 "ignoring GtkLabel command \"label1:grab_focus\""
309 # load file
310 check_error "_:load" \
311 "ignoring command \"_:load\""
312 check_error "_:load " \
313 "ignoring command \"_:load \""
314 check_error "_:load nonexistent.txt" \
315 "ignoring command \"_:load nonexistent.txt\""
316 mkdir -p $DIR
317 cat >$DIR/$FILE1 <<< "blah"
318 check_error "_:load $DIR/$FILE1" \
319 "ignoring command \"blah\""
320 cat >$DIR/$FILE1 <<< "_:load $DIR/$FILE1"
321 check_error "_:load $DIR/$FILE1" \
322 "ignoring command \"_:load $DIR/$FILE1\""
323 cat >$DIR/$FILE1 <<< "_:load $DIR/$FILE2"
324 cat >$DIR/$FILE2 <<< "_:load $DIR/$FILE1"
325 check_error "_:load $DIR/$FILE1" \
326 "ignoring command \"_:load $DIR/$FILE1\""
327 cat >$DIR/$FILE1 <<< "_:load $DIR/$FILE2"
328 cat >$DIR/$FILE2 <<< "_:blah"
329 check_error "_:load $DIR/$FILE1" \
330 "ignoring command \"_:blah\""
331 rm -rf $DIR
332 # GtkWindow
333 check_error "main:nnn" \
334 "ignoring GtkWindow command \"main:nnn\""
335 check_error "main:move" \
336 "ignoring GtkWindow command \"main:move\""
337 check_error "main:move " \
338 "ignoring GtkWindow command \"main:move \""
339 check_error "main:move 700" \
340 "ignoring GtkWindow command \"main:move 700\""
341 check_error "main:move 700 nnn" \
342 "ignoring GtkWindow command \"main:move 700 nnn\""
343 check_error "main:move 700 700 700" \
344 "ignoring GtkWindow command \"main:move 700 700 700\""
345 check_error "main:resize 700" \
346 "ignoring GtkWindow command \"main:resize 700\""
347 check_error "main:resize 700 nnn" \
348 "ignoring GtkWindow command \"main:resize 700 nnn\""
349 check_error "main:resize 700 700 700" \
350 "ignoring GtkWindow command \"main:resize 700 700 700\""
351 check_error "main:fullscreen 1" \
352 "ignoring GtkWindow command \"main:fullscreen 1\""
353 check_error "main:unfullscreen 1" \
354 "ignoring GtkWindow command \"main:unfullscreen 1\""
355 # GtkLabel
356 check_error "label1:nnn" \
357 "ignoring GtkLabel command \"label1:nnn\""
358 # GtkImage
359 check_error "image1:nnn" \
360 "ignoring GtkImage command \"image1:nnn\""
361 # GtkNotebook
362 check_error "notebook1:nnn" \
363 "ignoring GtkNotebook command \"notebook1:nnn\""
364 check_error "notebook1:set_current_page" \
365 "ignoring GtkNotebook command \"notebook1:set_current_page\""
366 check_error "notebook1:set_current_page " \
367 "ignoring GtkNotebook command \"notebook1:set_current_page \""
368 check_error "notebook1:set_current_page nnn" \
369 "ignoring GtkNotebook command \"notebook1:set_current_page nnn\""
370 check_error "notebook1:set_current_page 1 1" \
371 "ignoring GtkNotebook command \"notebook1:set_current_page 1 1\""
372 # GtkExpander
373 check_error "expander1:nnn" \
374 "ignoring GtkExpander command \"expander1:nnn\""
375 check_error "expander1:set_expanded" \
376 "ignoring GtkExpander command \"expander1:set_expanded\""
377 check_error "expander1:set_expanded 3" \
378 "ignoring GtkExpander command \"expander1:set_expanded 3\""
379 check_error "expander1:set_expanded 0 1" \
380 "ignoring GtkExpander command \"expander1:set_expanded 0 1\""
381 # GtkTextView
382 check_error "textview1:nnn" \
383 "ignoring GtkTextView command \"textview1:nnn\""
384 check_error "textview1:save" \
385 "ignoring GtkTextView command \"textview1:save\""
386 check_error "textview1:delete nnn" \
387 "ignoring GtkTextView command \"textview1:delete nnn\""
388 check_error "textview1:place_cursor" \
389 "ignoring GtkTextView command \"textview1:place_cursor\""
390 check_error "textview1:place_cursor " \
391 "ignoring GtkTextView command \"textview1:place_cursor \""
392 check_error "textview1:place_cursor nnn" \
393 "ignoring GtkTextView command \"textview1:place_cursor nnn\""
394 check_error "textview1:place_cursor 1 1" \
395 "ignoring GtkTextView command \"textview1:place_cursor 1 1\""
396 check_error "textview1:place_cursor end 1" \
397 "ignoring GtkTextView command \"textview1:place_cursor end 1\""
398 check_error "textview1:place_cursor_at_line" \
399 "ignoring GtkTextView command \"textview1:place_cursor_at_line\""
400 check_error "textview1:place_cursor_at_line " \
401 "ignoring GtkTextView command \"textview1:place_cursor_at_line \""
402 check_error "textview1:place_cursor_at_line nnn" \
403 "ignoring GtkTextView command \"textview1:place_cursor_at_line nnn\""
404 check_error "textview1:place_cursor_at_line 1 1" \
405 "ignoring GtkTextView command \"textview1:place_cursor_at_line 1 1\""
406 check_error "textview1:scroll_to_cursor nnn" \
407 "ignoring GtkTextView command \"textview1:scroll_to_cursor nnn\""
408 mkdir $DIR; chmod a-w $DIR
409 check_error "textview1:save $DIR/$FILE1" \
410 "ignoring GtkTextView command \"textview1:save $DIR/$FILE1\""
411 check_error "textview1:save nonexistent/$FILE1" \
412 "ignoring GtkTextView command \"textview1:save nonexistent/$FILE1\""
413 rm -rf $DIR
414 # GtkButton
415 check_error "button1:nnn" \
416 "ignoring GtkButton command \"button1:nnn\""
417 # GtkSwitch
418 check_error "switch1:nnn" \
419 "ignoring GtkSwitch command \"switch1:nnn\""
420 check_error "switch1:set_active" \
421 "ignoring GtkSwitch command \"switch1:set_active\""
422 check_error "switch1:set_active " \
423 "ignoring GtkSwitch command \"switch1:set_active \""
424 check_error "switch1:set_active 2" \
425 "ignoring GtkSwitch command \"switch1:set_active 2\""
426 check_error "switch1:set_active 0 1" \
427 "ignoring GtkSwitch command \"switch1:set_active 0 1\""
428 # GtkToggleButton
429 check_error "togglebutton1:nnn" \
430 "ignoring GtkToggleButton command \"togglebutton1:nnn\""
431 check_error "togglebutton1:set_active" \
432 "ignoring GtkToggleButton command \"togglebutton1:set_active\""
433 check_error "togglebutton1:set_active " \
434 "ignoring GtkToggleButton command \"togglebutton1:set_active \""
435 check_error "togglebutton1:set_active 2" \
436 "ignoring GtkToggleButton command \"togglebutton1:set_active 2\""
437 check_error "togglebutton1:set_active 1 0" \
438 "ignoring GtkToggleButton command \"togglebutton1:set_active 1 0\""
439 # GtkCheckButton
440 check_error "checkbutton1:nnn" \
441 "ignoring GtkCheckButton command \"checkbutton1:nnn\""
442 check_error "checkbutton1:set_active" \
443 "ignoring GtkCheckButton command \"checkbutton1:set_active\""
444 check_error "checkbutton1:set_active " \
445 "ignoring GtkCheckButton command \"checkbutton1:set_active \""
446 check_error "checkbutton1:set_active 2" \
447 "ignoring GtkCheckButton command \"checkbutton1:set_active 2\""
448 check_error "checkbutton1:set_active 1 1" \
449 "ignoring GtkCheckButton command \"checkbutton1:set_active 1 1\""
450 # GtkRadioButton
451 check_error "radiobutton1:nnn" \
452 "ignoring GtkRadioButton command \"radiobutton1:nnn\""
453 check_error "radiobutton1:set_active" \
454 "ignoring GtkRadioButton command \"radiobutton1:set_active\""
455 check_error "radiobutton1:set_active " \
456 "ignoring GtkRadioButton command \"radiobutton1:set_active \""
457 check_error "radiobutton1:set_active nnn" \
458 "ignoring GtkRadioButton command \"radiobutton1:set_active nnn\""
459 check_error "radiobutton1:set_active 0 1" \
460 "ignoring GtkRadioButton command \"radiobutton1:set_active 0 1\""
461 # GtkSpinButton
462 check_error "spinbutton1:nnn" \
463 "ignoring GtkSpinButton command \"spinbutton1:nnn\""
464 check_error "spinbutton1:set_text" \
465 "ignoring GtkSpinButton command \"spinbutton1:set_text\""
466 check_error "spinbutton1:set_text " \
467 "ignoring GtkSpinButton command \"spinbutton1:set_text \""
468 check_error "spinbutton1:set_text nnn" \
469 "ignoring GtkSpinButton command \"spinbutton1:set_text nnn\""
470 check_error "spinbutton1:set_text 10 10" \
471 "ignoring GtkSpinButton command \"spinbutton1:set_text 10 10\""
472 check_error "spinbutton1:set_range" \
473 "ignoring GtkSpinButton command \"spinbutton1:set_range\""
474 check_error "spinbutton1:set_range " \
475 "ignoring GtkSpinButton command \"spinbutton1:set_range \""
476 check_error "spinbutton1:set_range 10 nnn" \
477 "ignoring GtkSpinButton command \"spinbutton1:set_range 10 nnn\""
478 check_error "spinbutton1:set_range 10 20 10" \
479 "ignoring GtkSpinButton command \"spinbutton1:set_range 10 20 10\""
480 check_error "spinbutton1:set_increments" \
481 "ignoring GtkSpinButton command \"spinbutton1:set_increments\""
482 check_error "spinbutton1:set_increments " \
483 "ignoring GtkSpinButton command \"spinbutton1:set_increments \""
484 check_error "spinbutton1:set_increments 10 nnn" \
485 "ignoring GtkSpinButton command \"spinbutton1:set_increments 10 nnn\""
486 check_error "spinbutton1:set_increments 10 20 10" \
487 "ignoring GtkSpinButton command \"spinbutton1:set_increments 10 20 10\""
488 # GtkDialog
489 check_error "dialog1:resize 100" \
490 "ignoring GtkDialog command \"dialog1:resize 100\""
491 check_error "dialog1:resize 100 100 100" \
492 "ignoring GtkDialog command \"dialog1:resize 100 100 100\""
493 check_error "dialog1:move" \
494 "ignoring GtkDialog command \"dialog1:move\""
495 check_error "dialog1:move " \
496 "ignoring GtkDialog command \"dialog1:move \""
497 check_error "dialog1:move 100" \
498 "ignoring GtkDialog command \"dialog1:move 100\""
499 check_error "dialog1:move 100 100 100" \
500 "ignoring GtkDialog command \"dialog1:move 100 100 100\""
501 check_error "dialog1:fullscreen 1" \
502 "ignoring GtkDialog command \"dialog1:fullscreen 1\""
503 check_error "dialog1:unfullscreen 1" \
504 "ignoring GtkDialog command \"dialog1:unfullscreen 1\""
505 # GtkFileChooserButton
506 check_error "filechooserbutton1:nnn" \
507 "ignoring GtkFileChooserButton command \"filechooserbutton1:nnn\""
508 # GtkFilechooserDialog
509 check_error "open_dialog:nnn" \
510 "ignoring GtkFileChooserDialog command \"open_dialog:nnn\""
511 check_error "open_dialog:resize 100" \
512 "ignoring GtkFileChooserDialog command \"open_dialog:resize 100\""
513 check_error "open_dialog:resize 100 100 100" \
514 "ignoring GtkFileChooserDialog command \"open_dialog:resize 100 100 100\""
515 check_error "open_dialog:move" \
516 "ignoring GtkFileChooserDialog command \"open_dialog:move\""
517 check_error "open_dialog:move " \
518 "ignoring GtkFileChooserDialog command \"open_dialog:move \""
519 check_error "open_dialog:move 100" \
520 "ignoring GtkFileChooserDialog command \"open_dialog:move 100\""
521 check_error "open_dialog:move 100 100 100" \
522 "ignoring GtkFileChooserDialog command \"open_dialog:move 100 100 100\""
523 check_error "open_dialog:fullscreen 1" \
524 "ignoring GtkFileChooserDialog command \"open_dialog:fullscreen 1\""
525 check_error "open_dialog:unfullscreen 1" \
526 "ignoring GtkFileChooserDialog command \"open_dialog:unfullscreen 1\""
527 # GtkFontButton
528 check_error "fontbutton1:nnn" \
529 "ignoring GtkFontButton command \"fontbutton1:nnn\""
530 # GtkColorButton
531 check_error "colorbutton1:nnn" \
532 "ignoring GtkColorButton command \"colorbutton1:nnn\""
533 # GtkPrintUnixDialog
534 check_error "printdialog:nnn" \
535 "ignoring GtkPrintUnixDialog command \"printdialog:nnn\""
536 check_error "statusbar1:push Click \"Print\"\n printdialog:print nonexistent.ps" \
537 "ignoring GtkPrintUnixDialog command \" printdialog:print nonexistent.ps\""
538 # GtkScale
539 check_error "scale1:nnn" \
540 "ignoring GtkScale command \"scale1:nnn\""
541 check_error "scale1:set_value" \
542 "ignoring GtkScale command \"scale1:set_value\""
543 check_error "scale1:set_value " \
544 "ignoring GtkScale command \"scale1:set_value \""
545 check_error "scale1:set_value nnn" \
546 "ignoring GtkScale command \"scale1:set_value nnn\""
547 check_error "scale1:set_value 10 10" \
548 "ignoring GtkScale command \"scale1:set_value 10 10\""
549 check_error "scale1:set_fill_level nnn" \
550 "ignoring GtkScale command \"scale1:set_fill_level nnn\""
551 check_error "scale1:set_fill_level 10 10" \
552 "ignoring GtkScale command \"scale1:set_fill_level 10 10\""
553 check_error "scale1:set_range" \
554 "ignoring GtkScale command \"scale1:set_range\""
555 check_error "scale1:set_range " \
556 "ignoring GtkScale command \"scale1:set_range \""
557 check_error "scale1:set_range 10" \
558 "ignoring GtkScale command \"scale1:set_range 10\""
559 check_error "scale1:set_range x 10" \
560 "ignoring GtkScale command \"scale1:set_range x 10\""
561 check_error "scale1:set_range 10 10 10" \
562 "ignoring GtkScale command \"scale1:set_range 10 10 10\""
563 check_error "scale1:set_increments" \
564 "ignoring GtkScale command \"scale1:set_increments\""
565 check_error "scale1:set_increments " \
566 "ignoring GtkScale command \"scale1:set_increments \""
567 check_error "scale1:set_increments 10" \
568 "ignoring GtkScale command \"scale1:set_increments 10\""
569 check_error "scale1:set_increments x 10" \
570 "ignoring GtkScale command \"scale1:set_increments x 10\""
571 check_error "scale1:set_increments 10 10 10" \
572 "ignoring GtkScale command \"scale1:set_increments 10 10 10\""
573 # GtkProgressBar
574 check_error "progressbar1:nnn" \
575 "ignoring GtkProgressBar command \"progressbar1:nnn\""
576 check_error "progressbar1:set_fraction" \
577 "ignoring GtkProgressBar command \"progressbar1:set_fraction\""
578 check_error "progressbar1:set_fraction " \
579 "ignoring GtkProgressBar command \"progressbar1:set_fraction \""
580 check_error "progressbar1:set_fraction nnn" \
581 "ignoring GtkProgressBar command \"progressbar1:set_fraction nnn\""
582 check_error "progressbar1:set_fraction .5 1" \
583 "ignoring GtkProgressBar command \"progressbar1:set_fraction .5 1\""
584 # GtkSpinner
585 check_error "spinner1:nnn" \
586 "ignoring GtkSpinner command \"spinner1:nnn\""
587 check_error "spinner1:start 1" \
588 "ignoring GtkSpinner command \"spinner1:start 1\""
589 check_error "spinner1:stop 1" \
590 "ignoring GtkSpinner command \"spinner1:stop 1\""
591 # GtkStatusbar
592 check_error "statusbar1:nnn" \
593 "ignoring GtkStatusbar command \"statusbar1:nnn\""
594 check_error "statusbar1:push_id" \
595 "ignoring GtkStatusbar command \"statusbar1:push_id\""
596 check_error "statusbar1:pop_id" \
597 "ignoring GtkStatusbar command \"statusbar1:pop_id\""
598 check_error "statusbar1:remove_all_id" \
599 "ignoring GtkStatusbar command \"statusbar1:remove_all_id\""
600 check_error "statusbar1:remove_all_id " \
601 "ignoring GtkStatusbar command \"statusbar1:remove_all_id \""
602 check_error "statusbar1:remove_all_id a b" \
603 "ignoring GtkStatusbar command \"statusbar1:remove_all_id a b\""
604 check_error "statusbar1:remove_all a" \
605 "ignoring GtkStatusbar command \"statusbar1:remove_all a\""
606 # GtkComboBoxText
607 check_error "comboboxtext1:nnn" \
608 "ignoring GtkComboBoxText command \"comboboxtext1:nnn\""
609 check_error "comboboxtext1:force" \
610 "ignoring GtkComboBoxText command \"comboboxtext1:force\""
612 # GtkTreeView #
613 check_error "treeview1:nnn" \
614 "ignoring GtkTreeView command \"treeview1:nnn\""
615 check_error "treeview2:nnn" \
616 "ignoring GtkTreeView command \"treeview2:nnn\""
617 check_error "treeview1:force" \
618 "ignoring GtkTreeView command \"treeview1:force\""
619 # GtkTreeView save
620 check_error "treeview1:save" \
621 "ignoring GtkTreeView command \"treeview1:save\""
622 mkdir $DIR; chmod a-w $DIR
623 check_error "treeview1:save $DIR/$FILE1" \
624 "ignoring GtkTreeView command \"treeview1:save $DIR/$FILE1\""
625 check_error "treeview1:save nonexistent/$FILE1" \
626 "ignoring GtkTreeView command \"treeview1:save nonexistent/$FILE1\""
627 rm -rf $DIR
628 # GtkTreeView insert_row
629 check_error "treeview1:insert_row 10000" \
630 "ignoring GtkTreeView command \"treeview1:insert_row 10000\""
631 check_error "treeview1:insert_row -1" \
632 "ignoring GtkTreeView command \"treeview1:insert_row -1\""
633 check_error "treeview1:insert_row nnn" \
634 "ignoring GtkTreeView command \"treeview1:insert_row nnn\""
635 check_error "treeview1:insert_row" \
636 "ignoring GtkTreeView command \"treeview1:insert_row\""
637 check_error "treeview1:insert_row " \
638 "ignoring GtkTreeView command \"treeview1:insert_row \""
639 check_error "treeview1:insert_row -1" \
640 "ignoring GtkTreeView command \"treeview1:insert_row -1\""
641 check_error "treeview1:insert_row 1000" \
642 "ignoring GtkTreeView command \"treeview1:insert_row 1000\""
643 check_error "treeview2:insert_row 0" \
644 "ignoring GtkTreeView command \"treeview2:insert_row 0\""
645 check_error "treeview3:insert_row end" \
646 "missing model/ignoring GtkTreeView command \"treeview3:insert_row end\""
647 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" \
648 "ignoring GtkTreeView command \" treeview2:expand abc\""
649 check_error "treeview2:expand" \
650 "ignoring GtkTreeView command \"treeview2:expand\""
651 check_error "treeview2:expand 0:abc" \
652 "ignoring GtkTreeView command \"treeview2:expand 0:abc\""
653 check_error "treeview2:expand 0 0" \
654 "ignoring GtkTreeView command \"treeview2:expand 0 0\""
655 check_error "treeview2:expand_all abc" \
656 "ignoring GtkTreeView command \"treeview2:expand_all abc\""
657 check_error "treeview2:expand_all 0:abc" \
658 "ignoring GtkTreeView command \"treeview2:expand_all 0:abc\""
659 check_error "treeview2:expand_all 0 0" \
660 "ignoring GtkTreeView command \"treeview2:expand_all 0 0\""
661 check_error "treeview2:collapse abc" \
662 "ignoring GtkTreeView command \"treeview2:collapse abc\""
663 check_error "treeview2:collapse 0:abc" \
664 "ignoring GtkTreeView command \"treeview2:collapse 0:abc\""
665 check_error "treeview2:collapse 0 0" \
666 "ignoring GtkTreeView command \"treeview2:collapse 0 0\""
667 check_error "treeview2:insert_row" \
668 "ignoring GtkTreeView command \"treeview2:insert_row\""
669 check_error "treeview2:insert_row abc" \
670 "ignoring GtkTreeView command \"treeview2:insert_row abc\""
671 check_error "treeview2:insert_row 0:abc" \
672 "ignoring GtkTreeView command \"treeview2:insert_row 0:abc\""
673 check_error "treeview2:insert_row end 0" \
674 "ignoring GtkTreeView command \"treeview2:insert_row end 0\""
675 # GtkTreeView move_row
676 check_error "treeview1:move_row" \
677 "ignoring GtkTreeView command \"treeview1:move_row\""
678 check_error "treeview1:move_row " \
679 "ignoring GtkTreeView command \"treeview1:move_row \""
680 check_error "treeview1:move_row nnn" \
681 "ignoring GtkTreeView command \"treeview1:move_row nnn\""
682 check_error "treeview1:move_row 10000 end" \
683 "ignoring GtkTreeView command \"treeview1:move_row 10000 end\""
684 check_error "treeview1:move_row -1 end" \
685 "ignoring GtkTreeView command \"treeview1:move_row -1 end\""
686 check_error "treeview1:move_row nnn end" \
687 "ignoring GtkTreeView command \"treeview1:move_row nnn end\""
688 check_error "treeview1:move_row 0 10000" \
689 "ignoring GtkTreeView command \"treeview1:move_row 0 10000\""
690 check_error "treeview1:move_row 0 -1" \
691 "ignoring GtkTreeView command \"treeview1:move_row 0 -1\""
692 check_error "treeview1:move_row 0 nnn" \
693 "ignoring GtkTreeView command \"treeview1:move_row 0 nnn\""
694 check_error "treeview2:move_row" \
695 "ignoring GtkTreeView command \"treeview2:move_row\""
696 check_error "treeview2:move_row 0:0 abc" \
697 "ignoring GtkTreeView command \"treeview2:move_row 0:0 abc\""
698 check_error "treeview2:move_row 0:0 0:abc" \
699 "ignoring GtkTreeView command \"treeview2:move_row 0:0 0:abc\""
700 check_error "treeview2:move_row abc end" \
701 "ignoring GtkTreeView command \"treeview2:move_row abc end\""
702 check_error "treeview2:move_row 0:abc end" \
703 "ignoring GtkTreeView command \"treeview2:move_row 0:abc end\""
704 check_error "treeview2:move_row 0 end 0" \
705 "ignoring GtkTreeView command \"treeview2:move_row 0 end 0\""
706 # GtkTreeView remove_row
707 check_error "treeview1:remove_row 10000" \
708 "ignoring GtkTreeView command \"treeview1:remove_row 10000\""
709 check_error "treeview1:remove_row -1" \
710 "ignoring GtkTreeView command \"treeview1:remove_row -1\""
711 check_error "treeview1:remove_row nnn" \
712 "ignoring GtkTreeView command \"treeview1:remove_row nnn\""
713 check_error "treeview1:remove_row" \
714 "ignoring GtkTreeView command \"treeview1:remove_row\""
715 check_error "treeview1:remove_row " \
716 "ignoring GtkTreeView command \"treeview1:remove_row \""
717 check_error "treeview2:remove_row" \
718 "ignoring GtkTreeView command \"treeview2:remove_row\""
719 check_error "treeview2:remove_row abc" \
720 "ignoring GtkTreeView command \"treeview2:remove_row abc\""
721 check_error "treeview2:remove_row 0:abc" \
722 "ignoring GtkTreeView command \"treeview2:remove_row 0:abc\""
723 check_error "treeview2:remove_row 0 0" \
724 "ignoring GtkTreeView command \"treeview2:remove_row 0 0\""
725 # GtkTreeView scroll
726 check_error "treeview1:scroll" \
727 "ignoring GtkTreeView command \"treeview1:scroll\""
728 check_error "treeview1:scroll " \
729 "ignoring GtkTreeView command \"treeview1:scroll \""
730 check_error "treeview1:scroll nnn" \
731 "ignoring GtkTreeView command \"treeview1:scroll nnn\""
732 check_error "treeview1:scroll -1 1" \
733 "ignoring GtkTreeView command \"treeview1:scroll -1 1\""
734 check_error "treeview1:scroll 1 -1" \
735 "ignoring GtkTreeView command \"treeview1:scroll 1 -1\""
736 check_error "treeview1:scroll nnn 1" \
737 "ignoring GtkTreeView command \"treeview1:scroll nnn 1\""
738 check_error "treeview1:scroll 1 nnn" \
739 "ignoring GtkTreeView command \"treeview1:scroll 1 nnn\""
740 check_error "treeview1:scroll 0 0 0" \
741 "ignoring GtkTreeView command \"treeview1:scroll 0 0 0\""
742 check_error "treeview2:scroll" \
743 "ignoring GtkTreeView command \"treeview2:scroll\""
744 check_error "treeview2:scroll abc" \
745 "ignoring GtkTreeView command \"treeview2:scroll abc\""
746 check_error "treeview2:scroll 0:abc" \
747 "ignoring GtkTreeView command \"treeview2:scroll 0:abc\""
748 check_error "treeview2:scroll abc 0" \
749 "ignoring GtkTreeView command \"treeview2:scroll abc 0\""
750 check_error "treeview2:scroll 0:abc 0" \
751 "ignoring GtkTreeView command \"treeview2:scroll 0:abc 0\""
752 check_error "treeview2:scroll 0:0" \
753 "ignoring GtkTreeView command \"treeview2:scroll 0:0\""
754 check_error "treeview2:scroll 0:0 abc" \
755 "ignoring GtkTreeView command \"treeview2:scroll 0:0 abc\""
756 check_error "treeview2:set_cursor abc" \
757 "ignoring GtkTreeView command \"treeview2:set_cursor abc\""
758 check_error "treeview2:set_cursor 0:abc" \
759 "ignoring GtkTreeView command \"treeview2:set_cursor 0:abc\""
760 check_error "treeview2:set_cursor 0 0" \
761 "ignoring GtkTreeView command \"treeview2:set_cursor 0 0\""
762 check_error "treeview2:clear 0" \
763 "ignoring GtkTreeView command \"treeview2:clear 0\""
764 check_error "treeview2:clear\n treeview2:insert_row 0" \
765 "ignoring GtkTreeView command \" treeview2:insert_row 0\""
766 # GtkTreeView set
767 check_error "treeview1:set" \
768 "ignoring GtkTreeView command \"treeview1:set\""
769 check_error "treeview1:set " \
770 "ignoring GtkTreeView command \"treeview1:set \""
771 check_error "treeview1:set nnn" \
772 "ignoring GtkTreeView command \"treeview1:set nnn\""
773 check_error "treeview1:set 0 nnn" \
774 "ignoring GtkTreeView command \"treeview1:set 0 nnn\""
775 check_error "treeview1:set nnn 0" \
776 "ignoring GtkTreeView command \"treeview1:set nnn 0\""
777 check_error "treeview1:set 1 10000 77" \
778 "ignoring GtkTreeView command \"treeview1:set 1 10000 77\""
779 check_error "treeview1:set 1 11 77" \
780 "ignoring GtkTreeView command \"treeview1:set 1 11 77\""
781 check_error "treeview1:set nnn 1 77" \
782 "ignoring GtkTreeView command \"treeview1:set nnn 1 77\""
783 check_error "treeview1:set 1 nnn 77" \
784 "ignoring GtkTreeView command \"treeview1:set 1 nnn 77\""
785 check_error "treeview1:set -1 1 77" \
786 "ignoring GtkTreeView command \"treeview1:set -1 1 77\""
787 check_error "treeview1:set 1 -1 77" \
788 "ignoring GtkTreeView command \"treeview1:set 1 -1 77\""
789 # GtkTreeView set "abc" into numeric column
790 check_error "treeview1:set 1 1 abc" \
791 "ignoring GtkTreeView command \"treeview1:set 1 1 abc\""
793 # GtkTreeViewColumn
794 check_error "treeviewcolumn3:nnn" \
795 "ignoring GtkTreeViewColumn command \"treeviewcolumn3:nnn\""
796 check_error "treeviewcolumn3:force" \
797 "ignoring GtkTreeViewColumn command \"treeviewcolumn3:force\""
798 # GtkEntry
799 check_error "entry1:nnn" \
800 "ignoring GtkEntry command \"entry1:nnn\""
801 # GtkCalendar
802 check_error "calendar1:nnn" \
803 "ignoring GtkCalendar command \"calendar1:nnn\""
804 check_error "calendar1:select_date" \
805 "ignoring GtkCalendar command \"calendar1:select_date\""
806 check_error "calendar1:select_date " \
807 "ignoring GtkCalendar command \"calendar1:select_date \""
808 check_error "calendar1:select_date nnn" \
809 "ignoring GtkCalendar command \"calendar1:select_date nnn\""
810 check_error "calendar1:select_date 2000-12-33" \
811 "ignoring GtkCalendar command \"calendar1:select_date 2000-12-33\""
812 check_error "calendar1:select_date 2000-13-20" \
813 "ignoring GtkCalendar command \"calendar1:select_date 2000-13-20\""
814 check_error "calendar1:select_date 2000-10-10 1" \
815 "ignoring GtkCalendar command \"calendar1:select_date 2000-10-10 1\""
816 check_error "calendar1:mark_day" \
817 "ignoring GtkCalendar command \"calendar1:mark_day\""
818 check_error "calendar1:mark_day " \
819 "ignoring GtkCalendar command \"calendar1:mark_day \""
820 check_error "calendar1:mark_day nnn" \
821 "ignoring GtkCalendar command \"calendar1:mark_day nnn\""
822 check_error "calendar1:mark_day 10 1" \
823 "ignoring GtkCalendar command \"calendar1:mark_day 10 1\""
824 check_error "calendar1:clear_marks 1" \
825 "ignoring GtkCalendar command \"calendar1:clear_marks 1\""
826 # GtkSocket
827 check_error "socket1:nnn" \
828 "ignoring GtkSocket command \"socket1:nnn\""
829 check_error "socket1:id 1" \
830 "ignoring GtkSocket command \"socket1:id 1\""
831 # GtkScrolledWindow
832 check_error "scrolledwindow3:nnn" \
833 "ignoring GtkScrolledWindow command \"scrolledwindow3:nnn\""
834 check_error "scrolledwindow3:hscroll" \
835 "ignoring GtkScrolledWindow command \"scrolledwindow3:hscroll\""
836 check_error "scrolledwindow3:hscroll " \
837 "ignoring GtkScrolledWindow command \"scrolledwindow3:hscroll \""
838 check_error "scrolledwindow3:hscroll nnn" \
839 "ignoring GtkScrolledWindow command \"scrolledwindow3:hscroll nnn\""
840 check_error "scrolledwindow3:hscroll 100 100" \
841 "ignoring GtkScrolledWindow command \"scrolledwindow3:hscroll 100 100\""
842 check_error "scrolledwindow3:vscroll" \
843 "ignoring GtkScrolledWindow command \"scrolledwindow3:vscroll\""
844 check_error "scrolledwindow3:vscroll " \
845 "ignoring GtkScrolledWindow command \"scrolledwindow3:vscroll \""
846 check_error "scrolledwindow3:vscroll nnn" \
847 "ignoring GtkScrolledWindow command \"scrolledwindow3:vscroll nnn\""
848 check_error "scrolledwindow3:vscroll 100 100" \
849 "ignoring GtkScrolledWindow command \"scrolledwindow3:vscroll 100 100\""
850 check_error "scrolledwindow3:hscroll_to_range" \
851 "ignoring GtkScrolledWindow command \"scrolledwindow3:hscroll_to_range\""
852 check_error "scrolledwindow3:hscroll_to_range " \
853 "ignoring GtkScrolledWindow command \"scrolledwindow3:hscroll_to_range \""
854 check_error "scrolledwindow3:hscroll_to_range nnn" \
855 "ignoring GtkScrolledWindow command \"scrolledwindow3:hscroll_to_range nnn\""
856 check_error "scrolledwindow3:hscroll_to_range 10" \
857 "ignoring GtkScrolledWindow command \"scrolledwindow3:hscroll_to_range 10\""
858 check_error "scrolledwindow3:hscroll_to_range 10 nnn" \
859 "ignoring GtkScrolledWindow command \"scrolledwindow3:hscroll_to_range 10 nnn\""
860 check_error "scrolledwindow3:hscroll_to_range nnn 10" \
861 "ignoring GtkScrolledWindow command \"scrolledwindow3:hscroll_to_range nnn 10\""
862 check_error "scrolledwindow3:hscroll_to_range 5 10 10" \
863 "ignoring GtkScrolledWindow command \"scrolledwindow3:hscroll_to_range 5 10 10\""
864 check_error "scrolledwindow3:vscroll_to_range" \
865 "ignoring GtkScrolledWindow command \"scrolledwindow3:vscroll_to_range\""
866 check_error "scrolledwindow3:vscroll_to_range " \
867 "ignoring GtkScrolledWindow command \"scrolledwindow3:vscroll_to_range \""
868 check_error "scrolledwindow3:vscroll_to_range nnn" \
869 "ignoring GtkScrolledWindow command \"scrolledwindow3:vscroll_to_range nnn\""
870 check_error "scrolledwindow3:vscroll_to_range 10" \
871 "ignoring GtkScrolledWindow command \"scrolledwindow3:vscroll_to_range 10\""
872 check_error "scrolledwindow3:vscroll_to_range 10 nnn" \
873 "ignoring GtkScrolledWindow command \"scrolledwindow3:vscroll_to_range 10 nnn\""
874 check_error "scrolledwindow3:vscroll_to_range nnn 10" \
875 "ignoring GtkScrolledWindow command \"scrolledwindow3:vscroll_to_range nnn 10\""
876 check_error "scrolledwindow3:vscroll_to_range 5 10 10" \
877 "ignoring GtkScrolledWindow command \"scrolledwindow3:vscroll_to_range 5 10 10\""
878 # GtkEventBox
879 check_error "eventbox1:nnn" \
880 "ignoring GtkEventBox command \"eventbox1:nnn\""
881 # GtkDrawingArea
882 check_error "drawingarea1:nnn" \
883 "ignoring GtkDrawingArea command \"drawingarea1:nnn\""
884 check_error "drawingarea1:rectangle" \
885 "ignoring GtkDrawingArea command \"drawingarea1:rectangle\""
886 check_error "drawingarea1:rectangle " \
887 "ignoring GtkDrawingArea command \"drawingarea1:rectangle \""
888 check_error "drawingarea1:rectangle nnn" \
889 "ignoring GtkDrawingArea command \"drawingarea1:rectangle nnn\""
890 check_error "drawingarea1:rectangle 1" \
891 "ignoring GtkDrawingArea command \"drawingarea1:rectangle 1\""
892 check_error "drawingarea1:rectangle 1 10" \
893 "ignoring GtkDrawingArea command \"drawingarea1:rectangle 1 10\""
894 check_error "drawingarea1:rectangle 1 10 10" \
895 "ignoring GtkDrawingArea command \"drawingarea1:rectangle 1 10 10\""
896 check_error "drawingarea1:rectangle 1 10 10 20" \
897 "ignoring GtkDrawingArea command \"drawingarea1:rectangle 1 10 10 20\""
898 check_error "drawingarea1:rectangle 1 10 10 20 nnn" \
899 "ignoring GtkDrawingArea command \"drawingarea1:rectangle 1 10 10 20 nnn\""
900 check_error "drawingarea1:rectangle 1 10 10 20 20 20" \
901 "ignoring GtkDrawingArea command \"drawingarea1:rectangle 1 10 10 20 20 20\""
902 check_error "drawingarea1:arc" \
903 "ignoring GtkDrawingArea command \"drawingarea1:arc\""
904 check_error "drawingarea1:arc " \
905 "ignoring GtkDrawingArea command \"drawingarea1:arc \""
906 check_error "drawingarea1:arc nnn" \
907 "ignoring GtkDrawingArea command \"drawingarea1:arc nnn\""
908 check_error "drawingarea1:arc 1" \
909 "ignoring GtkDrawingArea command \"drawingarea1:arc 1\""
910 check_error "drawingarea1:arc 1 10" \
911 "ignoring GtkDrawingArea command \"drawingarea1:arc 1 10\""
912 check_error "drawingarea1:arc 1 10 10" \
913 "ignoring GtkDrawingArea command \"drawingarea1:arc 1 10 10\""
914 check_error "drawingarea1:arc 1 10 10 20" \
915 "ignoring GtkDrawingArea command \"drawingarea1:arc 1 10 10 20\""
916 check_error "drawingarea1:arc 1 10 10 20 45" \
917 "ignoring GtkDrawingArea command \"drawingarea1:arc 1 10 10 20 45\""
918 check_error "drawingarea1:arc 1 10 10 20 45 nnn" \
919 "ignoring GtkDrawingArea command \"drawingarea1:arc 1 10 10 20 45 nnn\""
920 check_error "drawingarea1:arc 1 10 10 20 45 90 7" \
921 "ignoring GtkDrawingArea command \"drawingarea1:arc 1 10 10 20 45 90 7\""
922 check_error "drawingarea1:arc_negative" \
923 "ignoring GtkDrawingArea command \"drawingarea1:arc_negative\""
924 check_error "drawingarea1:arc_negative " \
925 "ignoring GtkDrawingArea command \"drawingarea1:arc_negative \""
926 check_error "drawingarea1:arc_negative nnn" \
927 "ignoring GtkDrawingArea command \"drawingarea1:arc_negative nnn\""
928 check_error "drawingarea1:arc_negative 1" \
929 "ignoring GtkDrawingArea command \"drawingarea1:arc_negative 1\""
930 check_error "drawingarea1:arc_negative 1 10" \
931 "ignoring GtkDrawingArea command \"drawingarea1:arc_negative 1 10\""
932 check_error "drawingarea1:arc_negative 1 10 10" \
933 "ignoring GtkDrawingArea command \"drawingarea1:arc_negative 1 10 10\""
934 check_error "drawingarea1:arc_negative 1 10 10 20" \
935 "ignoring GtkDrawingArea command \"drawingarea1:arc_negative 1 10 10 20\""
936 check_error "drawingarea1:arc_negative 1 10 10 20 45" \
937 "ignoring GtkDrawingArea command \"drawingarea1:arc_negative 1 10 10 20 45\""
938 check_error "drawingarea1:arc_negative 1 10 10 20 45 nnn" \
939 "ignoring GtkDrawingArea command \"drawingarea1:arc_negative 1 10 10 20 45 nnn\""
940 check_error "drawingarea1:arc_negative 1 10 10 20 45 90 7" \
941 "ignoring GtkDrawingArea command \"drawingarea1:arc_negative 1 10 10 20 45 90 7\""
942 check_error "drawingarea1:curve_to" \
943 "ignoring GtkDrawingArea command \"drawingarea1:curve_to\""
944 check_error "drawingarea1:curve_to " \
945 "ignoring GtkDrawingArea command \"drawingarea1:curve_to \""
946 check_error "drawingarea1:curve_to nnn" \
947 "ignoring GtkDrawingArea command \"drawingarea1:curve_to nnn\""
948 check_error "drawingarea1:curve_to 1" \
949 "ignoring GtkDrawingArea command \"drawingarea1:curve_to 1\""
950 check_error "drawingarea1:curve_to 1 10" \
951 "ignoring GtkDrawingArea command \"drawingarea1:curve_to 1 10\""
952 check_error "drawingarea1:curve_to 1 10 10" \
953 "ignoring GtkDrawingArea command \"drawingarea1:curve_to 1 10 10\""
954 check_error "drawingarea1:curve_to 1 10 10 20" \
955 "ignoring GtkDrawingArea command \"drawingarea1:curve_to 1 10 10 20\""
956 check_error "drawingarea1:curve_to 1 10 10 20 20" \
957 "ignoring GtkDrawingArea command \"drawingarea1:curve_to 1 10 10 20 20\""
958 check_error "drawingarea1:curve_to 1 10 10 20 20 25" \
959 "ignoring GtkDrawingArea command \"drawingarea1:curve_to 1 10 10 20 20 25\""
960 check_error "drawingarea1:curve_to 1 10 10 20 20 25 nnn" \
961 "ignoring GtkDrawingArea command \"drawingarea1:curve_to 1 10 10 20 20 25 nnn\""
962 check_error "drawingarea1:curve_to 1 10 10 20 20 25 25 77" \
963 "ignoring GtkDrawingArea command \"drawingarea1:curve_to 1 10 10 20 20 25 25 77\""
964 check_error "drawingarea1:rel_curve_to" \
965 "ignoring GtkDrawingArea command \"drawingarea1:rel_curve_to\""
966 check_error "drawingarea1:rel_curve_to " \
967 "ignoring GtkDrawingArea command \"drawingarea1:rel_curve_to \""
968 check_error "drawingarea1:rel_curve_to nnn" \
969 "ignoring GtkDrawingArea command \"drawingarea1:rel_curve_to nnn\""
970 check_error "drawingarea1:rel_curve_to 1" \
971 "ignoring GtkDrawingArea command \"drawingarea1:rel_curve_to 1\""
972 check_error "drawingarea1:rel_curve_to 1 10" \
973 "ignoring GtkDrawingArea command \"drawingarea1:rel_curve_to 1 10\""
974 check_error "drawingarea1:rel_curve_to 1 10 10" \
975 "ignoring GtkDrawingArea command \"drawingarea1:rel_curve_to 1 10 10\""
976 check_error "drawingarea1:rel_curve_to 1 10 10 20" \
977 "ignoring GtkDrawingArea command \"drawingarea1:rel_curve_to 1 10 10 20\""
978 check_error "drawingarea1:rel_curve_to 1 10 10 20 20" \
979 "ignoring GtkDrawingArea command \"drawingarea1:rel_curve_to 1 10 10 20 20\""
980 check_error "drawingarea1:rel_curve_to 1 10 10 20 20 25" \
981 "ignoring GtkDrawingArea command \"drawingarea1:rel_curve_to 1 10 10 20 20 25\""
982 check_error "drawingarea1:rel_curve_to 1 10 10 20 20 25 nnn" \
983 "ignoring GtkDrawingArea command \"drawingarea1:rel_curve_to 1 10 10 20 20 25 nnn\""
984 check_error "drawingarea1:rel_curve_to 1 10 10 20 20 25 25 77" \
985 "ignoring GtkDrawingArea command \"drawingarea1:rel_curve_to 1 10 10 20 20 25 25 77\""
986 check_error "drawingarea1:line_to" \
987 "ignoring GtkDrawingArea command \"drawingarea1:line_to\""
988 check_error "drawingarea1:line_to " \
989 "ignoring GtkDrawingArea command \"drawingarea1:line_to \""
990 check_error "drawingarea1:line_to nnn" \
991 "ignoring GtkDrawingArea command \"drawingarea1:line_to nnn\""
992 check_error "drawingarea1:line_to 1" \
993 "ignoring GtkDrawingArea command \"drawingarea1:line_to 1\""
994 check_error "drawingarea1:line_to 1 20" \
995 "ignoring GtkDrawingArea command \"drawingarea1:line_to 1 20\""
996 check_error "drawingarea1:line_to 1 20 nnn" \
997 "ignoring GtkDrawingArea command \"drawingarea1:line_to 1 20 nnn\""
998 check_error "drawingarea1:line_to 1 20 20 20" \
999 "ignoring GtkDrawingArea command \"drawingarea1:line_to 1 20 20 20\""
1000 check_error "drawingarea1:rel_line_to" \
1001 "ignoring GtkDrawingArea command \"drawingarea1:rel_line_to\""
1002 check_error "drawingarea1:rel_line_to " \
1003 "ignoring GtkDrawingArea command \"drawingarea1:rel_line_to \""
1004 check_error "drawingarea1:rel_line_to nnn" \
1005 "ignoring GtkDrawingArea command \"drawingarea1:rel_line_to nnn\""
1006 check_error "drawingarea1:rel_line_to 1" \
1007 "ignoring GtkDrawingArea command \"drawingarea1:rel_line_to 1\""
1008 check_error "drawingarea1:rel_line_to 1 20" \
1009 "ignoring GtkDrawingArea command \"drawingarea1:rel_line_to 1 20\""
1010 check_error "drawingarea1:rel_line_to 1 20 nnn" \
1011 "ignoring GtkDrawingArea command \"drawingarea1:rel_line_to 1 20 nnn\""
1012 check_error "drawingarea1:rel_line_to 1 20 nnn" \
1013 "ignoring GtkDrawingArea command \"drawingarea1:rel_line_to 1 20 nnn\""
1014 check_error "drawingarea1:rel_line_to 1 20 20 20" \
1015 "ignoring GtkDrawingArea command \"drawingarea1:rel_line_to 1 20 20 20\""
1016 check_error "drawingarea1:move_to" \
1017 "ignoring GtkDrawingArea command \"drawingarea1:move_to\""
1018 check_error "drawingarea1:move_to " \
1019 "ignoring GtkDrawingArea command \"drawingarea1:move_to \""
1020 check_error "drawingarea1:move_to nnn" \
1021 "ignoring GtkDrawingArea command \"drawingarea1:move_to nnn\""
1022 check_error "drawingarea1:move_to 1" \
1023 "ignoring GtkDrawingArea command \"drawingarea1:move_to 1\""
1024 check_error "drawingarea1:move_to 1 20" \
1025 "ignoring GtkDrawingArea command \"drawingarea1:move_to 1 20\""
1026 check_error "drawingarea1:move_to 1 20 nnn" \
1027 "ignoring GtkDrawingArea command \"drawingarea1:move_to 1 20 nnn\""
1028 check_error "drawingarea1:move_to 1 20 20 20" \
1029 "ignoring GtkDrawingArea command \"drawingarea1:move_to 1 20 20 20\""
1030 check_error "drawingarea1:rel_move_to" \
1031 "ignoring GtkDrawingArea command \"drawingarea1:rel_move_to\""
1032 check_error "drawingarea1:rel_move_to " \
1033 "ignoring GtkDrawingArea command \"drawingarea1:rel_move_to \""
1034 check_error "drawingarea1:rel_move_to nnn" \
1035 "ignoring GtkDrawingArea command \"drawingarea1:rel_move_to nnn\""
1036 check_error "drawingarea1:rel_move_to 1" \
1037 "ignoring GtkDrawingArea command \"drawingarea1:rel_move_to 1\""
1038 check_error "drawingarea1:rel_move_to 1 20" \
1039 "ignoring GtkDrawingArea command \"drawingarea1:rel_move_to 1 20\""
1040 check_error "drawingarea1:rel_move_to 1 20 nnn" \
1041 "ignoring GtkDrawingArea command \"drawingarea1:rel_move_to 1 20 nnn\""
1042 check_error "drawingarea1:rel_move_to 1 20 20 20" \
1043 "ignoring GtkDrawingArea command \"drawingarea1:rel_move_to 1 20 20 20\""
1044 check_error "drawingarea1:close_path" \
1045 "ignoring GtkDrawingArea command \"drawingarea1:close_path\""
1046 check_error "drawingarea1:close_path " \
1047 "ignoring GtkDrawingArea command \"drawingarea1:close_path \""
1048 check_error "drawingarea1:close_path nnn" \
1049 "ignoring GtkDrawingArea command \"drawingarea1:close_path nnn\""
1050 check_error "drawingarea1:close_path 1 1" \
1051 "ignoring GtkDrawingArea command \"drawingarea1:close_path 1 1\""
1052 check_error "drawingarea1:set_source_rgba" \
1053 "ignoring GtkDrawingArea command \"drawingarea1:set_source_rgba\""
1054 check_error "drawingarea1:set_source_rgba " \
1055 "ignoring GtkDrawingArea command \"drawingarea1:set_source_rgba \""
1056 check_error "drawingarea1:set_source_rgba nnn" \
1057 "ignoring GtkDrawingArea command \"drawingarea1:set_source_rgba nnn\""
1058 check_error "drawingarea1:set_dash" \
1059 "ignoring GtkDrawingArea command \"drawingarea1:set_dash\""
1060 check_error "drawingarea1:set_dash " \
1061 "ignoring GtkDrawingArea command \"drawingarea1:set_dash \""
1062 check_error "drawingarea1:set_dash nnn" \
1063 "ignoring GtkDrawingArea command \"drawingarea1:set_dash nnn\""
1064 check_error "drawingarea1:set_line_cap" \
1065 "ignoring GtkDrawingArea command \"drawingarea1:set_line_cap\""
1066 check_error "drawingarea1:set_line_cap " \
1067 "ignoring GtkDrawingArea command \"drawingarea1:set_line_cap \""
1068 check_error "drawingarea1:set_line_cap nnn" \
1069 "ignoring GtkDrawingArea command \"drawingarea1:set_line_cap nnn\""
1070 check_error "drawingarea1:set_line_cap 1" \
1071 "ignoring GtkDrawingArea command \"drawingarea1:set_line_cap 1\""
1072 check_error "drawingarea1:set_line_cap 1 nnn" \
1073 "ignoring GtkDrawingArea command \"drawingarea1:set_line_cap 1 nnn\""
1074 check_error "drawingarea1:set_line_cap 1 butt butt" \
1075 "ignoring GtkDrawingArea command \"drawingarea1:set_line_cap 1 butt butt\""
1076 check_error "drawingarea1:set_line_join" \
1077 "ignoring GtkDrawingArea command \"drawingarea1:set_line_join\""
1078 check_error "drawingarea1:set_line_join " \
1079 "ignoring GtkDrawingArea command \"drawingarea1:set_line_join \""
1080 check_error "drawingarea1:set_line_join nnn" \
1081 "ignoring GtkDrawingArea command \"drawingarea1:set_line_join nnn\""
1082 check_error "drawingarea1:set_line_join 1" \
1083 "ignoring GtkDrawingArea command \"drawingarea1:set_line_join 1\""
1084 check_error "drawingarea1:set_line_join 1 nnn" \
1085 "ignoring GtkDrawingArea command \"drawingarea1:set_line_join 1 nnn\""
1086 check_error "drawingarea1:set_line_join 1 miter miter" \
1087 "ignoring GtkDrawingArea command \"drawingarea1:set_line_join 1 miter miter\""
1088 check_error "drawingarea1:set_line_width" \
1089 "ignoring GtkDrawingArea command \"drawingarea1:set_line_width\""
1090 check_error "drawingarea1:set_line_width " \
1091 "ignoring GtkDrawingArea command \"drawingarea1:set_line_width \""
1092 check_error "drawingarea1:set_line_width nnn" \
1093 "ignoring GtkDrawingArea command \"drawingarea1:set_line_width nnn\""
1094 check_error "drawingarea1:set_line_width 1" \
1095 "ignoring GtkDrawingArea command \"drawingarea1:set_line_width 1\""
1096 check_error "drawingarea1:set_line_width 1 nnn" \
1097 "ignoring GtkDrawingArea command \"drawingarea1:set_line_width 1 nnn\""
1098 check_error "drawingarea1:set_line_width 1 3 3" \
1099 "ignoring GtkDrawingArea command \"drawingarea1:set_line_width 1 3 3\""
1100 check_error "drawingarea1:fill" \
1101 "ignoring GtkDrawingArea command \"drawingarea1:fill\""
1102 check_error "drawingarea1:fill " \
1103 "ignoring GtkDrawingArea command \"drawingarea1:fill \""
1104 check_error "drawingarea1:fill nnn" \
1105 "ignoring GtkDrawingArea command \"drawingarea1:fill nnn\""
1106 check_error "drawingarea1:fill 1 1" \
1107 "ignoring GtkDrawingArea command \"drawingarea1:fill 1 1\""
1108 check_error "drawingarea1:fill_preserve" \
1109 "ignoring GtkDrawingArea command \"drawingarea1:fill_preserve\""
1110 check_error "drawingarea1:fill_preserve " \
1111 "ignoring GtkDrawingArea command \"drawingarea1:fill_preserve \""
1112 check_error "drawingarea1:fill_preserve nnn" \
1113 "ignoring GtkDrawingArea command \"drawingarea1:fill_preserve nnn\""
1114 check_error "drawingarea1:fill_preserve 1 1" \
1115 "ignoring GtkDrawingArea command \"drawingarea1:fill_preserve 1 1\""
1116 check_error "drawingarea1:stroke" \
1117 "ignoring GtkDrawingArea command \"drawingarea1:stroke\""
1118 check_error "drawingarea1:stroke " \
1119 "ignoring GtkDrawingArea command \"drawingarea1:stroke \""
1120 check_error "drawingarea1:stroke nnn" \
1121 "ignoring GtkDrawingArea command \"drawingarea1:stroke nnn\""
1122 check_error "drawingarea1:stroke 3 3" \
1123 "ignoring GtkDrawingArea command \"drawingarea1:stroke 3 3\""
1124 check_error "drawingarea1:stroke_preserve" \
1125 "ignoring GtkDrawingArea command \"drawingarea1:stroke_preserve\""
1126 check_error "drawingarea1:stroke_preserve " \
1127 "ignoring GtkDrawingArea command \"drawingarea1:stroke_preserve \""
1128 check_error "drawingarea1:stroke_preserve nnn" \
1129 "ignoring GtkDrawingArea command \"drawingarea1:stroke_preserve nnn\""
1130 check_error "drawingarea1:stroke_preserve 3 3" \
1131 "ignoring GtkDrawingArea command \"drawingarea1:stroke_preserve 3 3\""
1132 check_error "drawingarea1:remove" \
1133 "ignoring GtkDrawingArea command \"drawingarea1:remove\""
1134 check_error "drawingarea1:remove " \
1135 "ignoring GtkDrawingArea command \"drawingarea1:remove \""
1136 check_error "drawingarea1:remove nnn" \
1137 "ignoring GtkDrawingArea command \"drawingarea1:remove nnn\""
1138 check_error "drawingarea1:remove 1 1" \
1139 "ignoring GtkDrawingArea command \"drawingarea1:remove 1 1\""
1140 check_error "drawingarea1:set_show_text" \
1141 "ignoring GtkDrawingArea command \"drawingarea1:set_show_text\""
1142 check_error "drawingarea1:set_show_text " \
1143 "ignoring GtkDrawingArea command \"drawingarea1:set_show_text \""
1144 check_error "drawingarea1:set_show_text nnn" \
1145 "ignoring GtkDrawingArea command \"drawingarea1:set_show_text nnn\""
1146 check_error "drawingarea1:set_font_face" \
1147 "ignoring GtkDrawingArea command \"drawingarea1:set_font_face\""
1148 check_error "drawingarea1:set_font_face " \
1149 "ignoring GtkDrawingArea command \"drawingarea1:set_font_face \""
1150 check_error "drawingarea1:set_font_face nnn" \
1151 "ignoring GtkDrawingArea command \"drawingarea1:set_font_face nnn\""
1152 check_error "drawingarea1:set_font_face 1" \
1153 "ignoring GtkDrawingArea command \"drawingarea1:set_font_face 1\""
1154 check_error "drawingarea1:set_font_face 1 normal" \
1155 "ignoring GtkDrawingArea command \"drawingarea1:set_font_face 1 normal\""
1156 check_error "drawingarea1:set_font_size" \
1157 "ignoring GtkDrawingArea command \"drawingarea1:set_font_size\""
1158 check_error "drawingarea1:set_font_size " \
1159 "ignoring GtkDrawingArea command \"drawingarea1:set_font_size \""
1160 check_error "drawingarea1:set_font_size nnn" \
1161 "ignoring GtkDrawingArea command \"drawingarea1:set_font_size nnn\""
1162 check_error "drawingarea1:set_font_size 1" \
1163 "ignoring GtkDrawingArea command \"drawingarea1:set_font_size 1\""
1164 check_error "drawingarea1:set_font_size 1 nnn" \
1165 "ignoring GtkDrawingArea command \"drawingarea1:set_font_size 1 nnn\""
1166 check_error "drawingarea1:set_font_size 1 10 10" \
1167 "ignoring GtkDrawingArea command \"drawingarea1:set_font_size 1 10 10\""
1168 check_error "drawingarea1:set_font_face" \
1169 "ignoring GtkDrawingArea command \"drawingarea1:set_font_face\""
1170 check_error "drawingarea1:set_font_face 1" \
1171 "ignoring GtkDrawingArea command \"drawingarea1:set_font_face 1\""
1172 check_error "drawingarea1:set_font_face 1 normal" \
1173 "ignoring GtkDrawingArea command \"drawingarea1:set_font_face 1 normal\""
1174 check_error "drawingarea1:set_font_face 1 normal nnn" \
1175 "ignoring GtkDrawingArea command \"drawingarea1:set_font_face 1 normal nnn\""
1176 check_error "drawingarea1:set_font_face 1 nnn normal" \
1177 "ignoring GtkDrawingArea command \"drawingarea1:set_font_face 1 nnn normal\""
1178 check_error "drawingarea1:set_font_face x normal normal" \
1179 "ignoring GtkDrawingArea command \"drawingarea1:set_font_face x normal normal\""
1180 check_error "drawingarea1:rel_move_for" \
1181 "ignoring GtkDrawingArea command \"drawingarea1:rel_move_for\""
1182 check_error "drawingarea1:rel_move_for " \
1183 "ignoring GtkDrawingArea command \"drawingarea1:rel_move_for \""
1184 check_error "drawingarea1:rel_move_for 1" \
1185 "ignoring GtkDrawingArea command \"drawingarea1:rel_move_for 1\""
1186 check_error "drawingarea1:rel_move_for 1 nnn Text" \
1187 "ignoring GtkDrawingArea command \"drawingarea1:rel_move_for 1 nnn Text\""
1188 check_error "drawingarea1:rel_move_for nnn c Text" \
1189 "ignoring GtkDrawingArea command \"drawingarea1:rel_move_for nnn c Text\""
1190 check_error "drawingarea1:transform" \
1191 "ignoring GtkDrawingArea command \"drawingarea1:transform\""
1192 check_error "drawingarea1:transform " \
1193 "ignoring GtkDrawingArea command \"drawingarea1:transform \""
1194 check_error "drawingarea1:transform nnn" \
1195 "ignoring GtkDrawingArea command \"drawingarea1:transform nnn\""
1196 check_error "drawingarea1:transform 1 2" \
1197 "ignoring GtkDrawingArea command \"drawingarea1:transform 1 2\""
1198 check_error "drawingarea1:transform 1 2 3" \
1199 "ignoring GtkDrawingArea command \"drawingarea1:transform 1 2 3\""
1200 check_error "drawingarea1:transform 1 2 3 4" \
1201 "ignoring GtkDrawingArea command \"drawingarea1:transform 1 2 3 4\""
1202 check_error "drawingarea1:transform 1 2 3 4 5" \
1203 "ignoring GtkDrawingArea command \"drawingarea1:transform 1 2 3 4 5\""
1204 check_error "drawingarea1:transform 1 2 3 4 5 6" \
1205 "ignoring GtkDrawingArea command \"drawingarea1:transform 1 2 3 4 5 6\""
1206 check_error "drawingarea1:transform 1 2 3 x 5 6 7" \
1207 "ignoring GtkDrawingArea command \"drawingarea1:transform 1 2 3 x 5 6 7\""
1208 check_error "drawingarea1:transform 1 2 3 4 5 6 7 8" \
1209 "ignoring GtkDrawingArea command \"drawingarea1:transform 1 2 3 4 5 6 7 8\""
1210 check_error "drawingarea1:translate" \
1211 "ignoring GtkDrawingArea command \"drawingarea1:translate\""
1212 check_error "drawingarea1:translate " \
1213 "ignoring GtkDrawingArea command \"drawingarea1:translate \""
1214 check_error "drawingarea1:translate 1" \
1215 "ignoring GtkDrawingArea command \"drawingarea1:translate 1\""
1216 check_error "drawingarea1:translate 1 2" \
1217 "ignoring GtkDrawingArea command \"drawingarea1:translate 1 2\""
1218 check_error "drawingarea1:translate nnn 2 3" \
1219 "ignoring GtkDrawingArea command \"drawingarea1:translate nnn 2 3\""
1220 check_error "drawingarea1:translate 1 x 3" \
1221 "ignoring GtkDrawingArea command \"drawingarea1:translate 1 x 3\""
1222 check_error "drawingarea1:translate 1 2 3 4" \
1223 "ignoring GtkDrawingArea command \"drawingarea1:translate 1 2 3 4\""
1224 check_error "drawingarea1:scale" \
1225 "ignoring GtkDrawingArea command \"drawingarea1:scale\""
1226 check_error "drawingarea1:scale " \
1227 "ignoring GtkDrawingArea command \"drawingarea1:scale \""
1228 check_error "drawingarea1:scale 1" \
1229 "ignoring GtkDrawingArea command \"drawingarea1:scale 1\""
1230 check_error "drawingarea1:scale 1 2" \
1231 "ignoring GtkDrawingArea command \"drawingarea1:scale 1 2\""
1232 check_error "drawingarea1:scale nnn 2 3" \
1233 "ignoring GtkDrawingArea command \"drawingarea1:scale nnn 2 3\""
1234 check_error "drawingarea1:scale 1 x 3" \
1235 "ignoring GtkDrawingArea command \"drawingarea1:scale 1 x 3\""
1236 check_error "drawingarea1:scale 1 2 3 4" \
1237 "ignoring GtkDrawingArea command \"drawingarea1:scale 1 2 3 4\""
1238 check_error "drawingarea1:rotate" \
1239 "ignoring GtkDrawingArea command \"drawingarea1:rotate\""
1240 check_error "drawingarea1:rotate " \
1241 "ignoring GtkDrawingArea command \"drawingarea1:rotate \""
1242 check_error "drawingarea1:rotate 1" \
1243 "ignoring GtkDrawingArea command \"drawingarea1:rotate 1\""
1244 check_error "drawingarea1:rotate nnn 2" \
1245 "ignoring GtkDrawingArea command \"drawingarea1:rotate nnn 2\""
1246 check_error "drawingarea1:rotate 1 x" \
1247 "ignoring GtkDrawingArea command \"drawingarea1:rotate 1 x\""
1248 check_error "drawingarea1:rotate 1 10 10" \
1249 "ignoring GtkDrawingArea command \"drawingarea1:rotate 1 10 10\""
1250 check_error "drawingarea1:save" \
1251 "ignoring GtkDrawingArea command \"drawingarea1:save\""
1252 check_error "drawingarea1:save " \
1253 "ignoring GtkDrawingArea command \"drawingarea1:save \""
1254 check_error "drawingarea1:save x" \
1255 "ignoring GtkDrawingArea command \"drawingarea1:save x\""
1256 check_error "drawingarea1:save x.yz" \
1257 "ignoring GtkDrawingArea command \"drawingarea1:save x.yz\""
1258 check_error "drawingarea1:save x.pdf 2" \
1259 "ignoring GtkDrawingArea command \"drawingarea1:save x.pdf 2\""
1260 check_error "drawingarea1:save xsvg" \
1261 "ignoring GtkDrawingArea command \"drawingarea1:save xsvg\""
1263 echo "_:main_quit" >$FIN
1265 check_rm $FIN
1268 ## Logging to stderr
1269 read r 2< $FERR &
1270 ./pipeglade -i $FIN 2> $FERR -l - &
1272 # wait for $FIN to appear
1273 while test ! \( -e $FIN \); do :; done
1275 check_error "# Comment" \
1276 "########## ##### (New Pipeglade session) #####"
1277 check_error "" \
1278 "### (Idle) ###"
1279 check_error "_:main_quit" \
1280 " # Comment"
1282 check_rm $FIN
1283 rm $FERR
1287 #exit
1289 echo "
1290 # BATCH THREE
1292 # Tests for the principal functionality---valid actions leading to
1293 # correct results. Manual intervention is required. Instructions
1294 # will be given on the statusbar of the test GUI.
1295 ######################################################################
1298 mkfifo $FOUT
1300 # check nr_of_feedback_msgs user_instruction command expected_feedback1 expected_feedback2 ...
1301 check() {
1302 # Flush stale pipeglade output
1303 while read -t .1 <$FOUT; do : ; done
1304 N=$1
1305 INSTRUCTION="$2"
1306 echo "$SEND $3"
1307 if test "$INSTRUCTION"; then
1308 echo -e "statusbar1:push_id =check= $INSTRUCTION" >$FIN
1310 echo -e "$3" >$FIN
1312 while (( i<$N )); do
1313 read r <$FOUT
1314 if test "$r" != ""; then
1315 if grep -qe "$4" <<< $r; then
1316 count_ok
1317 echo " $OK ($i) $r"
1318 else
1319 count_fail
1320 echo " $FAIL($i) $r"
1321 echo " $EXPECTED $4"
1323 shift
1324 (( i+=1 ))
1326 done
1327 if test "$INSTRUCTION"; then
1328 echo -e "statusbar1:pop_id =check=" >$FIN
1333 # Being impervious to locale
1334 LC_ALL=de_DE.UTF-8 ./pipeglade -i $FIN -o $FOUT -O $ERR_FILE &
1335 # wait for $FIN and $FOUT to appear
1336 while test ! \( -e $FIN -a -e $FOUT -a $ERR_FILE \); do :; done
1337 check 0 "" \
1338 "drawingarea1:transform 1 1.5 1 1 1 1 1"
1339 check 0 "" \
1340 "progressbar1:set_fraction .5"
1341 check 1 "Press \"No\" to continue" \
1342 "scale1:set_value .5" \
1343 "scale1:value 0\.50"
1344 sleep .5
1345 check 0 "" \
1346 "_:main_quit"
1347 sleep .5
1348 check_cmd "(! grep -qe \"ignoring GtkDrawingArea command\" $ERR_FILE)"
1349 check_cmd "(! grep -qe \"ignoring GtkProgressBar command\" $ERR_FILE)"
1350 check_cmd "(! grep -qe \"ignoring GtkScale command\" $ERR_FILE)"
1351 check_rm $FIN
1352 check_rm $FOUT
1353 rm $ERR_FILE
1356 # Logging to stderr while redirecting stderr
1357 ./pipeglade -i $FIN -o $FOUT -O $ERR_FILE -l - &
1358 # wait for $FIN and $FOUT to appear
1359 while test ! \( -e $FIN -a -e $FOUT \); do :; done
1360 check 0 "" \
1361 "# Comment"
1362 check 0 "" \
1363 "BlahBlah"
1364 check 0 "" \
1365 "_:main_quit"
1367 check_cmd "grep -qe \"# Comment\" $ERR_FILE"
1368 check_cmd "grep -qe \"ignoring command\" $ERR_FILE"
1369 check_rm $FIN
1372 # check if stdout remains line buffered even if directed to file
1373 ./pipeglade -i $FIN >$OUT_FILE &
1374 # wait for $FIN to appear
1375 while test ! \( -e $FIN \); do :; done
1376 echo "button1:force" >$FIN
1377 check_cmd "grep -qe 'button1:clicked' $OUT_FILE"
1378 echo "_:main_quit" >$FIN
1379 #rm -f $OUT_FILE
1382 ./pipeglade -i $FIN -o $FOUT -b >$PID_FILE
1383 check_cmd "kill `cat $PID_FILE`"
1384 rm $FIN $FOUT
1387 ./pipeglade --display ${DISPLAY-:0} -i $FIN -o $FOUT &
1389 # wait for $FIN and $FOUT to appear
1390 while test ! \( -e $FIN -a -e $FOUT \); do :; done
1392 check 0 "" \
1393 "# checking --display $DISPLAY\n _:main_quit"
1395 check_rm $FIN
1396 check_rm $FOUT
1399 ./pipeglade -u simple_dialog.ui -i $FIN -o $FOUT -b >$PID_FILE
1401 # wait for $FIN and $FOUT to appear
1402 while test ! \( -e $FIN -a -e $FOUT \); do :; done
1404 check_cmd "ps -p `cat $PID_FILE` >/dev/null"
1405 check 1 "" \
1406 "main_apply:force" \
1407 "main_apply:clicked"
1408 check 0 "" \
1409 "main_cancel:force"
1411 check_rm $FIN
1412 check_rm $FOUT
1413 check_cmd "! ps -p `cat $PID_FILE` >/dev/null"
1414 rm $PID_FILE
1417 ./pipeglade -u simple_dialog.ui -i $FIN -o $FOUT &
1419 # wait for $FIN and $FOUT to appear
1420 while test ! \( -e $FIN -a -e $FOUT \); do :; done
1422 check 1 "" \
1423 "button1:force" \
1424 "button1:clicked"
1425 check 1 "" \
1426 "main_ok:force" \
1427 "main_ok:clicked"
1429 check_rm $FIN
1430 check_rm $FOUT
1433 ./pipeglade -u simple_open.ui -i $FIN -o $FOUT &
1435 # wait for $FIN and $FOUT to appear
1436 while test ! \( -e $FIN -a -e $FOUT \); do :; done
1438 check 3 "" \
1439 "main_apply:force" \
1440 "main_apply:clicked" \
1441 "main:file" \
1442 "main:folder"
1443 check 0 "" \
1444 "main_cancel:force"
1446 check_rm $FIN
1447 check_rm $FOUT
1450 ./pipeglade -u simple_open.ui -i $FIN -o $FOUT &
1452 # wait for $FIN and $FOUT to appear
1453 while test ! \( -e $FIN -a -e $FOUT \); do :; done
1455 check 2 "" \
1456 "main_ok:force" \
1457 "main_ok:clicked" \
1458 "main:file" \
1459 "main:folder"
1461 check_rm $FIN
1462 check_rm $FOUT
1465 mkfifo -m 777 $FIN
1466 mkfifo -m 777 $FOUT
1467 ./pipeglade -i $FIN -o $FOUT &
1468 check_cmd "$STAT_CMD $FIN | grep '600$'"
1469 check_cmd "$STAT_CMD $FOUT | grep '600$'"
1470 echo -e "_:main_quit" > $FIN
1471 check_rm $FIN
1472 check_rm $FOUT
1474 ./pipeglade -i $FIN -o $FOUT &
1476 # wait for $FIN and $FOUT to appear
1477 while test ! \( -e $FIN -a -e $FOUT \); do :; done
1479 check_cmd "$STAT_CMD $FIN | grep '600$'"
1480 check_cmd "$STAT_CMD $FOUT | grep '600$'"
1481 echo -e "_:main_quit" > $FIN
1482 check_rm $FIN
1483 check_rm $FOUT
1486 echo "#### # Initial line to check if -l option appends" >$LOG
1487 LC_NUMERIC=de_DE.UTF-8 ./pipeglade -i $FIN -o $FOUT -l $LOG &
1489 # wait for $FIN and $FOUT to appear
1490 while test ! \( -e $FIN -a -e $FOUT \); do :; done
1492 check 0 "" \
1493 "socket1:id"
1494 read XID <$FOUT
1495 XID=${XID/socket1:id }
1496 (sleep .5; ./pipeglade -u simple_dialog.ui -e $XID <<< "main_cancel:force") &
1497 check 2 "" \
1498 "" \
1499 "socket1:plug-added" \
1500 "socket1:plug-removed"
1501 (sleep .5; ./pipeglade -u simple_dialog.ui -e $XID <<< "main_cancel:force") &
1502 check 2 "" \
1503 "" \
1504 "socket1:plug-added" \
1505 "socket1:plug-removed"
1507 check 1 "" \
1508 "entry1:set_text FFFF" \
1509 "entry1:text FFFF"
1510 check 1 "" \
1511 "entry1:set_text" \
1512 "entry1:text"
1513 check 1 "" \
1514 "entry1:set_text FFFF" \
1515 "entry1:text FFFF"
1516 check 1 "" \
1517 "entry1:set_text " \
1518 "entry1:text"
1519 check 0 "" \
1520 "entry1:set_placeholder_text hint hint" # not much of a test
1521 check 1 "" \
1522 "entry1:set_text FFFF" \
1523 "entry1:text FFFF"
1524 check 1 "" \
1525 "entry1:set_text GGGG" \
1526 "entry1:text GGGG"
1527 check 1 "" \
1528 "entry1:force" \
1529 "entry1:text GGGG"
1530 check 2 "" \
1531 "spinbutton1:set_text 33.0\n spinbutton1:set_range 50 60\n" \
1532 "spinbutton1:text 33.0" \
1533 "spinbutton1:text 50.0"
1534 check 2 "" \
1535 "radiobutton2:set_active 1" \
1536 "radiobutton1:0" \
1537 "radiobutton2:1"
1538 check 2 "" \
1539 "radiobutton1:set_active 1" \
1540 "radiobutton2:0" \
1541 "radiobutton1:1"
1542 check 1 "" \
1543 "switch1:set_active 1" \
1544 "switch1:1"
1545 check 1 "" \
1546 "switch1:set_active 0" \
1547 "switch1:0"
1548 check 1 "" \
1549 "togglebutton1:set_active 1" \
1550 "togglebutton1:1"
1551 check 1 "" \
1552 "calendar1:select_date 1752-03-29" \
1553 "calendar1:clicked 1752-03-29"
1554 check 0 "" \
1555 "progressbar1:set_text This Is A Progressbar."
1557 L=$(i=0
1558 while (( i<100 )); do
1559 (( i+=1 ))
1560 echo -n "Repetitive input that is large enough to have the realloc() machinery kick in.---"
1561 done)
1562 check 1 "" \
1563 "entry1:set_text $L" \
1564 "entry1:text $L"
1566 check 1 "Open what should now be named \"EXPANDER\" and click the \"button inside expander\"" \
1567 "expander1:set_expanded 0\n expander1:set_label EXPANDER" \
1568 "button6:clicked"
1569 check 0 "" \
1570 "expander1:set_expanded 0"
1572 check 12 "" \
1573 "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" \
1574 "treeview1:clicked" \
1575 "treeview1:gboolean 2 0 1" \
1576 "treeview1:gint 2 1 -30000" \
1577 "treeview1:guint 2 2 66" \
1578 "treeview1:glong 2 3 -2000000000" \
1579 "treeview1:glong 2 4 4000000000" \
1580 "treeview1:glong 2 5 -2000000000" \
1581 "treeview1:gulong 2 6 4000000000" \
1582 "treeview1:gfloat 2 7 3.141000" \
1583 "treeview1:gdouble 2 8 3.141000" \
1584 "treeview1:gchararray 2 9 TEXT" \
1585 "treeview1:gchararray 2 10 zzz"
1586 mkdir -p $DIR
1587 check 0 "" \
1588 "treeview1:save $DIR/$FILE1"
1589 check 0 "" \
1590 "treeview1:save $DIR/$FILE1.bak"
1591 check 1 "" \
1592 "treeview1:set_cursor" \
1593 "treeview1:clicked"
1594 check 12 "" \
1595 "treeview1:insert_row 0\n treeview1:insert_row 2\n treeview1:set_cursor 4" \
1596 "treeview1:clicked" \
1597 "treeview1:gboolean 4 0 1" \
1598 "treeview1:gint 4 1 -30000" \
1599 "treeview1:guint 4 2 66" \
1600 "treeview1:glong 4 3 -2000000000" \
1601 "treeview1:glong 4 4 4000000000" \
1602 "treeview1:glong 4 5 -2000000000" \
1603 "treeview1:gulong 4 6 4000000000" \
1604 "treeview1:gfloat 4 7 3.141000" \
1605 "treeview1:gdouble 4 8 3.141000" \
1606 "treeview1:gchararray 4 9 TEXT" \
1607 "treeview1:gchararray 4 10 zzz"
1608 check 1 "" \
1609 "treeview1:set_cursor" \
1610 "treeview1:clicked"
1611 check 12 "" \
1612 "treeview1:move_row 4 0\n treeview1:set_cursor 0" \
1613 "treeview1:clicked" \
1614 "treeview1:gboolean 0 0 1" \
1615 "treeview1:gint 0 1 -30000" \
1616 "treeview1:guint 0 2 66" \
1617 "treeview1:glong 0 3 -2000000000" \
1618 "treeview1:glong 0 4 4000000000" \
1619 "treeview1:glong 0 5 -2000000000" \
1620 "treeview1:gulong 0 6 4000000000" \
1621 "treeview1:gfloat 0 7 3.141000" \
1622 "treeview1:gdouble 0 8 3.141000" \
1623 "treeview1:gchararray 0 9 TEXT" \
1624 "treeview1:gchararray 0 10 zzz"
1625 check 1 "" \
1626 "treeview1:set_cursor" \
1627 "treeview1:clicked"
1628 check 12 "" \
1629 "treeview1:move_row 0 2\n treeview1:set_cursor 1" \
1630 "treeview1:clicked" \
1631 "treeview1:gboolean 1 0 1" \
1632 "treeview1:gint 1 1 -30000" \
1633 "treeview1:guint 1 2 66" \
1634 "treeview1:glong 1 3 -2000000000" \
1635 "treeview1:glong 1 4 4000000000" \
1636 "treeview1:glong 1 5 -2000000000" \
1637 "treeview1:gulong 1 6 4000000000" \
1638 "treeview1:gfloat 1 7 3.141000" \
1639 "treeview1:gdouble 1 8 3.141000" \
1640 "treeview1:gchararray 1 9 TEXT" \
1641 "treeview1:gchararray 1 10 zzz"
1642 check 1 "" \
1643 "treeview1:set_cursor" \
1644 "treeview1:clicked"
1645 check 12 "" \
1646 "treeview1:insert_row end\n treeview1:move_row 1 end\n treeview1:set_cursor 6" \
1647 "treeview1:clicked" \
1648 "treeview1:gboolean 6 0 1" \
1649 "treeview1:gint 6 1 -30000" \
1650 "treeview1:guint 6 2 66" \
1651 "treeview1:glong 6 3 -2000000000" \
1652 "treeview1:glong 6 4 4000000000" \
1653 "treeview1:glong 6 5 -2000000000" \
1654 "treeview1:gulong 6 6 4000000000" \
1655 "treeview1:gfloat 6 7 3.141000" \
1656 "treeview1:gdouble 6 8 3.141000" \
1657 "treeview1:gchararray 6 9 TEXT" \
1658 "treeview1:gchararray 6 10 zzz"
1659 check 1 "" \
1660 "treeview1:set_cursor" \
1661 "treeview1:clicked"
1662 check 12 "" \
1663 "treeview1:remove_row 0\n treeview1:remove_row 2\n treeview1:set_cursor 4" \
1664 "treeview1:clicked" \
1665 "treeview1:gboolean 4 0 1" \
1666 "treeview1:gint 4 1 -30000" \
1667 "treeview1:guint 4 2 66" \
1668 "treeview1:glong 4 3 -2000000000" \
1669 "treeview1:glong 4 4 4000000000" \
1670 "treeview1:glong 4 5 -2000000000" \
1671 "treeview1:gulong 4 6 4000000000" \
1672 "treeview1:gfloat 4 7 3.141000" \
1673 "treeview1:gdouble 4 8 3.141000" \
1674 "treeview1:gchararray 4 9 TEXT" \
1675 "treeview1:gchararray 4 10 zzz"
1676 check 1 "" \
1677 "treeview1:set_cursor" \
1678 "treeview1:clicked"
1679 check 12 "Click the 66% (move_row)" \
1680 "treeview1:move_row 0 end\n treeview1:set_cursor 3" \
1681 "treeview1:clicked" \
1682 "treeview1:gboolean 3 0 1" \
1683 "treeview1:gint 3 1 -30000" \
1684 "treeview1:guint 3 2 66" \
1685 "treeview1:glong 3 3 -2000000000" \
1686 "treeview1:glong 3 4 4000000000" \
1687 "treeview1:glong 3 5 -2000000000" \
1688 "treeview1:gulong 3 6 4000000000" \
1689 "treeview1:gfloat 3 7 3.141000" \
1690 "treeview1:gdouble 3 8 3.141000" \
1691 "treeview1:gchararray 3 9 TEXT" \
1692 "treeview1:gchararray 3 10 zzz"
1693 check 24 "" \
1694 "treeview1:remove_row 3" \
1695 "treeview1:clicked" \
1696 "treeview1:gboolean 3 0 0" \
1697 "treeview1:gint 3 1 0" \
1698 "treeview1:guint 3 2 0" \
1699 "treeview1:glong 3 3 0" \
1700 "treeview1:glong 3 4 0" \
1701 "treeview1:glong 3 5 0" \
1702 "treeview1:gulong 3 6 0" \
1703 "treeview1:gfloat 3 7 0.000000" \
1704 "treeview1:gdouble 3 8 0.000000" \
1705 "treeview1:gchararray 3 9 abc" \
1706 "treeview1:gchararray 3 10 xxx" \
1707 "treeview1:clicked" \
1708 "treeview1:gboolean 3 0 0" \
1709 "treeview1:gint 3 1 0" \
1710 "treeview1:guint 3 2 0" \
1711 "treeview1:glong 3 3 0" \
1712 "treeview1:glong 3 4 0" \
1713 "treeview1:glong 3 5 0" \
1714 "treeview1:gulong 3 6 0" \
1715 "treeview1:gfloat 3 7 0.000000" \
1716 "treeview1:gdouble 3 8 0.000000" \
1717 "treeview1:gchararray 3 9 abc" \
1718 "treeview1:gchararray 3 10 xxx"
1719 check 1 "Click column col4 in the lowest line visible in the scrolled area and type 444 <Enter> (scroll)" \
1720 "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" \
1721 "treeview1:gint 24 1 444"
1722 check 12 "Click column col3 in the highest line visible in the scrolled area (scroll)" \
1723 "treeview1:scroll 1 0" \
1724 "treeview1:clicked" \
1725 "treeview1:gboolean 1 0 1" \
1726 "treeview1:gint 1 1 3" \
1727 "treeview1:guint 1 2 0" \
1728 "treeview1:glong 1 3 0" \
1729 "treeview1:glong 1 4 0" \
1730 "treeview1:glong 1 5 0" \
1731 "treeview1:gulong 1 6 0" \
1732 "treeview1:gfloat 1 7 0.000000" \
1733 "treeview1:gdouble 1 8 0.000000" \
1734 "treeview1:gchararray 1 9 jkl" \
1735 "treeview1:gchararray 1 10 ZZZ"
1737 check 1 "Click the header of column \"col3\"" \
1738 "" \
1739 "treeviewcolumn3:clicked"
1741 check 2 "" \
1742 "treeview1:clear\n button1:force" \
1743 "treeview1:clicked" \
1744 "button1:clicked"
1746 check 12 "" \
1747 "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" \
1748 "treeview2:clicked" \
1749 "treeview2:gboolean 100:1:0 0 1" \
1750 "treeview2:gint 100:1:0 1 -30000" \
1751 "treeview2:guint 100:1:0 2 33" \
1752 "treeview2:glong 100:1:0 3 -2000000000" \
1753 "treeview2:glong 100:1:0 4 4000000000" \
1754 "treeview2:glong 100:1:0 5 -2000000000" \
1755 "treeview2:gulong 100:1:0 6 4000000000" \
1756 "treeview2:gfloat 100:1:0 7 3.141000" \
1757 "treeview2:gdouble 100:1:0 8 3.141000" \
1758 "treeview2:gchararray 100:1:0 9 TEXT" \
1759 "treeview2:gchararray 100:1:0 10"
1760 check 1 "" \
1761 "treeview2:set_cursor" \
1762 "treeview2:clicked"
1763 check 12 "" \
1764 "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" \
1765 "treeview2:clicked" \
1766 "treeview2:gboolean 102 0 0" \
1767 "treeview2:gint 102 1 0" \
1768 "treeview2:guint 102 2 0" \
1769 "treeview2:glong 102 3 448822" \
1770 "treeview2:glong 102 4 0" \
1771 "treeview2:glong 102 5 0" \
1772 "treeview2:gulong 102 6 0" \
1773 "treeview2:gfloat 102 7 0.000000" \
1774 "treeview2:gdouble 102 8 0.000000" \
1775 "treeview2:gchararray 102 9" \
1776 "treeview2:gchararray 102 10"
1777 check 1 "" \
1778 "treeview2:set_cursor" \
1779 "treeview2:clicked"
1780 check 0 "" \
1781 "treeview2:save $DIR/$FILE2"
1782 check 0 "" \
1783 "treeview2:save $DIR/$FILE2.bak"
1784 check 12 "" \
1785 "treeview2:insert_row 0\n treeview2:collapse\n treeview2:set_cursor 103" \
1786 "treeview2:clicked" \
1787 "treeview2:gboolean 103 0 0" \
1788 "treeview2:gint 103 1 0" \
1789 "treeview2:guint 103 2 0" \
1790 "treeview2:glong 103 3 448822" \
1791 "treeview2:glong 103 4 0" \
1792 "treeview2:glong 103 5 0" \
1793 "treeview2:gulong 103 6 0" \
1794 "treeview2:gfloat 103 7 0.000000" \
1795 "treeview2:gdouble 103 8 0.000000" \
1796 "treeview2:gchararray 103 9" \
1797 "treeview2:gchararray 103 10"
1798 check 1 "" \
1799 "treeview2:set_cursor" \
1800 "treeview2:clicked"
1801 check 12 "Click the lowest line visible in the scrolled area (1)" \
1802 "treeview2:expand_all 103\n treeview2:scroll 103:1:0 0" \
1803 "treeview2:clicked" \
1804 "treeview2:gboolean 103:1:0 0 1" \
1805 "treeview2:gint 103:1:0 1 -30000" \
1806 "treeview2:guint 103:1:0 2 33" \
1807 "treeview2:glong 103:1:0 3 -2000000000" \
1808 "treeview2:glong 103:1:0 4 4000000000" \
1809 "treeview2:glong 103:1:0 5 -2000000000" \
1810 "treeview2:gulong 103:1:0 6 4000000000" \
1811 "treeview2:gfloat 103:1:0 7 3.141000" \
1812 "treeview2:gdouble 103:1:0 8 3.141000" \
1813 "treeview2:gchararray 103:1:0 9 TEXT" \
1814 "treeview2:gchararray 103:1:0 10"
1815 check 1 "" \
1816 "treeview2:set_cursor" \
1817 "treeview2:clicked"
1818 check 12 "Click the lowest visible line (2)" \
1819 "treeview2:collapse\n treeview2:expand 103\n treeview2:scroll 103:1 0" \
1820 "treeview2:clicked" \
1821 "treeview2:gboolean 103:1 0 0" \
1822 "treeview2:gint 103:1 1 0" \
1823 "treeview2:guint 103:1 2 0" \
1824 "treeview2:glong 103:1 3 876543210" \
1825 "treeview2:glong 103:1 4 0" \
1826 "treeview2:glong 103:1 5 0" \
1827 "treeview2:gulong 103:1 6 0" \
1828 "treeview2:gfloat 103:1 7 0.000000" \
1829 "treeview2:gdouble 103:1 8 0.000000" \
1830 "treeview2:gchararray 103:1 9" \
1831 "treeview2:gchararray 103:1 10"
1832 check 1 "" \
1833 "treeview2:set_cursor" \
1834 "treeview2:clicked"
1835 check 12 "Click the lowest visible line (3)" \
1836 "treeview2:collapse\n treeview2:expand_all\n treeview2:scroll 103:1:0 0" \
1837 "treeview2:clicked" \
1838 "treeview2:gboolean 103:1:0 0 1" \
1839 "treeview2:gint 103:1:0 1 -30000" \
1840 "treeview2:guint 103:1:0 2 33" \
1841 "treeview2:glong 103:1:0 3 -2000000000" \
1842 "treeview2:glong 103:1:0 4 4000000000" \
1843 "treeview2:glong 103:1:0 5 -2000000000" \
1844 "treeview2:gulong 103:1:0 6 4000000000" \
1845 "treeview2:gfloat 103:1:0 7 3.141000" \
1846 "treeview2:gdouble 103:1:0 8 3.141000" \
1847 "treeview2:gchararray 103:1:0 9 TEXT" \
1848 "treeview2:gchararray 103:1:0 10"
1849 check 1 "" \
1850 "treeview2:set_cursor" \
1851 "treeview2:clicked"
1852 check 12 "Click the lowest visible line (4)" \
1853 "treeview2:expand_all\n treeview2:collapse 103:1\n treeview2:scroll 103:1 0" \
1854 "treeview2:clicked" \
1855 "treeview2:gboolean 103:1 0 0" \
1856 "treeview2:gint 103:1 1 0" \
1857 "treeview2:guint 103:1 2 0" \
1858 "treeview2:glong 103:1 3 876543210" \
1859 "treeview2:glong 103:1 4 0" \
1860 "treeview2:glong 103:1 5 0" \
1861 "treeview2:gulong 103:1 6 0" \
1862 "treeview2:gfloat 103:1 7 0.000000" \
1863 "treeview2:gdouble 103:1 8 0.000000" \
1864 "treeview2:gchararray 103:1 9" \
1865 "treeview2:gchararray 103:1 10"
1866 check 1 "" \
1867 "treeview2:set_cursor" \
1868 "treeview2:clicked"
1870 check 12 "" \
1871 "treeview1:clear\n treeview1:set 1 9 ABC\\\\nDEF\\\\nGHI\n treeview1:set_cursor 1" \
1872 "treeview1:clicked" \
1873 "treeview1:gboolean 1 0 0" \
1874 "treeview1:gint 1 1 0" \
1875 "treeview1:guint 1 2 0" \
1876 "treeview1:glong 1 3 0" \
1877 "treeview1:glong 1 4 0" \
1878 "treeview1:glong 1 5 0" \
1879 "treeview1:gulong 1 6 0" \
1880 "treeview1:gfloat 1 7 0.000000" \
1881 "treeview1:gdouble 1 8 0.000000" \
1882 "treeview1:gchararray 1 9 ABCnDEFnGHI" \
1883 "treeview1:gchararray 1 10"
1885 check 0 "" \
1886 "treeview1:clear\n treeview2:clear"
1887 check 0 "" \
1888 "_:load $DIR/$FILE1"
1889 rm -f $DIR/$FILE1
1890 sleep .5
1891 check 1 "" \
1892 "treeview1:save $DIR/$FILE1\n button1:force" \
1893 "button1:clicked"
1894 check_cmd "cmp $DIR/$FILE1 $DIR/$FILE1.bak"
1895 check 0 "" \
1896 "treeview1:clear\n treeview2:clear"
1897 check 0 "" \
1898 "_:load $DIR/$FILE2"
1899 sleep .5
1900 rm -f $DIR/$FILE2
1901 sleep .5
1902 check 1 "" \
1903 "treeview2:save $DIR/$FILE2\n button1:force" \
1904 "button1:clicked"
1905 check_cmd "cmp $DIR/$FILE2 $DIR/$FILE2.bak"
1906 cat >$DIR/$FILE3 <<< "_:load $DIR/$FILE1.bak"
1907 cat >>$DIR/$FILE3 <<< "_:load $DIR/$FILE2.bak"
1908 cat >$DIR/$FILE4 <<< "_:load $DIR/$FILE3"
1909 cat >$DIR/$FILE5 <<< "_:load $DIR/$FILE4"
1910 cat >$DIR/$FILE6 <<< "_:load $DIR/$FILE5"
1911 rm -f $DIR/$FILE1 $DIR/$FILE2
1912 sleep .5
1913 check 0 "" \
1914 "treeview1:clear\n treeview2:clear"
1915 check 0 "" \
1916 "_:load $DIR/$FILE6"
1917 rm -f $DIR/$FILE1 $DIR/$FILE2
1918 sleep .5
1919 check 1 "" \
1920 "treeview1:save $DIR/$FILE1\n treeview2:save $DIR/$FILE2\n button1:force" \
1921 "button1:clicked"
1922 check_cmd "cmp $DIR/$FILE1 $DIR/$FILE1.bak"
1923 check_cmd "cmp $DIR/$FILE2 $DIR/$FILE2.bak"
1924 rm -rf $DIR
1925 check 0 "" \
1926 "treeview2:clear\n treeview2:set 2 0 1"
1928 check 1 "Click the header of column \"col23\"" \
1929 "" \
1930 "treeviewcolumn23:clicked"
1932 check 0 "" \
1933 "notebook1:set_current_page 2"
1934 check 1 "" \
1935 "nonexistent_send_text:force" \
1936 "nonexistent_send_text:clicked"
1937 check 1 "" \
1938 "nonexistent_send_selection:force" \
1939 "nonexistent_send_selection:clicked"
1940 check 1 "" \
1941 "nonexistent_ok:force" \
1942 "nonexistent_ok:clicked"
1943 check 1 "" \
1944 "nonexistent_apply:force" \
1945 "nonexistent_apply:clicked"
1946 check 1 "" \
1947 "nonexistent_cancel:force" \
1948 "nonexistent_cancel:clicked"
1949 check 0 "" \
1950 "notebook1:set_current_page 1"
1951 check 1 "" \
1952 "textview1_send_text:force" \
1953 "textview1_send_text:text some textnetcn"
1954 check 1 "" \
1955 "textview1:place_cursor 5\n textview1:insert_at_cursor MORE \n textview1_send_text:force" \
1956 "textview1_send_text:text some MORE textnetcn"
1957 check 1 "" \
1958 "textview1:place_cursor_at_line 1\n textview1:insert_at_cursor ETC \n textview1_send_text:force" \
1959 "textview1_send_text:text some MORE textnETC etcn"
1960 mkdir -p $DIR
1961 check 1 "" \
1962 "textview1:save $DIR/$FILE1\n button1:force" \
1963 "button1:clicked"
1965 while (( i<2000 )); do
1966 (( i+=1 ))
1967 cat $DIR/$FILE1 >> $DIR/$FILE2
1968 done
1970 while (( i<2000 )); do
1971 (( i+=1 ))
1972 echo "textview2:insert_at_cursor ##### THIS IS LINE $i.\\n" >> $DIR/$FILE3
1973 done
1974 check 0 "" \
1975 "_:load $DIR/$FILE2"
1976 check 0 "" \
1977 "textview1:save $DIR/$FILE1"
1978 check 0 "" \
1979 "textview1:save $DIR/$FILE1"
1980 check 0 "" \
1981 "textview1:delete"
1982 check 0 "" \
1983 "textview2:delete"
1984 check 0 "" \
1985 "_:load $DIR/$FILE3"
1986 check 0 "" \
1987 "_:load $DIR/$FILE1"
1988 check 0 "" \
1989 "textview2:save $DIR/$FILE3"
1990 check 1 "" \
1991 "textview1:save $DIR/$FILE2\n button1:force" \
1992 "button1:clicked"
1993 check_cmd "cmp $DIR/$FILE1 $DIR/$FILE2"
1994 echo "textview1:insert_at_cursor I'm a text containing backslashes:\\nONE\\\\\nTWO\\\\\\\\\\nTHREE\\\\\\\\\\\\\\nEnd" > $DIR/$FILE1
1995 check 0 "" \
1996 "textview1:delete\n _:load $DIR/$FILE1"
1997 check 1 "" \
1998 "textview1:save $DIR/$FILE1\n textview1:save $DIR/$FILE2\n textview1:delete\n _:load $DIR/$FILE1\n button1:force" \
1999 "button1:clicked"
2000 rm $DIR/$FILE1
2001 sleep .5
2002 check 1 "" \
2003 "textview1:save $DIR/$FILE1\n button1:force" \
2004 "button1:clicked"
2005 check_cmd "test 96 = `wc -c $DIR/$FILE1 | awk '{print $1}'`"
2006 check_cmd "cmp $DIR/$FILE1 $DIR/$FILE2"
2007 check 1 "" \
2008 "textview1:delete\n textview1_send_text:force" \
2009 "textview1_send_text:text"
2010 check 1 "Highlight the lowest visible character and press \"send_selection\"" \
2011 "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" \
2012 "textview1_send_selection:text u"
2013 check 1 "Again, highlight the lowest visible character and press \"send_selection\"" \
2014 "textview1:place_cursor end\n textview1:scroll_to_cursor" \
2015 "textview1_send_selection:text z"
2016 check 1 "Highlight the highest visible character and press \"send_selection\"" \
2017 "textview1:place_cursor 0 \n textview1:scroll_to_cursor" \
2018 "textview1_send_selection:text A"
2019 check 1 "" \
2020 "treeview2:set 100:10:5 2 8888888\n treeview2:save $DIR/$FILE1\n textview2:save $DIR/$FILE2\n button1:force" \
2021 "button1:clicked"
2022 cp $DIR/$FILE1 $DIR/$FILE4
2023 check_cmd "cmp $DIR/$FILE2 $DIR/$FILE3"
2024 check 1 "" \
2025 "treeview2:clear\n textview2:delete\n _:load $DIR/$FILE1\n _:load $DIR/$FILE2\n button1:force" \
2026 "button1:clicked"
2027 rm $DIR/$FILE1 $DIR/$FILE2
2028 sleep .5
2029 check 1 "" \
2030 "treeview2:save $DIR/$FILE1\n textview2:save $DIR/$FILE2\n button1:force" \
2031 "button1:clicked"
2032 check_cmd "cmp $DIR/$FILE1 $DIR/$FILE4"
2033 check_cmd "cmp $DIR/$FILE2 $DIR/$FILE3"
2034 rm -rf $DIR
2035 sleep .5
2036 check 2 "" \
2037 "scale1:set_value 10\n scale1:set_increments 5 20\n scale1:force" \
2038 "scale1:value 10.000000" \
2039 "scale1:value 10.000000"
2040 check 2 "" \
2041 "scale1:set_range 20 22\n scale1:set_value 10\n scale1:set_value 100" \
2042 "scale1:value 20.000000" \
2043 "scale1:value 22.000000"
2044 check 1 "" \
2045 "scale1:set_fill_level\n scale1:set_fill_level 20.5\n scale1:set_value 21.3" \
2046 "scale1:value 21.300000"
2047 check 6 "" \
2048 "open_dialog:set_filename q.png\n file:force\n open_dialog_invoke:force\n open_dialog_apply:force\n open_dialog_ok:force" \
2049 "file:active _File" \
2050 "open_dialog_apply:clicked" \
2051 "open_dialog:file $PWD/q.png" \
2052 "open_dialog:folder $PWD" \
2053 "open_dialog_ok:clicked" \
2054 "open_dialog:file $PWD/q.png" \
2055 "open_dialog:folder $PWD"
2056 check 2 "" \
2057 "file:force\n open_dialog_invoke:force\n open_dialog_cancel:force" \
2058 "file:active _File" \
2059 "open_dialog_cancel:clicked"
2060 check 3 "" \
2061 "save_as_dialog:set_current_name /somewhere/crazy_idea\n file:force\n save_as_dialog_invoke:force\n save_as_dialog_ok:force" \
2062 "file:active _File" \
2063 "save_as_dialog_ok:clicked" \
2064 "save_as_dialog:file /somewhere/crazy_idea" \
2065 "save_as_dialog:folder"
2066 check 1 "" \
2067 "nonexistent_invoke:force" \
2068 "nonexistent_invoke:active nonexistent"
2069 check 1 "Press the \"button\" which should now be renamed \"OK\"" \
2070 "button1:set_label OK" \
2071 "button1:clicked"
2072 check 1 "Press the \"togglebutton\" which should now be renamed \"on/off\"" \
2073 "togglebutton1:set_label on/off" \
2074 "togglebutton1:0"
2075 check 1 "" \
2076 "togglebutton1:force" \
2077 "togglebutton1:1"
2078 check 1 "Press the \"checkbutton\" which should now be renamed \"REGISTER\"" \
2079 "checkbutton1:set_label REGISTER" \
2080 "checkbutton1:1"
2081 check 1 "" \
2082 "checkbutton1:force" \
2083 "checkbutton1:0"
2084 check 2 "Press the \"radiobutton\" which should now be renamed \"RADIO\"" \
2085 "radiobutton2:set_label RADIO" \
2086 "radiobutton1:0" \
2087 "radiobutton2:1"
2088 check 2 "" \
2089 "radiobutton1:force" \
2090 "radiobutton2:0" \
2091 "radiobutton1:1"
2092 check 1 "Click the widget whose label font is now Bold Italic 20" \
2093 "switch1:style font:Bold Italic 20" \
2094 "switch1:1"
2095 check 1 "Click the widget whose label has turned red" \
2096 "switch1:style color:red" \
2097 "switch1:0"
2098 check 1 "Click the widget whose background has turned yellow" \
2099 "checkbutton1:style background-color:yellow" \
2100 "checkbutton1:1"
2101 check 1 "Press \"OK\" if font and colors changed in previous steps are back to normal\n switch1:style" \
2102 "checkbutton1:style" \
2103 "button1:clicked"
2104 check 1 "" \
2105 "switch1:force" \
2106 "switch1:1"
2107 check 1 "Press \"OK\" if the \"lorem ipsum dolor ...\" text inside \"frame1\" now reads \"LABEL\"" \
2108 "label1:set_text LABEL" \
2109 "button1:clicked"
2110 check 1 "Press \"OK\" if the label of the frame around \"LABEL\" now reads \"LOREM IPSUM\"" \
2111 "frame1:set_label LOREM IPSUM" \
2112 "button1:clicked"
2113 check 1 "Press \"OK\" if the green dot has turned red" \
2114 "image1:set_from_icon_name gtk-no" \
2115 "button1:clicked"
2116 check 1 "Press \"OK\" if the red dot has turned into a green \"Q\"" \
2117 "image1:set_from_file q.png" \
2118 "button1:clicked"
2119 check 1 "Select \"FIRST\" from the combobox" \
2120 "comboboxtext1:prepend_text FIRST" \
2121 "comboboxtext1_entry:text FIRST"
2122 check 1 "Select \"LAST\" from the combobox" \
2123 "comboboxtext1:append_text LAST" \
2124 "comboboxtext1_entry:text LAST"
2125 check 1 "Select \"AVERAGE\" from the combobox" \
2126 "comboboxtext1:insert_text 3 AVERAGE" \
2127 "comboboxtext1_entry:text AVERAGE"
2128 check 1 "Select the second entry from the combobox" \
2129 "comboboxtext1:remove 0" \
2130 "comboboxtext1_entry:text def"
2131 check 2 "Left-click the \"+\" of the spinbutton" \
2132 "spinbutton1:set_range 0 100\n spinbutton1:set_text 33" \
2133 "spinbutton1:text 33.00" \
2134 "spinbutton1:text 34.00"
2135 check 1 "Left-click the \"+\" of the spinbutton again" \
2136 "spinbutton1:set_increments 2 4" \
2137 "spinbutton1:text 36.00"
2138 check 1 "Middle-click the \"+\" of the spinbutton" \
2139 "" \
2140 "spinbutton1:text 40.00"
2141 check 1 "" \
2142 "spinbutton1:force" \
2143 "spinbutton1:text 40.00"
2144 check 1 "Using the file chooser button (now labelled \"etc\"), select \"File System\" (= \"/\")" \
2145 "filechooserbutton1:set_filename /etc/" \
2146 "filechooserbutton1:file /"
2147 check 1 "" \
2148 "filechooserbutton1:force" \
2149 "filechooserbutton1:file /"
2150 check 1 "Click \"Select\"\n fontbutton1:set_font_name Sans Bold 40" \
2151 "fontbutton1:force" \
2152 "fontbutton1:font Sans Bold 40"
2153 check 1 "Click \"Select\" (1)\n colorbutton1:set_color yellow" \
2154 "colorbutton1:force" \
2155 "colorbutton1:color rgb(255,255,0)"
2156 check 1 "Click \"Select\" (2)\n colorbutton1:set_color rgb(0,255,0)" \
2157 "colorbutton1:force" \
2158 "colorbutton1:color rgb(0,255,0)"
2159 check 1 "Click \"Select\" (3)\n colorbutton1:set_color #00f" \
2160 "colorbutton1:force" \
2161 "colorbutton1:color rgb(0,0,255)"
2162 check 1 "Click \"Select\" (4)\n colorbutton1:set_color #ffff00000000" \
2163 "colorbutton1:force" \
2164 "colorbutton1:color rgb(255,0,0)"
2165 check 1 "Click \"Select\" (5)\n colorbutton1:set_color rgba(0,255,0,.5)" \
2166 "colorbutton1:force" \
2167 "colorbutton1:color rgba(0,255,0,0.5)"
2168 check 1 "Close the dialog by hitting Escape" \
2169 "printdialog:print nonexistent.ps" \
2170 "printdialog:closed"
2171 check 1 "Press \"OK\" if both 1752-03-13 and 1752-03-14 are marked on the calendar" \
2172 "calendar1:mark_day 13\n calendar1:mark_day 14" \
2173 "button1:clicked"
2174 check 1 "Press \"OK\" if 1752-03-13 and 1752-03-14 are no longer marked on the calendar" \
2175 "calendar1:clear_marks" \
2176 "button1:clicked"
2177 check 3 "Hover over the calendar and do what the tooltip says" \
2178 "calendar1:set_tooltip_text Double-click on 1752-03-13" \
2179 "calendar1:clicked 1752-03-13" \
2180 "calendar1:clicked 1752-03-13" \
2181 "calendar1:doubleclicked 1752-03-13"
2182 check 0 "" \
2183 "calendar1:set_tooltip_text"
2184 check 1 "" \
2185 "calendar1:force" \
2186 "calendar1:clicked 1752-03-13"
2188 check 0 "" \
2189 "drawingarea1:transform =100 1 0 0 1 0 0"
2190 check 0 "" \
2191 "drawingarea1:set_source_rgba =101 green"
2192 check 0 "" \
2193 "drawingarea1:set_source_rgba =102 red"
2194 check 0 "" \
2195 "drawingarea1:rectangle =1 0 0 150 150\n drawingarea1:fill 1"
2196 check 0 "" \
2197 "drawingarea1:remove 1\n drawingarea1:remove 2\n drawingarea1:remove 3\n drawingarea1:remove 4"
2198 check 0 "" \
2199 "drawingarea1:rectangle 1 0 0 150 150\n drawingarea1:fill 1"
2200 check 0 "" \
2201 "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"
2202 check 0 "" \
2203 "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"
2204 check 0 "" \
2205 "drawingarea1:curve_to 1 30 30 90 120 120 30\n drawingarea1:set_source_rgba 1 blue\n drawingarea1:stroke 1"
2206 check 0 "" \
2207 "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"
2208 check 0 "" \
2209 "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"
2210 check 0 "" \
2211 "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"
2212 check 0 "" \
2213 "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"
2214 check 0 "" \
2215 "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"
2216 check 0 "" \
2217 "drawingarea1:set_dash 1"
2218 check 0 "" \
2219 "drawingarea1:set_source_rgba 103 brown\n drawingarea1:set_line_width 1 15"
2220 check 1 "Press \"OK\" if the brown shape is rounded" \
2221 "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" \
2222 "button1:clicked"
2223 check 1 "Press \"OK\" if the second brown shape is shorter and bevelled and the square is mostly blue" \
2224 "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" \
2225 "button1:clicked"
2226 check 1 "Press \"OK\" if the third brown shape is square everything is a bit smaller" \
2227 "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" \
2228 "button1:clicked"
2229 check 1 "Press \"OK\" if the first brown shape is no longer rounded and everything rotated a bit" \
2230 "drawingarea1:remove 2\n drawingarea1:rotate 105<100 10" \
2231 "button1:clicked"
2232 check 1 "Press \"OK\" if all three brown shapes look the same" \
2233 "drawingarea1:remove 3" \
2234 "button1:clicked"
2235 check 0 "" \
2236 "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"
2237 check 0 "" \
2238 "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"
2239 check 0 "" \
2240 "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"
2241 check 0 "" \
2242 "drawingarea1:remove 1\n drawingarea1:remove 2\n drawingarea1:remove 3\n drawingarea1:remove 4"
2244 check 0 "" \
2245 "drawingarea2:rotate 55<500 5\n drawingarea2:scale 33 .7 .7\n drawingarea2:translate 77 30 30\n drawingarea2:transform 44"
2246 check 0 "" \
2247 "drawingarea2:rectangle 1<500 0 0 150 150\n drawingarea2:fill 1"
2248 check 0 "" \
2249 "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"
2250 check 0 "" \
2251 "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"
2252 check 0 "" \
2253 "drawingarea2:curve_to 1 30 30 90 120 120 30\n drawingarea2:set_source_rgba 1 blue\n drawingarea2:stroke 1"
2254 check 0 "" \
2255 "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"
2256 check 0 "" \
2257 "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"
2258 check 0 "" \
2259 "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"
2260 check 0 "" \
2261 "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"
2262 check 0 "" \
2263 "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"
2264 check 0 "" \
2265 "drawingarea2:set_dash 1"
2266 check 0 "" \
2267 "drawingarea2:set_source_rgba 1 brown\n drawingarea2:set_line_width 1 15"
2268 check 0 "" \
2269 "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"
2270 check 0 "" \
2271 "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"
2272 check 0 "" \
2273 "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"
2274 check 0 "" \
2275 "drawingarea2:remove 2"
2276 check 0 "" \
2277 "drawingarea2:remove 3"
2278 check 1 "Press \"OK\" if the drawing looks tilted and displaced" \
2279 "drawingarea2:remove 44" \
2280 "button1:clicked"
2281 check 1 "Press \"OK\" if the drawing doesn't look tilted anymore" \
2282 "drawingarea2:remove 55" \
2283 "button1:clicked"
2284 check 1 "Press \"OK\" if the drawing has grown a bit" \
2285 "drawingarea2:remove 33" \
2286 "button1:clicked"
2287 check 1 "Press \"OK\" if the drawing has moved into the NE corner" \
2288 "drawingarea2:remove 77" \
2289 "button1:clicked"
2291 check 0 "" \
2292 "drawingarea1:set_source_rgba 6 red\n drawingarea1:set_font_size 6 20\n drawingarea1:transform 99 .985 -.174 .174 .985 0 0"
2293 check 0 "" \
2294 "drawingarea1:move_to 6 100 100\n drawingarea1:rel_move_for 6 c CENTER\n drawingarea1:show_text 6 CENTER"
2295 check 0 "" \
2296 "drawingarea1:set_source_rgba 6 blue\n drawingarea1:set_font_size 6 20"
2297 check 0 "" \
2298 "drawingarea1:move_to 6 100 100\n drawingarea1:rel_move_for 6 nw NORTHWEST\n drawingarea1:show_text 6 NORTHWEST"
2299 check 0 "" \
2300 "drawingarea1:move_to 6 100 100\n drawingarea1:rel_move_for 6 ne NORTHEAST\n drawingarea1:show_text 6 NORTHEAST"
2301 check 0 "" \
2302 "drawingarea1:move_to 6 100 100\n drawingarea1:rel_move_for 6 se SOUTHEAST\n drawingarea1:show_text 6 SOUTHEAST"
2303 check 0 "" \
2304 "drawingarea1:move_to 6 100 100\n drawingarea1:rel_move_for 6 sw SOUTHWEST\n drawingarea1:show_text 6 SOUTHWEST"
2305 check 0 "" \
2306 "drawingarea1:set_source_rgba 6 magenta\n drawingarea1:set_font_size 6 20"
2307 check 0 "" \
2308 "drawingarea1:move_to 6 100 140\n drawingarea1:rel_move_for 6 s SOUTH\n drawingarea1:show_text 6 SOUTH"
2309 check 0 "" \
2310 "drawingarea1:move_to 6 100 140\n drawingarea1:rel_move_for 6 n NORTH\n drawingarea1:show_text 6 NORTH"
2311 check 0 "" \
2312 "drawingarea1:set_source_rgba 6 green\n drawingarea1:set_font_size 6 20"
2313 check 0 "" \
2314 "drawingarea1:move_to 6 100 140\n drawingarea1:rel_move_for 6 e EAST\n drawingarea1:show_text 6 EAST"
2315 check 0 "" \
2316 "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"
2317 check 0 "" \
2318 "drawingarea1:save $EPS_FILE\n drawingarea1:save $EPSF_FILE\n drawingarea1:save $PDF_FILE\n drawingarea1:save $PS_FILE\n drawingarea1:save $SVG_FILE"
2320 check_cmd "file -b $EPS_FILE | grep -qe EPS"
2321 check_cmd "file -b $EPSF_FILE | grep -qe EPS"
2322 check_cmd "file -b $PS_FILE | grep -qe PostScript"
2323 check_cmd "file -b $SVG_FILE | grep -qe SVG"
2324 check 0 "" \
2325 "notebook1:set_current_page 0\n image2:set_from_file $SVG_FILE"
2327 check 2 "Hit Backspace, Enter" \
2328 "eventbox1:grab_focus" \
2329 "eventbox1:key_press BackSpace" \
2330 "eventbox1:key_press Return"
2331 check 6 "Inside the DrawingArea, left-click, middle-click, right-click (Don't move the mouse while clicking)" \
2332 "" \
2333 "eventbox1:button_press 1" \
2334 "eventbox1:button_release 1" \
2335 "eventbox1:button_press 2" \
2336 "eventbox1:button_release 2" \
2337 "eventbox1:button_press 3" \
2338 "eventbox1:button_release 3"
2339 check 3 "Inside the DrawingArea and all within one second, hold the left button down, move around a bit, and release it again" \
2340 "" \
2341 "eventbox1:button_press 1" \
2342 "eventbox1:motion" \
2343 "eventbox1:motion"
2344 sleep 1.5
2345 check 1 "Hit Space" \
2346 "button1:grab_focus" \
2347 "button1:clicked"
2349 check 1 "Press the biggest button if there is a spinning spinner" \
2350 "spinner1:start\n no_button:set_size_request 400 400" \
2351 "no_button:clicked"
2352 check 1 "Press \"OK\" if the spinner has stopped" \
2353 "spinner1:stop" \
2354 "button1:clicked"
2355 check 1 "Press \"OK\" if the \"No\" button is back to normal size" \
2356 "no_button:set_size_request" \
2357 "button1:clicked"
2359 check 0 "" \
2360 "notebook1:set_current_page 3"
2361 check 1 "Click into page 4 (vscroll)" \
2362 "scrolledwindow8:vscroll 4500" \
2363 "button_sw:clicked"
2364 check 1 "Click into page 4 (hscroll)" \
2365 "scrolledwindow8:hscroll 4500" \
2366 "button_se:clicked"
2367 check 1 "Click into page 4 (hscroll_to_range, vscroll_to_range)" \
2368 "scrolledwindow8:hscroll_to_range 1600 2900\n scrolledwindow8:vscroll_to_range 1600 2900" \
2369 "button_c:clicked"
2371 check 1 "Press \"OK\" if we are fullscreen now" \
2372 "main:fullscreen" \
2373 "button1:clicked"
2374 check 1 "Press \"OK\" if we are back to default size" \
2375 "main:unfullscreen" \
2376 "button1:clicked"
2377 check 1 "Press \"OK\" if window is 1000x1000 now" \
2378 "main:resize 1000 1000" \
2379 "button1:clicked"
2380 check 1 "Press \"OK\" if we are back to default size again" \
2381 "main:resize" \
2382 "button1:clicked"
2383 check 1 "Press \"OK\" if our NE corner is at 400, 200 now" \
2384 "main:move 400 200" \
2385 "button1:clicked"
2387 check 1 "Press \"OK\" if there is now a \"Disconnect\" button" \
2388 "button2:set_visible 1\n button2:set_sensitive 0" \
2389 "button1:clicked"
2390 check 1 "Press \"Disconnect\"" \
2391 "button2:set_sensitive 1" \
2392 "button2:clicked"
2393 check 1 "Press \"OK\" if the window title is now \"ALMOST DONE\"" \
2394 "main:set_title ALMOST DONE" \
2395 "button1:clicked"
2397 check 1 "Press \"BIG BUTTON\" inside the window titled \"PRESS ME\"" \
2398 "dialog1:set_title PRESS ME\n dialog1:set_visible 1\n dialog1:resize 800 800\n dialog1:move 50 50" \
2399 "button3:clicked"
2400 check 1 "" \
2401 "button3:set_label PRESS THIS GIANT BUTTON NOW\n dialog1:fullscreen" \
2402 "button3:clicked"
2403 check 1 "" \
2404 "button3:set_label Hit Escape to close this window\n button3:set_sensitive 0" \
2405 "dialog1:closed"
2406 check 0 "" \
2407 "dialog1:set_visible 0"
2409 check 1 "Press \"OK\" if the progress bar shows 90%" \
2410 "progressbar1:set_fraction .9\n progressbar1:set_text" \
2411 "button1:clicked"
2412 check 1 "Press \"OK\" if the progress bar text reads \"The End\"" \
2413 "progressbar1:set_text The End" \
2414 "button1:clicked"
2415 check 1 "" \
2416 "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" \
2417 "no_button:clicked"
2419 echo "_:main_quit" >$FIN
2421 check_rm $FIN
2422 check_rm $FOUT
2425 check_cmd "head -n 2 $LOG | tail -n 1 | grep -q '##### (New Pipeglade session) #####'"
2426 check_cmd "tail -n 4 $LOG | head -n 1 | grep -q '### (Idle) ###'"
2427 check_cmd "tail -n 3 $LOG | head -n 1 | grep -q 'statusbar1:remove_all_id GHI'"
2428 check_cmd "tail -n 2 $LOG | head -n 1 | grep -q '### (Idle) ###'"
2429 check_cmd "tail -n 1 $LOG | grep '_:main_quit'"
2432 echo "PASSED: $OKS/$TESTS; FAILED: $FAILS/$TESTS"