1 m4_define([RENDER_WEAVE_6X6],
2 [AT_DATA([input], [6 6 $1
29 m4_define([RENDER_8X8],
30 [AT_DATA([input], [8 8 $1
83 # This input is something of a counterexample, in that it could render
84 # compactly as this if the algorithm for choosing cell widths and
85 # heights were smarter:
104 m4_define([RENDER_8X8_2],
105 [AT_DATA([input], [8 8 $1
124 2*3 @MNOPQ\nRSTUV\nWXYZ0
129 AT_BANNER([output rendering -- no page breaking])
131 AT_SETUP([single cell])
132 AT_DATA([input], [1 1
135 AT_CHECK([render-test input], [0], [abc
139 AT_SETUP([single cell with border])
140 AT_DATA([input], [1 1
143 AT_CHECK([render-test input], [0], [dnl
150 AT_SETUP([joined columns])
151 AT_DATA([input], [2 2
156 AT_CHECK([render-test input], [0], [dnl
165 AT_SETUP([3x3, joined rows and columns])
166 AT_DATA([input], [3 3
173 AT_CHECK([render-test input], [0], [dnl
184 AT_SETUP([6x6, joined rows and columns])
186 AT_CHECK([render-test input], [0], [dnl
203 AT_SETUP([3 rows with many joined cells])
204 AT_CAPTURE_FILE([input])
205 AT_DATA([input], [3 19
206 m4_foreach([x], [a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s], [x
208 m4_for([x], [2], [19], [1], [1*2 @x
211 AT_CHECK([render-test input], [0], [dnl
212 a b c d e f g h i j k l m n o p q r s
213 +-+---+---+---+---+---+---+---+---+----+
214 |1| 2| 3| 4| 5| 6| 7| 8| 9| 10|
215 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+--+
216 | 11| 12| 13| 14| 15| 16| 17| 18| 19|20|
217 +---+---+---+---+---+---+---+---+---+--+
221 AT_SETUP([3 columns with many joined cells])
222 AT_CAPTURE_FILE([input])
223 AT_DATA([input], [3 19
224 m4_foreach([x], [a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s], [x
226 m4_for([x], [2], [19], [1], [1*2 @x\nab\ncd
229 AT_CHECK([render-test --transpose input], [0], [dnl
272 AT_SETUP([joined rows])
273 AT_DATA([input], [2 2
278 AT_CHECK([render-test input], [0], [dnl
287 AT_SETUP([5 big narrow cells])
288 AT_DATA([input], [1 5
289 @This cell has a lot of text but its minimum width is pretty narrow.
290 @This cell also has a lot of text but its minimum width is pretty narrow.
291 @A third cell with a lot of text but a pretty narrow minimum width.
292 @A fourth cell with a lot of text but a pretty narrow minimum width.
293 @A fifth cell with a lot of text but a pretty narrow minimum width.
295 AT_CHECK([render-test input], [0], [dnl
296 +---------------+---------------+--------------+---------------+--------------+
297 |This cell has a| This cell also| A third cell| A fourth cell| A fifth cell|
298 |lot of text but| has a lot of| with a lot of| with a lot of| with a lot of|
299 | its minimum| text but its| text but a| text but a| text but a|
300 |width is pretty| minimum width| pretty narrow| pretty narrow| pretty narrow|
301 | narrow.| is pretty|minimum width.| minimum width.|minimum width.|
303 +---------------+---------------+--------------+---------------+--------------+
307 AT_SETUP([9 big narrow cells])
308 AT_DATA([input], [1 9
309 @This cell has a lot of text but its minimum width is pretty narrow.
310 @This cell also has a lot of text but its minimum width is pretty narrow.
311 @A third cell with a lot of text but a pretty narrow minimum width.
312 @A fourth cell with a lot of text but a pretty narrow minimum width.
313 @A fifth cell with a lot of text but a pretty narrow minimum width.
314 @A sixth cell with a lot of text but a pretty narrow minimum width.
315 @A seventh cell with a lot of text but a pretty narrow minimum width.
316 @A eighth cell with a lot of text but a pretty narrow minimum width.
317 @A ninth cell with a lot of text but a pretty narrow minimum width.
319 AT_CHECK([render-test input], [0], [dnl
320 +--------+-------+--------+--------+-------+--------+--------+-------+--------+
321 | This| This| A third|A fourth|A fifth| A sixth| A| A| A ninth|
322 |cell has| cell| cell| cell| cell| cell| seventh| eighth| cell|
323 |a lot of| also| with a| with a| with a| with a| cell| cell| with a|
324 |text but| has a| lot of| lot of| lot of| lot of| with a| with a| lot of|
325 | its| lot of|text but|text but| text|text but| lot of| lot of|text but|
326 | minimum| text|a pretty|a pretty| but a|a pretty|text but| text|a pretty|
327 |width is|but its| narrow| narrow| pretty| narrow|a pretty| but a| narrow|
328 | pretty|minimum| minimum| minimum| narrow| minimum| narrow| pretty| minimum|
329 | narrow.| width| width.| width.|minimum| width.| minimum| narrow| width.|
330 | | is| | | width.| | width.|minimum| |
331 | | pretty| | | | | | width.| |
332 | |narrow.| | | | | | | |
333 +--------+-------+--------+--------+-------+--------+--------+-------+--------+
337 AT_SETUP([2 big cells with new-lines])
338 AT_DATA([input], [1 2
339 @PSPP does not place many restrictions on ordering of commands. The main restriction is that variables must be defined before they are otherwise referenced. This section describes the details of command ordering, but most users will have no need to refer to them. PSPP possesses five internal states, called initial, INPUT PROGRAM, FILE TYPE, transformation, and procedure states.
340 @PSPP includes special support\nfor unknown numeric data values.\nMissing observations are assigned\na special value, called the\n``system-missing value''. This\n``value'' actually indicates the\nabsence of a value; it\nmeans that the actual\nvalue is unknown.
342 AT_CHECK([render-test input], [0], [dnl
343 +----------------------------------------------------------+------------------+
344 | PSPP does not place many restrictions on ordering of| PSPP includes|
345 | commands. The main restriction is that variables must be| special support|
346 | defined before they are otherwise referenced. This| for unknown|
347 | section describes the details of command ordering, but| numeric data|
348 | most users will have no need to refer to them. PSPP| values.|
349 | possesses five internal states, called initial, INPUT| Missing|
350 | PROGRAM, FILE TYPE, transformation, and procedure states.| observations are|
352 | | a special value,|
354 | | ``system-missing|
356 | |``value'' actually|
362 | | value is unknown.|
363 +----------------------------------------------------------+------------------+
367 AT_SETUP([8x8 with many 2x2 joins])
369 AT_CHECK([render-test input], [0],[dnl
395 AT_BANNER([output rendering -- horizontal page breaks])
397 AT_SETUP([breaking row of many small cells])
398 AT_CAPTURE_FILE([input])
399 AT_DATA([input], [1 50
400 m4_for([x], [1], [50], [1], [@x
402 AT_CHECK([render-test input], [0], [dnl
403 +-+-+-+-+-+-+-+-+-+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
404 |1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20|21|22|23|24|25|26|27|28|29|
405 +-+-+-+-+-+-+-+-+-+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
407 +--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
408 |30|31|32|33|34|35|36|37|38|39|40|41|42|43|44|45|46|47|48|49|50|
409 +--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
413 AT_SETUP([breaking row of many small cells, with headers])
414 AT_CAPTURE_FILE([input])
415 AT_DATA([input], [1 54 2 2
418 m4_for([x], [1], [50], [1], [@x
423 AT_CHECK([render-test input], [0], [dnl
424 +--+--+-+-+-+-+-+-+-+-+-+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
425 |ha|hb|1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20|21|22|23|24|25|hc|hd|
426 +--+--+-+-+-+-+-+-+-+-+-+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
428 +--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
429 |ha|hb|26|27|28|29|30|31|32|33|34|35|36|37|38|39|40|41|42|43|44|45|46|47|hc|hd|
430 +--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
432 +--+--+--+--+--+--+--+
433 |ha|hb|48|49|50|hc|hd|
434 +--+--+--+--+--+--+--+
438 AT_SETUP([breaking row of many medium-size cells])
439 AT_CAPTURE_FILE([input])
440 AT_DATA([input], [1 50
441 m4_for([x], [1], [50], [1], [@cell x
443 AT_CHECK([render-test input], [0], [dnl
444 +----+----+----+----+----+----+----+----+----+----+----+----+----+----+----+
445 |cell|cell|cell|cell|cell|cell|cell|cell|cell|cell|cell|cell|cell|cell|cell|
446 | 1| 2| 3| 4| 5| 6| 7| 8| 9| 10| 11| 12| 13| 14| 15|
447 +----+----+----+----+----+----+----+----+----+----+----+----+----+----+----+
449 +----+----+----+----+----+----+----+----+----+----+----+----+----+----+----+
450 |cell|cell|cell|cell|cell|cell|cell|cell|cell|cell|cell|cell|cell|cell|cell|
451 | 16| 17| 18| 19| 20| 21| 22| 23| 24| 25| 26| 27| 28| 29| 30|
452 +----+----+----+----+----+----+----+----+----+----+----+----+----+----+----+
454 +----+----+----+----+----+----+----+----+----+----+----+----+----+----+----+
455 |cell|cell|cell|cell|cell|cell|cell|cell|cell|cell|cell|cell|cell|cell|cell|
456 | 31| 32| 33| 34| 35| 36| 37| 38| 39| 40| 41| 42| 43| 44| 45|
457 +----+----+----+----+----+----+----+----+----+----+----+----+----+----+----+
459 +----+----+----+----+----+
460 |cell|cell|cell|cell|cell|
461 | 46| 47| 48| 49| 50|
462 +----+----+----+----+----+
466 AT_SETUP([breaking row of many medium-size cells, with headers])
467 AT_CAPTURE_FILE([input])
468 AT_DATA([input], [1 52 1 1
470 m4_for([x], [1], [50], [1], [@cell x
474 AT_CHECK([render-test input], [0], [dnl
475 +----+----+----+----+----+----+----+----+----+----+----+----+
476 header1|cell|cell|cell|cell|cell|cell|cell|cell|cell|cell|cell|cell|header2
477 | 1| 2| 3| 4| 5| 6| 7| 8| 9| 10| 11| 12|
478 +----+----+----+----+----+----+----+----+----+----+----+----+
480 +----+----+----+----+----+----+----+----+----+----+----+----+
481 header1|cell|cell|cell|cell|cell|cell|cell|cell|cell|cell|cell|cell|header2
482 | 13| 14| 15| 16| 17| 18| 19| 20| 21| 22| 23| 24|
483 +----+----+----+----+----+----+----+----+----+----+----+----+
485 +----+----+----+----+----+----+----+----+----+----+----+----+
486 header1|cell|cell|cell|cell|cell|cell|cell|cell|cell|cell|cell|cell|header2
487 | 25| 26| 27| 28| 29| 30| 31| 32| 33| 34| 35| 36|
488 +----+----+----+----+----+----+----+----+----+----+----+----+
490 +----+----+----+----+----+----+----+----+----+----+----+----+
491 header1|cell|cell|cell|cell|cell|cell|cell|cell|cell|cell|cell|cell|header2
492 | 37| 38| 39| 40| 41| 42| 43| 44| 45| 46| 47| 48|
493 +----+----+----+----+----+----+----+----+----+----+----+----+
496 header1|cell|cell|header2
502 AT_SETUP([breaking row of many big narrow cells])
503 AT_CAPTURE_FILE([input])
504 AT_DATA([input], [1 50
505 m4_for([x], [1], [50], [1], [@This is cell x in a series of 50.
507 AT_CHECK([render-test input], [0], [dnl
508 +------+------+------+------+------+------+------+------+------+------+------+
509 | This| This| This| This| This| This| This| This| This| This| This|
510 | is| is| is| is| is| is| is| is| is| is| is|
511 |cell 1|cell 2|cell 3|cell 4|cell 5|cell 6|cell 7|cell 8|cell 9| cell| cell|
512 | in a| in a| in a| in a| in a| in a| in a| in a| in a| 10 in| 11 in|
513 |series|series|series|series|series|series|series|series|series| a| a|
514 |of 50.|of 50.|of 50.|of 50.|of 50.|of 50.|of 50.|of 50.|of 50.|series|series|
515 | | | | | | | | | |of 50.|of 50.|
516 +------+------+------+------+------+------+------+------+------+------+------+
518 +------+------+------+------+------+------+------+------+------+------+------+
519 | This| This| This| This| This| This| This| This| This| This| This|
520 | is| is| is| is| is| is| is| is| is| is| is|
521 | cell| cell| cell| cell| cell| cell| cell| cell| cell| cell| cell|
522 | 12 in| 13 in| 14 in| 15 in| 16 in| 17 in| 18 in| 19 in| 20 in| 21 in| 22 in|
523 | a| a| a| a| a| a| a| a| a| a| a|
524 |series|series|series|series|series|series|series|series|series|series|series|
525 |of 50.|of 50.|of 50.|of 50.|of 50.|of 50.|of 50.|of 50.|of 50.|of 50.|of 50.|
526 +------+------+------+------+------+------+------+------+------+------+------+
528 +------+------+------+------+------+------+------+------+------+------+------+
529 | This| This| This| This| This| This| This| This| This| This| This|
530 | is| is| is| is| is| is| is| is| is| is| is|
531 | cell| cell| cell| cell| cell| cell| cell| cell| cell| cell| cell|
532 | 23 in| 24 in| 25 in| 26 in| 27 in| 28 in| 29 in| 30 in| 31 in| 32 in| 33 in|
533 | a| a| a| a| a| a| a| a| a| a| a|
534 |series|series|series|series|series|series|series|series|series|series|series|
535 |of 50.|of 50.|of 50.|of 50.|of 50.|of 50.|of 50.|of 50.|of 50.|of 50.|of 50.|
536 +------+------+------+------+------+------+------+------+------+------+------+
538 +------+------+------+------+------+------+------+------+------+------+------+
539 | This| This| This| This| This| This| This| This| This| This| This|
540 | is| is| is| is| is| is| is| is| is| is| is|
541 | cell| cell| cell| cell| cell| cell| cell| cell| cell| cell| cell|
542 | 34 in| 35 in| 36 in| 37 in| 38 in| 39 in| 40 in| 41 in| 42 in| 43 in| 44 in|
543 | a| a| a| a| a| a| a| a| a| a| a|
544 |series|series|series|series|series|series|series|series|series|series|series|
545 |of 50.|of 50.|of 50.|of 50.|of 50.|of 50.|of 50.|of 50.|of 50.|of 50.|of 50.|
546 +------+------+------+------+------+------+------+------+------+------+------+
548 +------+------+------+------+------+------+
549 | This| This| This| This| This| This|
550 | is| is| is| is| is| is|
551 | cell| cell| cell| cell| cell| cell|
552 | 45 in| 46 in| 47 in| 48 in| 49 in| 50 in|
554 |series|series|series|series|series|series|
555 |of 50.|of 50.|of 50.|of 50.|of 50.|of 50.|
556 +------+------+------+------+------+------+
560 AT_SETUP([breaking 2 rows of many small cells])
561 AT_CAPTURE_FILE([input])
562 AT_DATA([input], [2 50
563 m4_for([x], [1], [100], [1], [@x
565 AT_CHECK([render-test input], [0], [dnl
566 +--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
567 | 1| 2| 3| 4| 5| 6| 7| 8| 9|10|11|12|13|14|15|16|17|18|19|20|21|22|23|24|25|26|
568 +--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
569 |51|52|53|54|55|56|57|58|59|60|61|62|63|64|65|66|67|68|69|70|71|72|73|74|75|76|
570 +--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
572 +--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+---+
573 |27|28|29|30|31|32|33|34|35|36|37|38|39|40|41|42|43|44|45|46|47|48|49| 50|
574 +--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+---+
575 |77|78|79|80|81|82|83|84|85|86|87|88|89|90|91|92|93|94|95|96|97|98|99|100|
576 +--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+---+
580 AT_SETUP([breaking 3 rows with many joined cells])
581 AT_CAPTURE_FILE([input])
582 AT_DATA([input], [3 49
583 m4_foreach([var], [a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,dnl
584 A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W], [var
586 m4_for([x], [2], [49], [1], [1*2 @x
589 AT_CHECK([render-test input], [0], [dnl
590 a b c d e f g h i j k l m n o p q r s t u v w x y z A B C D E F G H I J K L M
591 +-+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
592 |1| 2| 3| 4| 5| 6| 7| 8| 9| 10| 11| 12| 13| 14| 15| 16| 17| 18| 19| 20|
593 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
594 | 26| 27| 28| 29| 30| 31| 32| 33| 34| 35| 36| 37| 38| 39| 40| 41| 42| 43| 44| 4
595 +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+--
598 +---+---+---+---+----+
599 | 21| 22| 23| 24| 25|
600 +-+-+-+-+-+-+-+-+-+--+
601 45| 46| 47| 48| 49|50|
602 --+---+---+---+---+--+
606 AT_SETUP([horz break 6x6, joined rows and columns])
608 AT_CHECK([render-test --width=6 input], [0], [dnl
653 AT_SETUP([horz break 6x6, joined rows and columns, left header])
654 RENDER_WEAVE_6X6([1 0 0 0])
655 AT_CHECK([render-test --width=10 input], [0], [dnl
686 AT_SETUP([horz break 6x6, joined rows and columns, right header])
687 RENDER_WEAVE_6X6([0 1 0 0])
688 AT_CHECK([render-test --width=10 input], [0], [dnl
719 AT_SETUP([breaking joined cells too wide for page])
720 AT_DATA([input], [4 6
734 AT_CHECK([render-test --width=10 input], [0], [dnl
761 AT_SETUP([breaking joined cells much too wide for page])
762 AT_DATA([input], [4 6
776 AT_CHECK([render-test --width=6 input], [0], [dnl
815 AT_SETUP([breaking cell too wide for page, no border])
816 AT_CAPTURE_FILE([input])
817 AT_DATA([input], [1 1
818 abcdefghijklmnopqrstuvwxyz
820 AT_CHECK([render-test --width=6 input], [0], [dnl
833 AT_SETUP([breaking cell too wide for page, with border])
834 AT_CAPTURE_FILE([input])
835 AT_DATA([input], [1 1
836 @abcdefghijklmnopqrstuvwxyz
838 AT_CHECK([render-test --width=6 input], [0], [dnl
869 AT_SETUP([horz break 8x8 with many 2x2 joins])
871 AT_CHECK([render-test --width=8 input], [0],[dnl
945 AT_BANNER([output rendering -- vertical page breaks])
947 AT_SETUP([breaking column of many small cells])
948 AT_CAPTURE_FILE([input])
949 AT_DATA([input], [20 1
950 m4_for([x], [1], [20], [1], [@x
952 AT_CHECK([render-test --length=10 input], [0], [dnl
1005 AT_SETUP([breaking column of many small cells, with headers])
1006 AT_CAPTURE_FILE([input])
1007 AT_DATA([input], [17 1 0 0 1 1
1009 m4_for([x], [1], [15], [1], [@x
1012 AT_CHECK([render-test --length=13 input], [0], [dnl
1069 AT_SETUP([disabling too-big headers])
1070 AT_CAPTURE_FILE([input])
1071 AT_DATA([input], [17 1 0 0 1 1
1073 m4_for([x], [1], [15], [1], [@x
1076 AT_CHECK([render-test --length=10 input], [0], [dnl
1123 AT_SETUP([breaking column of many medium-size cells])
1124 AT_CAPTURE_FILE([input])
1125 AT_DATA([input], [20 1
1126 m4_for([x], [1], [20], [1], [@top x\ncell x\nbottom x
1128 AT_CHECK([render-test --length 10 input], [0], [dnl
1231 AT_SETUP([breaking 3 columns with many joined cells])
1232 AT_CAPTURE_FILE([input])
1233 AT_DATA([input], [3 19
1234 m4_foreach([x], [a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s], [x
1236 m4_for([x], [2], [19], [1], [1*2 @x\nab\ncd
1239 AT_CHECK([render-test --length=6 --transpose input], [0], [dnl
1300 AT_SETUP([vert break 6x6, joined rows and columns])
1302 AT_CHECK([render-test --length=6 input], [0], [dnl
1323 AT_SETUP([breaking joined cells too tall for page])
1324 AT_DATA([input], [4 6
1325 1*6 @abc\ndef\nghi\njkl\nmno\npqr\nstu\nvwx\nyzA\nBCD\nEFG
1326 1*3 @HIJ\nKLM\nOPQ\nRST\nUVW
1327 1*3 @XYZ\n012\n345\n678\n90a
1338 AT_CHECK([render-test --transpose --length=6 input], [0], [dnl
1359 AT_SETUP([breaking cell too tall for page, no border])
1360 AT_CAPTURE_FILE([input])
1361 AT_DATA([input], [1 1
1362 abc defg hij klmn opq rstu vwx yz ABCDE FGH I JK LMNOP QR STU VWXYZ
1364 AT_CHECK([render-test --width=6 --length=6 input], [0], [dnl
1383 AT_SETUP([breaking cell too tall for page, with border])
1384 AT_CAPTURE_FILE([input])
1385 AT_DATA([input], [1 1
1386 @abc defg hij klmn opq rstu vwx yz ABCDE FGH I JK LMNOP QR STU VWXYZ
1388 AT_CHECK([render-test --width=7 --length=6 input], [0], [dnl
1418 AT_BANNER([output rendering -- double page breaks])
1420 AT_SETUP([double break 6x6, joined rows and columns])
1422 AT_CHECK([render-test --width=6 --length=6 input], [0], [dnl
1479 AT_SETUP([double break 8x8, with joins, left and right headers])
1480 RENDER_8X8([1 1 0 0])
1481 AT_CHECK([render-test input --width=14 --length=14], [0], [dnl
1524 AT_SETUP([double break 8x8, with joins, top and bottom headers])
1525 RENDER_8X8([0 0 1 1])
1526 AT_CHECK([render-test input --width=14 --length=14], [0], [dnl
1579 AT_SETUP([double break 8x8, with joins, all headers])
1580 RENDER_8X8([1 1 1 1])
1581 AT_CHECK([render-test input --width=14 --length=14], [0], [dnl
1634 AT_SETUP([double break joined cells too big for page])
1635 AT_DATA([input], [7 7
1644 6*6 @The MISSING subcommand determines the handling of missing variables. If INCLUDE is set, then user-missing values are included in the calculations. If NOINCLUDE is set, which is the default, user-missing values are excluded.
1651 AT_CHECK([render-test --width=15 --length=15 input], [0], [dnl