tk 4.2 self tests on Ultrix 
Author Message
 tk 4.2 self tests on Ultrix

Using the "make test" command on tk4.2 running on an Ultrix V4.3
system with X11R6.1, I get the following rather long list of
errors.

Alec Wolman

==== entry-3.5 EntryWidgetCmd procedure, "bbox" widget command
==== Contents of test case:

    .e delete 0 end
    .e bbox 0

==== Result was:
5 5 0 15
---- Result should have been:
5 5 0 13
---- entry-3.5 FAILED

==== entry-3.6 EntryWidgetCmd procedure, "bbox" widget command
==== Contents of test case:

    .e delete 0 end
    .e insert 0 "abcdefghijklmnop"
    list [.e bbox 0] [.e bbox 1] [.e bbox end]

==== Result was:
{5 5 8 15} {13 5 8 15} {125 5 8 15}
---- Result should have been:
{5 5 7 13} {12 5 7 13} {110 5 7 13}
---- entry-3.6 FAILED

==== entry-5.9 ConfigureEntry procedure
==== Contents of test case:

    catch {destroy .e}
    entry .e -font $fixed -bd 2 -relief raised
    pack .e
    .e insert end "0123"
    update

==== Result was:
0 0 0 1
---- Result should have been:
0 0 1 1
---- entry-5.9 FAILED

==== entry-5.10 ConfigureEntry procedure
==== Contents of test case:

    catch {destroy .e}
    entry .e -font $fixed -bd 2 -relief flat
    pack .e
    .e insert end "0123"
    update

==== Result was:
0 0 0 1
---- Result should have been:
0 0 1 1
---- entry-5.10 FAILED

==== entry-6.1 EntryComputeGeometry procedure
==== Contents of test case:

    catch {destroy .e}
    entry .e -font $fixed -bd 2 -relief raised -width 20 -highlightthickness 3
    pack .e
    .e insert end 012\t45
    update

==== Result was:
3 3
---- Result should have been:
3 4
---- entry-6.1 FAILED

==== entry-6.2 EntryComputeGeometry procedure
==== Contents of test case:

    catch {destroy .e}
    entry .e -font $fixed -bd 2 -relief raised -width 20 -justify center  -highlightthickness 3
    pack .e
    .e insert end 012\t45
    update

==== Result was:
3 3
---- Result should have been:
3 4
---- entry-6.2 FAILED

==== entry-6.3 EntryComputeGeometry procedure
==== Contents of test case:

    catch {destroy .e}
    entry .e -font $fixed -bd 2 -relief raised -width 20 -justify right  -highlightthickness 3
    pack .e
    .e insert end 012\t45
    update

==== Result was:
3 3
---- Result should have been:
3 4
---- entry-6.3 FAILED

==== entry-6.6 EntryComputeGeometry procedure
==== Contents of test case:

    catch {destroy .e}
    entry .e -font $fixed -bd 2 -relief raised -width 10
    pack .e
    .e insert end "01234\t67890"
    update
    .e xview 3

==== Result was:
5 5
---- Result should have been:
5 6
---- entry-6.6 FAILED

==== entry-7.11 InsertChars procedure
==== Contents of test case:

    .e delete 0 end
    .e insert 0 "xyzzy"
    update
    .e insert 2 00
    winfo reqwidth .e

==== Result was:
66
---- Result should have been:
59
---- entry-7.11 FAILED

==== entry-8.18 DeleteChars procedure
==== Contents of test case:

    .e delete 0 end
    .e insert 0 "xyzzy"
    update
    .e delete 2 4
    winfo reqwidth .e

==== Result was:
34
---- Result should have been:
31
---- entry-8.18 FAILED

==== entry-13.15 GetEntryIndex procedure
==== Contents of test case:


==== Result was:
4
---- Result should have been:
5
---- entry-13.15 FAILED

==== listbox-3.81 ListboxWidgetCmd procedure, "xview" option
==== Contents of test case:

    .l xview 4
    .l xview

==== Result was:
0.0806045 0.282116
---- Result should have been:
0.0804598 0.281609
---- listbox-3.81 FAILED

==== listbox-3.84 ListboxWidgetCmd procedure, "xview" option
==== Contents of test case:

    .l xview 0
    .l xview moveto .4
    update
    .l xview

==== Result was:
0.382872 0.584383
---- Result should have been:
0.382184 0.583333
---- listbox-3.84 FAILED

==== listbox-3.85 ListboxWidgetCmd procedure, "xview" option
==== Contents of test case:

    .l xview 0
    .l xview scroll 2 units
    update
    .l xview

==== Result was:
0.0403023 0.241814
---- Result should have been:
0.0402299 0.241379
---- listbox-3.85 FAILED

==== listbox-3.86 ListboxWidgetCmd procedure, "xview" option
==== Contents of test case:

    .l xview 30
    .l xview scroll -1 pages
    update
    .l xview

==== Result was:
0.443325 0.644836
---- Result should have been:
0.442529 0.643678
---- listbox-3.86 FAILED

==== listbox-3.87 ListboxWidgetCmd procedure, "xview" option
==== Contents of test case:

    .l configure -width 1
    update
    .l xview 30
    .l xview scroll -4 pages
    update
    .l xview

==== Result was:
0.523929 0.544081
---- Result should have been:
0.522989 0.543103
---- listbox-3.87 FAILED

==== listbox-4.6 ConfigureListbox procedure
==== Contents of test case:

    catch {destroy .l}

    # The following code (reset geometry, withdraw, etc.) is necessary
    # to reset the state of some window managers like olvwm under
    # SunOS 4.1.3.

    wm geom . 300x300
    update
    wm geom . {}
    wm withdraw .
    listbox .l -font $fixed -width 15 -height 20
    pack .l
    update
    wm deiconify .
    set x [getsize .]
    .l configure -setgrid 1
    update
    list $x [getsize .]

==== Result was:
130x368 15x20
---- Result should have been:
115x328 15x20
---- listbox-4.6 FAILED

==== listbox-5.1 ListboxComputeGeometry procedure
==== Contents of test case:

    catch {destroy .l}
    listbox .l -font $fixed -width 15 -height 20
    pack .l
    list [winfo reqwidth .l] [winfo reqheight .l]

==== Result was:
130 368
---- Result should have been:
115 328
---- listbox-5.1 FAILED

==== listbox-5.2 ListboxComputeGeometry procedure
==== Contents of test case:

    catch {destroy .l}
    listbox .l -font $fixed -width 0 -height 10
    pack .l
    update
    list [winfo reqwidth .l] [winfo reqheight .l]

==== Result was:
18 188
---- Result should have been:
17 168
---- listbox-5.2 FAILED

==== listbox-5.3 ListboxComputeGeometry procedure
==== Contents of test case:

    catch {destroy .l}
    listbox .l -font $fixed -width 0 -height 10 -bd 3
    .l insert 0 Short "Really much longer" Longer
    pack .l
    update
    list [winfo reqwidth .l] [winfo reqheight .l]

==== Result was:
156 190
---- Result should have been:
138 170
---- listbox-5.3 FAILED

==== listbox-5.4 ListboxComputeGeometry procedure
==== Contents of test case:

    catch {destroy .l}
    listbox .l -font $fixed -width 10 -height 0
    pack .l
    update
    list [winfo reqwidth .l] [winfo reqheight .l]

==== Result was:
90 26
---- Result should have been:
80 24
---- listbox-5.4 FAILED

==== listbox-5.5 ListboxComputeGeometry procedure
==== Contents of test case:

    catch {destroy .l}
    listbox .l -font $fixed -width 10 -height 0 -highlightthickness 0
    .l insert 0 Short "Really much longer" Longer
    pack .l
    update
    list [winfo reqwidth .l] [winfo reqheight .l]

==== Result was:
86 58
---- Result should have been:
76 52
---- listbox-5.5 FAILED

==== listbox-12.1 ChangeListboxOffset procedure
==== Contents of test case:

    set log {}
    .l xview 99
    update
    list [.l xview] $log

==== Result was:
{0.913425 1} {{x 0.913425 1}}
---- Result should have been:
{0.912607 1} {{x 0.912607 1}}
---- listbox-12.1 FAILED

==== listbox-12.2 ChangeListboxOffset procedure
==== Contents of test case:

    set log {}
    .l xview moveto -.25
    update
    list [.l xview] $log

==== Result was:
{0 0.100376} {{x 0 0.100376}}
---- Result should have been:
{0 0.100287} {{x 0 0.100287}}
---- listbox-12.2 FAILED

==== listbox-12.3 ChangeListboxOffset procedure
==== Contents of test case:

    .l xview 10
    update
    set log {}
    .l xview 10
    update
    list [.l xview] $log

==== Result was:
{0.100376 0.200753} {}
---- Result should have been:
{0.100287 0.200573} {}
---- listbox-12.3 FAILED

==== listbox-13.1 ListboxScanTo procedure
==== Contents of test case:

    .l yview 0
    .l xview 0
    .l scan mark 10 20
    .l scan dragto [expr 10-$width] [expr 20-$height]
    update
    list [.l xview] [.l yview]

==== Result was:
{0.221662 0.423174} {0.5 0.75}
---- Result should have been:
{0.201149 0.402299} {0.5 0.75}
---- listbox-13.1 FAILED

==== listbox-13.2 ListboxScanTo procedure
==== Contents of test case:

    .l yview 5
    .l xview 10
    .l scan mark 10 20
    .l scan dragto 20 40
    update
    set x [list [.l xview] [.l yview]]
    .l scan dragto [expr 20-$width] [expr 40-$height]
    update
    lappend x [.l xview] [.l yview]

==== Result was:
{0 0.201511} {0 0.25} {0.221662 0.423174} {0.5 0.75}
---- Result should have been:
{0 0.201149} {0 0.25} {0.201149 0.402299} {0.5 0.75}
---- listbox-13.2 FAILED

==== listbox-13.3 ListboxScanTo procedure
==== Contents of test case:

    .l yview moveto 1.0
    .l xview moveto 1.0
    .l scan mark 10 20
    .l scan dragto 5 10
    update
    set x [list [.l xview] [.l yview]]
    .l scan dragto [expr 5+$width] [expr 10+$height]
    update
    lappend x [.l xview] [.l yview]

==== Result was:
{0.826196 1} {0.75 1} {0.604534 0.806045} {0.25 0.5}
---- Result should have been:
{0.824713 1} {0.75 1} {0.623563 0.824713} {0.25 0.5}
---- listbox-13.3 FAILED

==== listbox-14.3 NearestListboxElement procedure
==== Contents of test case:


==== Result was:
5 5
---- Result should have been:
5 6
---- listbox-14.3 FAILED

==== listbox-19.1 ListboxUpdateVScrollbar procedure
==== Contents of test case:

    .l configure -xscrollcommand "record x"
    set log {}
    .l insert 0 abc
    update
    .l insert 0 "This is a much longer string..."
    update
    .l delete 0 end
    update
    set log

==== Result was:
{x 0 1} {x 0 0.326531} {x 0 1}
---- Result should have been:
{x 0 1} {x 0 0.328638} {x 0 1}
---- listbox-19.1 FAILED

==== scale-7.1 ComputeScaleGeometry procedure
==== Contents of test case:

    catch {destroy .s}
    scale .s -from 0 -to 10 -label "Short" -orient vertical -length 5i
    pack .s
    update
    list [winfo reqwidth .s] [winfo reqheight .s]

==== Result was:
86 472
---- Result should have been:
86 458
---- scale-7.1 FAILED

==== scale-7.5 ComputeScaleGeometry procedure
==== Contents of test case:

    catch {destroy .s}
    scale .s -from 0 -to 10 -label "Short" -orient horizontal -length 5i
    pack .s
    update
    list [winfo reqwidth .s] [winfo reqheight .s]

==== Result was:
472 61
---- Result should have been:
458 61
---- scale-7.5 FAILED

==== text-12.16 ConfigureText procedure
==== Contents of test case:

    # This test is non-portable because the window size will vary depending
    # on the font size, which can vary.

    catch {destroy .t2}
    toplevel .t2
    text .t2.t -width 20 -height 10
    pack append .t2 .t2.t top
    wm geometry .t2 +0+0
    update
    wm geometry .t2

==== Result was:
210x200+0+0
---- Result should have been:
150x140+0+0
---- text-12.16 FAILED

==== text-14.2 TextCmdDeletedProc procedure, disabling -setgrid
==== Contents of test case:

    catch {destroy .top}
    toplevel .top
    wm geom .top +0+0
    text .top.t -setgrid 1 -width 20 -height 10
    pack .top.t
    update
    set x [wm geometry .top]
    rename .top.t {}
    update
    lappend x [wm geometry .top]
    destroy .top
    set x

==== Result was:
20x10+0+0 210x200+0+0
---- Result should have been:
20x10+0+0 150x140+0+0
---- text-14.2 FAILED

==== textDisp-1.2 GetStyle procedure, wrapmode
==== Contents of test case:

    .t configure -wrap char
    .t delete 1.0 end
    .t insert 1.0 "abcd\nefg hijkl mnop qrstuv wxyz"
    .t tag configure x -wrap word
    .t tag configure y -wrap none
    .t tag raise y
    update
    set result [list [.t bbox 2.20]]
    .t tag add x 2.0 2.1
    lappend result [.t bbox 2.20]
    .t tag add y 1.end 2.2
    lappend result [.t bbox 2.20]

==== Result was:
{5 35 8 15} {45 35 8 15} {}
---- Result should have been:
{5 31 7 13} {40 31 7 13} {}
---- textDisp-1.2 FAILED

==== textDisp-2.1 LayoutDLine, basics
==== Contents of test case:

    .t configure -wrap char
    .t delete 1.0 end
    .t insert 1.0 "This is some sample text for testing."
    list [.t bbox 1.19] [.t bbox 1.20]

==== Result was:
{157 5 8 15} {5 20 8 15}
---- Result should have been:
{138 5 7 13} {5 18 7 13}
---- textDisp-2.1 FAILED

==== textDisp-2.2 LayoutDLine, basics
==== Contents of test case:

    .t configure -wrap char
    .t delete 1.0 end
    .t insert 1.0 "This isx some sample text for testing."
    list [.t bbox 1.19] [.t bbox 1.20]

==== Result was:
{157 5 8 15} {5 20 8 15}
---- Result should have been:
{138 5 7 13} {5 18 7 13}
---- textDisp-2.2 FAILED

==== textDisp-2.3 LayoutDLine, basics
==== Contents of test case:

    .t configure -wrap char
    .t delete 1.0 end
    .t insert 1.0 "This isxxx some sample text for testing."
    list [.t bbox 1.19] [.t bbox 1.20]

==== Result was:
{157 5 8 15} {5 20 8 15}
---- Result should have been:
{138 5 7 13} {5 18 7 13}
---- textDisp-2.3 FAILED

==== textDisp-2.4 LayoutDLine, word wrap
==== Contents of test case:

    .t configure -wrap word
    .t delete 1.0 end
    .t insert 1.0 "This is some sample text for testing."
    list [.t bbox 1.19] [.t bbox 1.20]

==== Result was:
{157 5 8 15} {5 20 8 15}
---- Result should have been:
{138 5 7 13} {5 18 7 13}
---- textDisp-2.4 FAILED

==== textDisp-2.5 LayoutDLine, word wrap
==== Contents of test case:

    .t configure -wrap word
    .t delete 1.0 end
    .t insert 1.0 "This isx some sample text for testing."
    list [.t bbox 1.13] [.t bbox 1.14] [.t bbox 1.19]

==== Result was:
{109 5 56 15} {5 20 8 15} {45 20 8 15}
---- Result should have been:
{96 5 49 13} {5 18 7 13} {40 18 7 13}
---- textDisp-2.5 FAILED

==== textDisp-2.6 LayoutDLine, word wrap
==== Contents of test case:

    .t configure -wrap word
    .t delete 1.0 end
    .t insert 1.0 "This isxxx some sample text for testing."
    list [.t bbox 1.15] [.t bbox 1.16]

==== Result was:
{125 5 40 15} {5 20 8 15}
---- Result should have been:
{110 5 35 13} {5 18 7 13}
---- textDisp-2.6 FAILED

==== textDisp-2.7 LayoutDLine, marks and tags
==== Contents of test case:

    .t configure -wrap word
    .t delete 1.0 end
    .t insert 1.0 "This isxxx some sample text for testing."
    .t tag add foo 1.4 1.6
    .t mark set insert 1.8
    list [.t bbox 1.2] [.t bbox 1.5] [.t bbox 1.11]

==== Result was:
{21 5 8 15} {45 5 8 15} {93 5 8 15}
---- Result should have been:
{19 5 7 13} {40 5 7 13} {82 5 7 13}
---- textDisp-2.7 FAILED

==== textDisp-2.8 LayoutDLine, extra chunk at end of dline
==== Contents of test case:

    wm geom . [expr $width+1]x$height
    update
    .t configure -wrap char
    .t delete 1.0 end
    .t insert 1.0 "This isxx some sample text for testing."
    .t mark set foo 1.20
    list [.t bbox 1.19] [.t bbox 1.20]

==== Result was:
{157 5 9 15} {5 20 8 15}
---- Result should have been:
{138 5 8 13} {5 18 7 13}
---- textDisp-2.8 FAILED

==== textDisp-2.9 LayoutDLine, marks and tags
==== Contents of test case:

    .t configure -wrap word
    .t delete 1.0 end
    .t insert 1.0 "This is a very_very_long_word_that_wraps."
    list [.t bbox 1.9] [.t bbox 1.10] [.t bbox 1.25]

==== Result was:
{77 5 88 15} {5 20 8 15} {125 20 8 15}
---- Result should have been:
{68 5 77 13} {5 18 7 13} {110 18 7 13}
---- textDisp-2.9 FAILED

==== textDisp-2.10 LayoutDLine, marks and tags
==== Contents of test case:

    .t configure -wrap word
    .t delete 1.0 end
    .t insert 1.0 "This is a very_very_long_word_that_wraps."
    .t tag add foo 1.13
    .t tag add foo 1.15
    .t tag add foo 1.17
    .t tag add foo 1.19
    list [.t bbox 1.9] [.t bbox 1.10] [.t bbox 1.25]

==== Result was:
{77 5 88 15} {5 20 8 15} {125 20 8 15}
---- Result should have been:
{68 5 77 13} {5 18 7 13} {110 18 7 13}
---- textDisp-2.10 FAILED

==== textDisp-2.11 LayoutDLine, newline width
==== Contents of test case:

    .t configure -wrap char
    .t delete 1.0 end
    .t insert 1.0 "a\nbb\nccc\ndddd"
    list [.t bbox 2.2] [.t bbox 3.3]

==== Result was:
{21 20 144 15} {29 35 136 15}
---- Result should have been:
{19 18 126 13} {26 31 119 13}
---- textDisp-2.11 FAILED

==== textDisp-2.12 LayoutDLine, justification
==== Contents of test case:

    .t configure -wrap char
    .t delete 1.0 end
    .t insert 1.0 "\na\nbb\nccc\ndddd"
    .t tag configure x -justify center
    .t tag add x 1.0 end
    .t tag add y 3.0 3.2
    list [.t bbox 1.0] [.t bbox 2.0] [.t bbox 4.0] [.t bbox 4.2]

==== Result was:
{85 5 80 15} {81 20 8 15} {73 50 8 15} {89 50 8 15}
---- Result should have been:
{75 5 70 13} {71 18 7 13} {64 44 7 13} {78 44 7 13}
---- textDisp-2.12 FAILED

==== textDisp-2.13 LayoutDLine, justification
==== Contents of test case:

    .t configure -wrap char
    .t delete 1.0 end
    .t insert 1.0 "\na\nbb\nccc\ndddd"
    .t tag configure x -justify right
    .t tag add x 1.0 end
    .t tag add y 3.0 3.2
    list [.t bbox 1.0] [.t bbox 2.0] [.t bbox 4.0] [.t bbox 4.2]

==== Result was:
{165 5 0 15} {157 20 8 15} {141 50 8 15} {157 50 8 15}
---- Result should have been:
{145 5 0 13} {138 18 7 13} {124 44 7 13} {138 44 7 13}
---- textDisp-2.13 FAILED

==== textDisp-2.14 LayoutDLine, justification
==== Contents of test case:

    .t configure -wrap char
    .t delete 1.0 end
    .t insert 1.0 "\na\nbb\nccc\ndddd"
    .t tag configure x -justify center
    .t tag add x 2.0 3.1
    .t tag configure y -justify right
    .t tag add y 3.0 4.0
    .t tag raise y
    list [.t bbox 2.0] [.t bbox 3.0] [.t bbox 3.end] [.t bbox 4.0]

==== Result was:
{81 20 8 15} {149 35 8 15} {165 35 0 15} {5 50 8 15}
---- Result should have been:
{71 18 7 13} {131 31 7 13} {145 31 0 13} {5 44 7 13}
---- textDisp-2.14 FAILED

==== textDisp-2.15 LayoutDLine, justification
==== Contents of test case:

    .t configure -wrap char
    .t delete 1.0 end
    .t insert 1.0 "\na\nbb\nccc\ndddd"
    .t tag configure x -justify center
    .t tag add x 2.0 3.1
    .t tag configure y -justify right
    .t tag add y 3.0 4.0
    .t tag lower y
    list [.t bbox 2.0] [.t bbox 3.0] [.t bbox 3.end] [.t bbox 4.0]

==== Result was:
{81 20 8 15} {77 35 8 15} {93 35 72 15} {5 50 8 15}
---- Result should have been:
{71 18 7 13} {68 31 7 13} {82 31 63 13} {5 44 7 13}
---- textDisp-2.15 FAILED

==== textDisp-2.16 LayoutDLine, justification
==== Contents of test case:

    .t configure -wrap word
    .t delete 1.0 end
    .t insert 1.0 "Lots of long words, enough to force word wrap\nThen\nmore lines"
    .t tag configure x -justify center
    .t tag add x 1.1 1.20
    .t tag add x 1.21 1.end
    list [.t bbox 1.0] [.t bbox 1.20] [.t bbox 1.36] [.t bbox 2.0]

==== Result was:
{5 5 8 15} {5 20 8 15} {49 35 8 15} {5 50 8 15}
---- Result should have been:
{5 5 7 13} {5 18 7 13} {43 31 7 13} {5 44 7 13}
---- textDisp-2.16 FAILED

==== textDisp-2.17 LayoutDLine, justification
==== Contents of test case:

    .t configure -wrap word
    .t delete 1.0 end
    .t insert 1.0 "Lots of long words, enough to force word wrap\nThen\nmore lines"
    .t tag configure x -justify center
    .t tag add x 1.20
    list [.t bbox 1.0] [.t bbox 1.20] [.t bbox 1.36] [.t bbox 2.0]

==== Result was:
{5 5 8 15} {21 20 8 15} {5 35 8 15} {5 50 8 15}
---- Result should have been:
{5 5 7 13} {19 18 7 13} {5 31 7 13} {5 44 7 13}
---- textDisp-2.17 FAILED

==== textDisp-2.18 LayoutDLine, justification
==== Contents of test case:

    .t configure -wrap none
    .t delete 1.0 end
    .t insert 1.0 "Lots of long words, enough to extend out of the window\n"
    .t insert end "Then\nmore lines\nThat are shorter"
    .t tag configure x -justify center
    .t tag configure y -justify right
    .t tag add x 2.0
    .t tag add y 3.0
    .t xview scroll 5 units
    list [.t bbox 2.0] [.t bbox 3.0]

==== Result was:
{29 20 8 15} {45 35 8 15}
---- Result should have been:
{26 18 7 13} {40 31 7 13}
---- textDisp-2.18 FAILED

==== textDisp-2.19 LayoutDLine, margins
==== Contents of test case:

    .t configure -wrap word
    .t delete 1.0 end
    .t insert 1.0 "Lots of long words, enough to force word wrap\nThen\nmore lines"
    .t tag configure x -lmargin1 20 -lmargin2 40 -rmargin 15
    .t tag add x 1.0 end
    list [.t bbox 1.0] [.t bbox 1.12] [.t bbox 1.13] [.t bbox 2.0]

==== Result was:
{25 5 8 15} {121 5 44 15} {45 20 8 15} {25 65 8 15}
---- Result should have been:
{25 5 7 13} {109 5 36 13} {45 18 7 13} {25 70 7 13}
---- textDisp-2.19 FAILED

==== textDisp-2.20 LayoutDLine, margins
==== Contents of test case:
    .t configure -wrap word
    .t delete 1.0 end
    .t insert 1.0 "Lots of long words, enough to force word wrap\nThen\nmore lines"
    .t tag configure x -lmargin1 20 -lmargin2 10 -rmargin 3
    .t tag configure y -lmargin1 15 -lmargin2 5 -rmargin 0
    .t tag raise y
    .t tag add x 1.0 end
    .t tag add y 1.13
    list [.t bbox 1.0] [.t bbox 1.13] [.t bbox 1.30] [.t bbox 2.0]

==== Result was:
{25 5 8 15} {10 20 8 15} {15 35 8 15} {25 50 8 15}
---- Result should have been:
{25 5 7 13} {10 18 7 13} {15 31 7 13} {25 44 7 13}
---- textDisp-2.20 FAILED

==== textDisp-2.21 LayoutDLine, margins
==== Contents of test case:

    .t configure -wrap word
    .t delete 1.0 end
    .t insert 1.0 "Sample text"
    .t tag configure x -lmargin1 80 -lmargin2 80 -rmargin 100
    .t tag add x 1.0 end
    list [.t bbox 1.0] [.t bbox 1.1] [.t bbox 1.2]

==== Result was:
{85 5 80 15} {85 20 80 15} {85 35 80 15}
---- Result should have been:
{85 5 60 13} {85 18 60 13} {85 31 60 13}
---- textDisp-2.21 FAILED

==== textDisp-2.26 LayoutDLine, tabs, breaking chunks at tabs
==== Contents of test case:

    .t delete 1.0 end
    .t tag delete x
    .t tag configure x -tabs {30 60 90 120} -justify right
    .t insert 1.0 "a\tb\tc\td\te"
    .t mark set dummy1 1.1
    .t mark set dummy2 1.2
    .t tag add x 1.0 end
    list [lindex [.t bbox 1.2] 0] [lindex [.t bbox 1.4] 0]  [lindex [.t bbox 1.6] 0] [lindex [.t bbox 1.8] 0]

==== Result was:
133 141 149 157
---- Result should have been:
117 124 131 138
---- textDisp-2.26 FAILED

==== textDisp-2.28 LayoutDLine, tabs, running out of space in dline
==== Contents of test case:

    .t delete 1.0 end
    .t insert 1.0 "a\tb\tc\td"
    .t bbox 1.6

==== Result was:
5 20 8 15
---- Result should have been:
5 18 7 13
---- textDisp-2.28 FAILED

==== textDisp-2.29 LayoutDLine, tabs, running out of space in dline
==== Contents of test case:

    .t delete 1.0 end
    .t insert 1.0 "a\tx\tabcd"
    .t bbox 1.4

==== Result was:
133 5 8 15
---- Result should have been:
117 5 7 13
---- textDisp-2.29 FAILED

==== textDisp-2.30 LayoutDLine, tabs, running out of space in dline
==== Contents of test case:

    .t delete 1.0 end
    .t insert 1.0 "a\tx\tabc"
    .t bbox 1.4

==== Result was:
133 5 8 15
---- Result should have been:
117 5 7 13
---- textDisp-2.30 FAILED

==== textDisp-3.1 different character sizes
==== Contents of test case:

    .t configure -wrap word
    .t delete 1.0 end
    .t insert end "Some sample text, including both large\n"
    .t insert end "characters and\nsmall\n"
    .t insert end "abc\nd\ne\nfghij"
    .t tag add big 1.5 1.10
    .t tag add big 2.11 2.14
    list [.t bbox 1.1] [.t bbox 1.6] [.t dlineinfo 1.0] [.t dlineinfo 3.0]

==== Result was:
{13 16 8 15} {57 5 13 27} {5 5 121 27 22} {5 89 40 15 11}
---- Result should have been:
{12 17 7 13} {52 5 13 27} {5 5 114 27 22} {5 85 35 13 10}
---- textDisp-3.1 FAILED

==== textDisp-4.1 UpdateDisplayInfo, basic
==== Contents of test case:

    .t delete 1.0 end
    .t insert end "Line 1\nLine 2\nLine 3\n"
    update
    .t delete 2.0 2.end
    .t insert 2.0 "New Line 2"
    update
    list [.t bbox 1.0] [.t bbox 2.0] [.t bbox 3.0] $tk_textRelayout

==== Result was:
{5 5 8 15} {5 20 8 15} {5 35 8 15} 2.0
---- Result should have been:
{5 5 7 13} {5 18 7 13} {5 31 7 13} 2.0
---- textDisp-4.1 FAILED

==== textDisp-4.2 UpdateDisplayInfo, re-use tail of text line
==== Contents of test case:

    .t delete 1.0 end
    .t insert end "Line 1\nLine 2 is so long that it wraps around\nLine 3"
    update
    .t mark set x 2.21
    .t delete 2.2
    .t insert 2.0 X
    update
    list [.t bbox 2.0] [.t bbox x] [.t bbox 3.0] $tk_textRelayout

==== Result was:
{5 20 8 15} {13 35 8 15} {5 50 8 15} {2.0 2.20}
---- Result should have been:
{5 18 7 13} {12 31 7 13} {5 44 7 13} {2.0 2.20}
---- textDisp-4.2 FAILED

==== textDisp-4.3 UpdateDisplayInfo, tail of text line shifts
==== Contents of test case:

    .t delete 1.0 end
    .t insert end "Line 1\nLine 2 is so long that it wraps around\nLine 3"
    update
    .t mark set x 2.21
    .t delete 2.2
    update
    list [.t bbox 2.0] [.t bbox x] [.t bbox 3.0] $tk_textRelayout

==== Result was:
{5 20 8 15} {5 35 8 15} {5 50 8 15} {2.0 2.20}
---- Result should have been:
{5 18 7 13} {5 31 7 13} {5 44 7 13} {2.0 2.20}
---- textDisp-4.3 FAILED

==== textDisp-4.4 UpdateDisplayInfo, wrap-mode "none"
==== Contents of test case:

    .t configure -wrap none
    .t delete 1.0 end
    .t insert end "Line 1\nLine 2 is so long that it wraps around\nLine 3"
    update
    list [.t bbox 2.0] [.t bbox 2.25] [.t bbox 3.0] $tk_textRelayout

==== Result was:
{5 20 8 15} {} {5 35 8 15} {1.0 2.0 3.0}
---- Result should have been:
{5 18 7 13} {} {5 31 7 13} {1.0 2.0 3.0}
---- textDisp-4.4 FAILED

==== textDisp-4.5 UpdateDisplayInfo, tiny window
==== Contents of test case:

    wm geom . 103x$height
    update
    .t configure -wrap none
    .t delete 1.0 end
    .t insert end "Line 1\nLine 2 is so long that it wraps around\nLine 3"
    update
    list [.t bbox 2.0] [.t bbox 2.1] [.t bbox 3.0] $tk_textRelayout

==== Result was:
{5 20 1 15} {} {5 35 1 15} {1.0 2.0 3.0}
---- Result should have been:
{5 18 1 13} {} {5 31 1 13} {1.0 2.0 3.0}
---- textDisp-4.5 FAILED

==== textDisp-4.9 UpdateDisplayInfo, filling in extra vertical space
==== Contents of test case:

    .t delete 1.0 end
    .t insert end "1\n2\n3\n4\n5\n6\n7\n8\n9\n10\n11\n12\n13\n14\n15\n16\n17"
    .t yview 16.0
    update
    .t delete 15.0 end
    list [.t bbox 7.0] [.t bbox 12.0]

==== Result was:
{3 33 8 15} {3 108 8 15}
---- Result should have been:
{3 29 7 13} {3 94 7 13}
---- textDisp-4.9 FAILED

==== textDisp-4.17 UpdateDisplayInfo, horizontal scrolling
==== Contents of test case:

    .t configure -wrap none
    .t delete 1.0 end
    .t insert end "Short line 1\nLine 2 is long enough to scroll horizontally"
    .t insert end "\nLine 3\nLine 4"
    update
    .t xview scroll 3 units
    update
    list $tk_textRelayout $tk_textRedraw [.t bbox 2.0] [.t bbox 2.5]  [.t bbox 2
.23]

==== Result was:
{} {1.0 2.0 3.0 4.0} {} {19 18 8 15} {}
---- Result should have been:
{} {1.0 2.0 3.0 4.0} {} {17 16 7 13} {}
---- textDisp-4.17 FAILED

==== textDisp-4.18 UpdateDisplayInfo, horizontal scrolling
==== Contents of test case:

    .t configure -wrap none
    .t delete 1.0 end
    .t insert end "Short line 1\nLine 2 is long enough to scroll horizontally"
    .t insert end "\nLine 3\nLine 4"
    update
    .t xview scroll 100 units
    update
    list $tk_textRelayout $tk_textRedraw [.t bbox 2.25]

==== Result was:
{} {1.0 2.0 3.0 4.0} {11 18 8 15}
---- Result should have been:
{} {1.0 2.0 3.0 4.0} {10 16 7 13}
---- textDisp-4.18 FAILED

==== textDisp-4.19 UpdateDisplayInfo, horizontal scrolling
==== Contents of test case:

    .t configure -wrap none
    .t delete 1.0 end
    .t insert end "Short line 1\nLine 2 is long enough to scroll horizontally"
    .t insert end "\nLine 3\nLine 4"
    update
    .t xview moveto 0
    .t xview scroll -10 units
    update
    list $tk_textRelayout $tk_textRedraw [.t bbox 2.5]

==== Result was:
{} {1.0 2.0 3.0 4.0} {43 18 8 15}
---- Result should have been:
{} {1.0 2.0 3.0 4.0} {38 16 7 13}
---- textDisp-4.19 FAILED

==== textDisp-4.20 UpdateDisplayInfo, horizontal scrolling
==== Contents of test case:

    .t configure -wrap none
    .t delete 1.0 end
    .t insert end "Short line 1\nLine 2 is long enough to scroll horizontally"
    .t insert end "\nLine 3\nLine 4"
    .t xview moveto 0.0
    .t xview scroll 100 units
    update
    .t delete 2.30 2.44
    update
    list $tk_textRelayout $tk_textRedraw [.t bbox 2.25]

==== Result was:
2.0 {1.0 2.0 3.0 4.0} {123 18 8 15}
---- Result should have been:
2.0 {1.0 2.0 3.0 4.0} {108 16 7 13}
---- textDisp-4.20 FAILED

==== textDisp-4.22 UpdateDisplayInfo, no horizontal scrolling except for -wrap n
one
==== Contents of test case:

    .t configure -wrap none
    .t delete 1.0 end
    .t insert end "Short line 1\nLine 2 is long enough to scroll horizontally"
    .t insert end "\nLine 3\nLine 4"
    .t xview scroll 25 units
    update
    .t configure -wrap word
    list [.t bbox 2.0] [.t bbox 2.16]

==== Result was:
{3 18 8 15} {11 33 8 15}
---- Result should have been:
{3 16 7 13} {10 29 7 13}
---- textDisp-4.22 FAILED

==== textDisp-4.23 UpdateDisplayInfo, no horizontal scrolling except for -wrap n
one
==== Contents of test case:

    .t configure -wrap none
    .t delete 1.0 end
    .t insert end "Short line 1\nLine 2 is long enough to scroll horizontally"
    .t insert end "\nLine 3\nLine 4"
    .t xview scroll 25 units
    update
    .t configure -wrap char
    list [.t bbox 2.0] [.t bbox 2.16]

==== Result was:
{3 18 8 15} {131 18 8 15}
---- Result should have been:
{3 16 7 13} {115 16 7 13}
---- textDisp-4.23 FAILED

==== textDisp-5.1 DisplayDLine, handling of spacing
==== Contents of test case:

    .t configure -wrap char
    .t delete 1.0 end
    .t insert 1.0 "abcdefghijkl\nmnopqrstuvwzyz"
    .t tag configure spacing -spacing1 8 -spacing3 2
    .t tag add spacing 1.0 end
    frame .t.f1 -width 10 -height 4 -bg black
    frame .t.f2 -width 10 -height 4 -bg black
    frame .t.f3 -width 10 -height 4 -bg black
    frame .t.f4 -width 10 -height 4 -bg black
    .t window create 1.3 -window .t.f1 -align top
    .t window create 1.7 -window .t.f2 -align center
    .t window create 2.1 -window .t.f3 -align bottom
    .t window create 2.10 -window .t.f4 -align baseline
    update
    list [winfo geometry .t.f1] [winfo geometry .t.f2]  [winfo geometry .t.f3] [winfo geometry .t.f4]

==== Result was:
10x4+27+11 10x4+61+16 10x4+11+47 10x4+85+43
---- Result should have been:
10x4+24+11 10x4+55+15 10x4+10+43 10x4+76+40
---- textDisp-5.1 FAILED

==== textDisp-8.1 TkTextChanged: redisplay whole lines
==== Contents of test case:

    .t configure -wrap word
    .t delete 1.0 end
    .t insert 1.0 "Line 1\nLine 2 is so long that it wraps around, two times"
    foreach i {3 4 5 6 7 8 9 10 11 12 13 14 15} {
        .t insert end "\nLine $i"
    }
    update
    .t delete 2.36 2.38
    update
    list $tk_textRelayout $tk_textRedraw [.t bbox 2.32]

==== Result was:
{2.0 2.18 2.38} {2.0 2.18 2.38} {115 33 8 15}
---- Result should have been:
{2.0 2.18 2.38} {2.0 2.18 2.38} {101 29 7 13}
---- textDisp-8.1 FAILED

==== textDisp-9.2 TkTextRedrawTag
==== Contents of test case:

    .t configure -wrap char
    .t delete 1.0 end
    .t insert 1.0 "Line 1\nLine 2 is long enough to wrap around\nLine 3\nLine 4"
    update
    .t tag add big 1.2 2.4
    update
    list $tk_textRelayout $tk_textRedraw

==== Result was:
{1.0 2.0 2.18} {1.0 2.0 2.18}
---- Result should have been:
{1.0 2.0 2.17} {1.0 2.0 2.17}
---- textDisp-9.2 FAILED

==== textDisp-9.8 TkTextRedrawTag
==== Contents of test case:

    .t configure -wrap char
    .t delete 1.0 end
    .t insert 1.0 "Line 1\nLine 2 is long enough to wrap\nLine 3 is also long enough to wrap\nLine 4"
    .t tag add big 1.0 2.0
    update
    .t tag add big 2.0 2.5
    update
    set tk_textRedraw

==== Result was:
2.0 2.18
---- Result should have been:
2.0 2.17
---- textDisp-9.8 FAILED

==== textDisp-9.9 TkTextRedrawTag
==== Contents of test case:

    .t configure -wrap char
    .t delete 1.0 end
    .t insert 1.0 "Line 1\nLine 2 is long enough to wrap\nLine 3 is also long enough to wrap\nLine 4"
    .t tag add big 1.0 2.0
    update
    .t tag add big 1.5 2.5
    update
    set tk_textRedraw

==== Result was:
2.0 2.18
---- Result should have been:
2.0 2.17
---- textDisp-9.9 FAILED

==== textDisp-13.7 TkTextSeeCmd procedure
==== Contents of test case:

    .t xview moveto 0
    .t yview moveto 0
    .t tag add sel 30.20
    .t tag add sel 30.40
    update
    .t see 30.50
    set x [list [.t bbox 30.50]]
    .t see 30.39
    lappend x [.t bbox 30.39]
    .t see 30.38
    lappend x [.t bbox 30.38]
    .t see 30.20
    lappend x [.t bbox 30.20]

==== Result was:
{83 63 8 15} {3 63 8 15} {3 63 8 15} {83 63 8 15}
---- Result should have been:
{73 55 7 13} {3 55 7 13} {3 55 7 13} {73 55 7 13}
---- textDisp-13.7 FAILED

==== textDisp-13.8 TkTextSeeCmd procedure
==== Contents of test case:

    .t xview moveto 0
    .t yview moveto 0
    .t tag add sel 30.20
    .t tag add sel 30.50
    update
    .t see 30.50
    set x [list [.t bbox 30.50]]
    .t see 30.60
    lappend x [.t bbox 30.60]
    .t see 30.65
    lappend x [.t bbox 30.65]
    .t see 30.90
    lappend x [.t bbox 30.90]

==== Result was:
{83 63 8 15} {155 63 8 15} {155 63 8 15} {83 63 8 15}
---- Result should have been:
{73 55 7 13} {136 55 7 13} {136 55 7 13} {73 55 7 13}
---- textDisp-13.8 FAILED

==== textDisp-13.9 TkTextSeeCmd procedure
==== Contents of test case:

    wm geom . [expr $width-2]x$height
    .t xview moveto 0
    .t yview moveto 0
    .t tag add sel 30.20
    .t tag add sel 30.50
    update
    .t see 30.50
    set x [list [.t bbox 30.50]]
    .t see 30.60
    lappend x [.t bbox 30.60]
    .t see 30.65
    lappend x [.t bbox 30.65]
    .t see 30.90
    lappend x [.t bbox 30.90]

==== Result was:
{91 63 8 15} {155 63 8 15} {155 63 8 15} {91 63 8 15}
---- Result should have been:
{80 55 7 13} {136 55 7 13} {136 55 7 13} {80 55 7 13}
---- textDisp-13.9 FAILED

==== textDisp-16.27 TkTextYviewCmd procedure, "scroll" option, forward pages
==== Contents of test case:

    .t yview 98.0
    update
    .t yview scroll 1 page

==== Result was:
104.0
---- Result should have been:
103.0
---- textDisp-16.27 FAILED

==== textDisp-17.6 TkTextScanCmd procedure
==== Contents of test case:

    .t yview 1.0
    .t xview moveto 0
    .t scan mark 40 60
    .t scan dragto 35 55

==== Result was:
4.6
---- Result should have been:
4.7
---- textDisp-17.6 FAILED

==== textDisp-17.7 TkTextScanCmd procedure
==== Contents of test case:

    .t yview 10.0
    .t xview moveto 0
    .t xview scroll 20 units
    .t scan mark -10 60
    .t scan dragto -5 65


    .t scan dragto 0 70

==== Result was:
7.14 4.8
---- Result should have been:
7.13 3.6
---- textDisp-17.7 FAILED

==== textDisp-17.8 TkTextScanCmd procedure
==== Contents of test case:

    .t yview 1.0
    .t xview moveto 0
    .t scan mark 0 60
    .t scan dragto 30 100
    .t scan dragto 25 95

==== Result was:
4.6
---- Result should have been:
4.7
---- textDisp-17.8 FAILED

==== textDisp-17.9 TkTextScanCmd procedure
==== Contents of test case:

    .t yview end
    .t xview moveto 0
    .t xview scroll 100 units
    .t scan mark 90 60
    .t scan dragto 10 0
    .t scan dragto 15 5

==== Result was:
18.45
---- Result should have been:
18.44
---- textDisp-17.9 FAILED

==== textDisp-17.10 TkTextScanCmd procedure, word wrapping
==== Contents of test case:

    .t yview 10.0
    .t scan mark -10 60
    .t scan dragto -5 65

    .t scan dragto 0 70

==== Result was:
9.31 8.63
---- Result should have been:
9.31 8.47
---- textDisp-17.10 FAILED

==== textDisp-20.1 FindDLine
==== Contents of test case:

    .t yview 48.0
    list [.t dlineinfo 46.0] [.t dlineinfo 47.0] [.t dlineinfo 49.0]  [.t dlineinfo 58.0]

==== Result was:
{} {} {3 18 56 15 11} {}
---- Result should have been:
{} {} {3 16 49 13 10} {}
---- textDisp-20.1 FAILED

==== textDisp-20.2 FindDLine
==== Contents of test case:

    .t yview 100.0
    .t yview -pickplace 53.0
    list [.t dlineinfo 50.0] [.t dlineinfo 50.14] [.t dlineinfo 50.15]

==== Result was:
{} {} {3 3 160 15 11}
---- Result should have been:
{} {} {3 3 140 13 10}
---- textDisp-20.2 FAILED

==== textDisp-20.3 FindDLine
==== Contents of test case:

    .t yview 100.0
    .t yview 49.0
    list [.t dlineinfo 50.0] [.t dlineinfo 50.20] [.t dlineinfo 57.0]

==== Result was:
{3 18 120 15 11} {3 33 160 15 11} {}
---- Result should have been:
{3 16 105 13 10} {3 29 140 13 10} {}
---- textDisp-20.3 FAILED

==== textDisp-20.4 FindDLine
==== Contents of test case:

    .t yview 100.0
    .t yview 42.0
    list [.t dlineinfo 50.0] [.t dlineinfo 50.20] [.t dlineinfo 50.40]

==== Result was:
{3 123 120 15 11} {3 138 160 15 11} {}
---- Result should have been:
{3 107 105 13 10} {3 120 140 13 10} {}
---- textDisp-20.4 FAILED

==== textDisp-20.5 FindDLine
==== Contents of test case:

    .t yview 100.0
    .t yview 48.0
    list [.t dlineinfo 50.0] [.t dlineinfo 50.20] [.t dlineinfo 50.40]

==== Result was:
{3 33 424 15 11} {3 33 424 15 11} {3 33 424 15 11}
---- Result should have been:
{3 29 371 13 10} {3 29 371 13 10} {3 29 371 13 10}
---- textDisp-20.5 FAILED

==== textDisp-21.1 TkTextPixelIndex
==== Contents of test case:

    .t yview 48.0

==== Result was:
48.0 48.0 48.2 48.7 50.19 50.40
---- Result should have been:
48.0 48.0 48.2 48.7 50.40 50.40
---- textDisp-21.1 FAILED

==== textDisp-21.2 TkTextPixelIndex
==== Contents of test case:

    .t yview 195.0

==== Result was:
196.1 197.1 198.1 201.0
---- Result should have been:
197.1 198.1 199.1 201.0
---- textDisp-21.2 FAILED

==== textDisp-21.3 TkTextPixelIndex, horizontal scrolling
==== Contents of test case:

    .t configure -wrap none
    .t delete 1.0 end
    .t insert end "12345\n"
    .t insert end "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"
    .t xview scroll 2 units

==== Result was:
1.2 1.2 2.5
---- Result should have been:
1.2 1.2 2.6
---- textDisp-21.3 FAILED

==== textDisp-22.1 TkTextCharBbox
==== Contents of test case:

    .t config -wrap word
    .t yview 48.0
    list [.t bbox 47.2] [.t bbox 48.0] [.t bbox 50.5] [.t bbox 50.40]  [.t bbox 58.0]

==== Result was:
{} {3 3 8 15} {43 33 8 15} {43 63 8 15} {}
---- Result should have been:
{} {3 3 7 13} {38 29 7 13} {38 55 7 13} {}
---- textDisp-22.1 FAILED

==== textDisp-22.2 TkTextCharBbox
==== Contents of test case:

    .t config -wrap none
    .t yview 48.0
    list [.t bbox 50.5] [.t bbox 50.40] [.t bbox 57.0]

==== Result was:
{43 33 8 15} {} {3 138 8 15}
---- Result should have been:
{38 29 7 13} {} {3 120 7 13}
---- textDisp-22.2 FAILED

==== textDisp-22.3 TkTextCharBbox, cut-off lines
==== Contents of test case:

    .t config -wrap char
    .t yview 10.0
    wm geom . ${width}x[expr $height-1]
    update
    list [.t bbox 19.1] [.t bbox 20.1]

==== Result was:
{11 138 8 15} {11 153 8 3}
---- Result should have been:
{10 120 7 13} {10 133 7 3}
---- textDisp-22.3 FAILED

==== textDisp-22.4 TkTextCharBbox, cut-off lines
==== Contents of test case:

    .t config -wrap char
    .t yview 10.0
    wm geom . ${width}x[expr $height+1]
    update
    list [.t bbox 19.1] [.t bbox 20.1]

==== Result was:
{11 138 8 15} {11 153 8 5}
---- Result should have been:
{10 120 7 13} {10 133 7 5}
---- textDisp-22.4 FAILED

==== textDisp-22.5 TkTextCharBbox, cut-off char
==== Contents of test case:

    .t config -wrap none
    .t yview 10.0
    wm geom . [expr $width-95]x$height
    update
    .t bbox 15.6

==== Result was:
51 78 8 15
---- Result should have been:
45 68 7 13
---- textDisp-22.5 FAILED

==== textDisp-22.6 TkTextCharBbox, line visible but not char
==== Contents of test case:

    .t config -wrap char
    .t yview 10.0
    .t tag add big 20.2 20.5
    wm geom . ${width}x[expr $height+3]
    update
    list [.t bbox 19.1] [.t bbox 20.1] [.t bbox 20.2]

==== Result was:
{11 138 8 15} {} {19 153 14 7}
---- Result should have been:
{10 120 7 13} {} {17 133 14 7}
---- textDisp-22.6 FAILED

==== textDisp-22.7 TkTextCharBbox, different character sizes
==== Contents of test case:

    .t config -wrap char
    .t yview 10.0
    .t tag add big 12.2 12.5
    update
    list [.t bbox 12.1] [.t bbox 12.2]

==== Result was:
{11 44 8 15} {19 33 14 27}
---- Result should have been:
{10 41 7 13} {17 29 14 27}
---- textDisp-22.7 FAILED

==== textDisp-22.8 TkTextCharBbox, horizontal scrolling
==== Contents of test case:

    .t configure -wrap none
    .t delete 1.0 end
    .t insert end "12345\n"
    .t insert end "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"
    .t xview scroll 4 units
    list [.t bbox 1.3] [.t bbox 1.4] [.t bbox 2.3] [.t bbox 2.4]  [.t bbox 2.23] [.t bbox 2.24]

==== Result was:
{} {3 3 8 15} {} {3 18 8 15} {155 18 8 15} {}
---- Result should have been:
{} {3 3 7 13} {} {3 16 7 13} {136 16 7 13} {}
---- textDisp-22.8 FAILED

==== textDisp-22.9 TkTextCharBbox, handling of spacing
==== Contents of test case:

    .t configure -wrap char
    .t delete 1.0 end
    .t insert 1.0 "abcdefghijkl\nmnopqrstuvwzyz"
    .t tag configure spacing -spacing1 8 -spacing3 2
    .t tag add spacing 1.0 end
    frame .t.f1 -width 10 -height 4 -bg black
    frame .t.f2 -width 10 -height 4 -bg black
    frame .t.f3 -width 10 -height 4 -bg black
    frame .t.f4 -width 10 -height 4 -bg black
    .t window create 1.3 -window .t.f1 -align top
    .t window create 1.7 -window .t.f2 -align center
    .t window create 2.1 -window .t.f3 -align bottom
    .t window create 2.10 -window .t.f4 -align baseline
    update
    list [.t bbox .t.f1] [.t bbox .t.f2] [.t bbox .t.f3] [.t bbox .t.f4]  [.t bbox 1.1] [.t bbox 2.9]

==== Result was:
{27 11 10 4} {61 16 10 4} {11 47 10 4} {85 43 10 4} {11 11 8 15} {77 36 8 15}
---- Result should have been:
{24 11 10 4} {55 15 10 4} {10 43 10 4} {76 40 10 4} {10 11 7 13} {69 34 7 13}
---- textDisp-22.9 FAILED

==== textDisp-23.1 TkTextDLineInfo
==== Contents of test case:

    .t config -wrap word
    .t yview 48.0
    list [.t dlineinfo 47.3] [.t dlineinfo 48.0] [.t dlineinfo 50.40]  [.t dlineinfo 56.0]

==== Result was:
{} {3 3 56 15 11} {3 63 144 15 11} {}
---- Result should have been:
{} {3 3 49 13 10} {3 55 126 13 10} {}
---- textDisp-23.1 FAILED

==== textDisp-23.2 TkTextDLineInfo
==== Contents of test case:

    .t config -bd 4 -wrap word
    update
    .t yview 48.0
    .t dlineinfo 50.40

==== Result was:
7 67 144 15 11
---- Result should have been:
7 59 126 13 10
---- textDisp-23.2 FAILED

==== textDisp-23.3 TkTextDLineInfo
==== Contents of test case:

    .t config -wrap none
    update
    .t yview 48.0
    list [.t dlineinfo 50.40] [.t dlineinfo 57.3]

==== Result was:
{3 33 424 15 11} {3 138 56 15 11}
---- Result should have been:
{3 29 371 13 10} {3 120 49 13 10}
---- textDisp-23.3 FAILED

==== textDisp-23.4 TkTextDLineInfo, cut-off lines
==== Contents of test case:

    .t config -wrap char
    .t yview 10.0
    wm geom . ${width}x[expr $height-1]
    update
    list [.t dlineinfo 19.0] [.t dlineinfo 20.0]

==== Result was:
{3 138 56 15 11} {3 153 56 3 11}
---- Result should have been:
{3 120 49 13 10} {3 133 49 3 10}
---- textDisp-23.4 FAILED

==== textDisp-23.5 TkTextDLineInfo, cut-off lines
==== Contents of test case:

    .t config -wrap char
    .t yview 10.0
    wm geom . ${width}x[expr $height+1]
    update
    list [.t dlineinfo 19.0] [.t dlineinfo 20.0]

==== Result was:
{3 138 56 15 11} {3 153 56 5 11}
---- Result should have been:
{3 120 49 13 10} {3 133 49 5 10}
---- textDisp-23.5 FAILED

==== textDisp-23.6 TkTextDLineInfo, horizontal scrolling
==== Contents of test case:

    .t config -wrap none
    .t delete 1.0 end
    .t insert end "First line\n"
    .t insert end "Second line is a very long one that doesn't all fit.\n"
    .t insert end "Third"
    .t xview scroll 6 units
    update
    list [.t dlineinfo 1.0] [.t dlineinfo 2.0] [.t dlineinfo 3.0]

==== Result was:
{-45 3 80 15 11} {-45 18 416 15 11} {-45 33 40 15 11}
---- Result should have been:
{-39 3 70 13 10} {-39 16 364 13 10} {-39 29 35 13 10}
---- textDisp-23.6 FAILED

==== textDisp-23.7 TkTextDLineInfo, centering
==== Contents of test case:

    .t config -wrap word
    .t delete 1.0 end
    .t insert end "First line\n"
    .t insert end "Second line is a very long one that doesn't all fit.\n"
    .t insert end "Third"
    .t tag configure x -justify center
    .t tag configure y -justify right
    .t tag add x 1.0
    .t tag add y 3.0
    list [.t dlineinfo 1.0] [.t dlineinfo 2.0] [.t dlineinfo 3.0]

==== Result was:
{43 3 80 15 11} {3 18 136 15 11} {123 63 40 15 11}
---- Result should have been:
{38 3 70 13 10} {3 16 119 13 10} {108 55 35 13 10}
---- textDisp-23.7 FAILED

==== textDisp-24.1 TkTextCharLayoutProc
==== Contents of test case:

    .t configure -wrap char
    .t delete 1.0 end
    .t insert 1.0 "abcdefghijklmnopqrstuvwxyz"
    list [.t bbox 1.19] [.t bbox 1.20]

==== Result was:
{155 3 8 15} {3 18 8 15}
---- Result should have been:
{136 3 7 13} {3 16 7 13}
---- textDisp-24.1 FAILED

==== textDisp-24.2 TkTextCharLayoutProc
==== Contents of test case:

    .t configure -wrap char
    .t delete 1.0 end
    .t insert 1.0 "abcdefghijklmnopqrstuvwxyz"
    wm geom . [expr $width+1]x$height
    update
    list [.t bbox 1.19] [.t bbox 1.20]

==== Result was:
{155 3 13 15} {3 18 8 15}
---- Result should have been:
{136 3 12 13} {3 16 7 13}
---- textDisp-24.2 FAILED

==== textDisp-24.3 TkTextCharLayoutProc
==== Contents of test case:

    .t configure -wrap char
    .t delete 1.0 end
    .t insert 1.0 "abcdefghijklmnopqrstuvwxyz"
    wm geom . [expr $width-1]x$height
    update
    list [.t bbox 1.19] [.t bbox 1.20]

==== Result was:
{155 3 11 15} {3 18 8 15}
---- Result should have been:
{136 3 10 13} {3 16 7 13}
---- textDisp-24.3 FAILED

==== textDisp-24.4 TkTextCharLayoutProc, newline not visible
==== Contents of test case:

    .t configure -wrap char
    .t delete 1.0 end
    .t insert 1.0 01234567890123456789\n012345678901234567890
    wm geom . {}
    update
    list [.t bbox 1.19] [.t bbox 1.20] [.t bbox 2.20]

==== Result was:
{155 3 8 15} {163 3 0 15} {3 33 8 15}
---- Result should have been:
{136 3 7 13} {143 3 0 13} {3 29 7 13}
---- textDisp-24.4 FAILED

==== textDisp-24.5 TkTextCharLayoutProc, char doesn't fit, newline not visible
==== Contents of test case:

    .t configure -wrap char
    .t delete 1.0 end
    .t insert 1.0 0\n1\n
    wm geom . 110x$height
    update
    list [.t bbox 1.0] [.t bbox 1.1] [.t bbox 2.0]

==== Result was:
{3 3 4 15} {7 3 0 15} {3 18 4 15}
---- Result should have been:
{3 3 4 13} {7 3 0 13} {3 16 4 13}
---- textDisp-24.5 FAILED

==== textDisp-24.6 TkTextCharLayoutProc, line ends with space
==== Contents of test case:

    .t configure -wrap char
    .t delete 1.0 end
    .t insert 1.0 "a b c d e f g h i j k l m n o p"
    wm geom . {}
    update
    list [.t bbox 1.19] [.t bbox 1.20]

==== Result was:
{155 3 8 15} {3 18 8 15}
---- Result should have been:
{136 3 7 13} {3 16 7 13}
---- textDisp-24.6 FAILED

==== textDisp-24.7 TkTextCharLayoutProc, line ends with space
==== Contents of test case:

    .t configure -wrap char
    .t delete 1.0 end
    .t insert 1.0 "a b c d e f g h i j k l m n o p"
    wm geom . [expr $width+1]x$height
    update
    list [.t bbox 1.19] [.t bbox 1.20]

==== Result was:
{155 3 13 15} {3 18 8 15}
---- Result should have been:
{136 3 12 13} {3 16 7 13}
---- textDisp-24.7 FAILED

==== textDisp-24.8 TkTextCharLayoutProc, line ends with space
==== Contents of test case:

    .t configure -wrap char
    .t delete 1.0 end
    .t insert 1.0 "a b c d e f g h i j k l m n o p"
    wm geom . [expr $width-1]x$height
    update
    list [.t bbox 1.19] [.t bbox 1.20]

==== Result was:
{155 3 11 15} {3 18 8 15}
---- Result should have been:
{136 3 10 13} {3 16 7 13}
---- textDisp-24.8 FAILED

==== textDisp-24.9 TkTextCharLayoutProc, line ends with space
==== Contents of test case:

    .t configure -wrap char
    .t delete 1.0 end
    .t insert 1.0 "a b c d e f g h i j k l m n o p"
    wm geom . [expr $width-6]x$height
    update
    list [.t bbox 1.19] [.t bbox 1.20]

==== Result was:
{155 3 6 15} {3 18 8 15}
---- Result should have been:
{136 3 5 13} {3 16 7 13}
---- textDisp-24.9 FAILED

==== textDisp-24.10 TkTextCharLayoutProc, line ends with space
==== Contents of test case:

    .t configure -wrap char
    .t delete 1.0 end
    .t insert 1.0 "a b c d e f g h i j k l m n o p"
    wm geom . [expr $width-7]x$height
    update
    list [.t bbox 1.19] [.t bbox 1.20]

==== Result was:
{155 3 5 15} {3 18 8 15}
---- Result should have been:
{136 3 4 13} {3 16 7 13}
---- textDisp-24.10 FAILED

==== textDisp-24.11 TkTextCharLayoutProc, line ends with space that doesn't quite fit
==== Contents of test case:

    .t configure -wrap char
    .t delete 1.0 end
    .t insert 1.0 "01234567890123456789 \nabcdefg"
    wm geom . [expr $width-2]x$height
    update
    set result {}
    lappend result [.t bbox 1.21] [.t bbox 2.0]
    .t mark set insert 1.21
    lappend result [.t bbox 1.21] [.t bbox 2.0]

==== Result was:
{165 3 0 15} {3 18 8 15} {165 3 0 15} {3 18 8 15}
---- Result should have been:
{145 3 0 13} {3 16 7 13} {145 3 0 13} {3 16 7 13}
---- textDisp-24.11 FAILED

==== textDisp-24.12 TkTextCharLayoutProc, tab causes wrap
==== Contents of test case:

    .t configure -wrap char
    .t delete 1.0 end
    .t insert 1.0 "abcdefghi"
    .t mark set insert 1.4
    .t insert insert \t\t\t
    list [.t bbox {insert -1c}] [.t bbox insert]

==== Result was:
{131 3 34 15} {3 18 8 15}
---- Result should have been:
{115 3 30 13} {3 16 7 13}
---- textDisp-24.12 FAILED

==== textDisp-24.13 TkTextCharLayoutProc, -wrap none
==== Contents of test case:

    .t configure -wrap none
    .t delete 1.0 end
    .t insert 1.0 "abcdefghijklmnopqrstuvwxyz"
    wm geom . {}
    update
    list [.t bbox 1.19] [.t bbox 1.20]

==== Result was:
{155 3 8 15} {}
---- Result should have been:
{136 3 7 13} {}
---- textDisp-24.13 FAILED

==== textDisp-24.14 TkTextCharLayoutProc, -wrap none
==== Contents of test case:

    .t configure -wrap none
    .t delete 1.0 end
    .t insert 1.0 "abcdefghijklmnopqrstuvwxyz"
    wm geom . [expr $width+1]x$height
    update
    list [.t bbox 1.19] [.t bbox 1.20]

==== Result was:
{155 3 8 15} {163 3 5 15}
---- Result should have been:
{136 3 7 13} {143 3 5 13}
---- textDisp-24.14 FAILED

==== textDisp-24.15 TkTextCharLayoutProc, -wrap none
==== Contents of test case:

    .t configure -wrap none
    .t delete 1.0 end
    .t insert 1.0 "abcdefghijklmnopqrstuvwxyz"
    wm geom . [expr $width-1]x$height
    update
    list [.t bbox 1.19] [.t bbox 1.20]

==== Result was:
{155 3 8 15} {163 3 3 15}
---- Result should have been:
{136 3 7 13} {143 3 3 13}
---- textDisp-24.15 FAILED

==== textDisp-24.16 TkTextCharLayoutProc, no chars fit
==== Contents of test case:

    .t configure -wrap char
    .t delete 1.0 end
    .t insert 1.0 "abcdefghijklmnopqrstuvwxyz"
    wm geom . 103x$height
    update
    list [.t bbox 1.0] [.t bbox 1.1] [.t bbox 1.2]

==== Result was:
{3 3 1 15} {3 18 1 15} {3 33 1 15}
---- Result should have been:
{3 3 1 13} {3 16 1 13} {3 29 1 13}
---- textDisp-24.16 FAILED

==== textDisp-24.17 TkTextCharLayoutProc, -wrap word
==== Contents of test case:

    .t configure -wrap word
    .t delete 1.0 end
    .t insert 1.0 "This is a line that wraps around"
    wm geom . {}
    update
    list [.t bbox 1.19] [.t bbox 1.20]

==== Result was:
{155 3 8 15} {3 18 8 15}
---- Result should have been:
{136 3 7 13} {3 16 7 13}
---- textDisp-24.17 FAILED

==== textDisp-24.18 TkTextCharLayoutProc, -wrap word
==== Contents of test case:

    .t configure -wrap word
    .t delete 1.0 end
    .t insert 1.0 "xThis is a line that wraps around"
    wm geom . {}
    update
    list [.t bbox 1.14] [.t bbox 1.15] [.t bbox 1.16]

==== Result was:
{115 3 8 15} {123 3 40 15} {3 18 8 15}
---- Result should have been:
{101 3 7 13} {108 3 35 13} {3 16 7 13}
---- textDisp-24.18 FAILED

==== textDisp-24.19 TkTextCharLayoutProc, -wrap word
==== Contents of test case:

    .t configure -wrap word
    .t delete 1.0 end
    .t insert 1.0 "xxThis is a line that wraps around"
    wm geom . {}
    update
    list [.t bbox 1.14] [.t bbox 1.15] [.t bbox 1.16]

==== Result was:
{115 3 8 15} {123 3 8 15} {131 3 32 15}
---- Result should have been:
{101 3 7 13} {108 3 7 13} {115 3 28 13}
---- textDisp-24.19 FAILED

==== textDisp-24.20 TkTextCharLayoutProc, vertical offset
==== Contents of test case:

    .t configure -wrap none
    .t delete 1.0 end
    .t insert 1.0 "Line 1\nLine 2\nLine 3"
    set result {}
    lappend result [.t bbox 2.1] [.t dlineinfo 2.1]
    .t tag configure up -offset 6
    .t tag add up 2.1
    lappend result [.t bbox 2.1] [.t dlineinfo 2.1]
    .t tag configure  up -offset -2
    lappend result [.t bbox 2.1] [.t dlineinfo 2.1]
    .t tag delete up
    set result

==== Result was:
{11 18 8 15} {3 18 48 15 11} {11 18 8 15} {3 18 48 21 17} {11 20 8 15} {3 18 48 17 11}
---- Result should have been:
{10 16 7 13} {3 16 42 13 10} {10 16 7 13} {3 16 42 19 16} {10 18 7 13} {3 16 42 15 10}
---- textDisp-24.20 FAILED

==== textDisp-24.21 TkTextCharLayoutProc, word breaks
==== Contents of test case:

    .t configure -wrap word
    .t delete 1.0 end
    .t insert 1.0 "Sample text xxxxxxx yyyyy zzzzzzz qqqqq rrrr ssss tt u vvvvv"    frame .t.f -width 30 -height 20 -bg black
    .t window create 1.36 -window .t.f
    .t bbox 1.26

==== Result was:
3 20 8 15
---- Result should have been:
3 19 7 13
---- textDisp-24.21 FAILED

==== textDisp-24.22 TkTextCharLayoutProc, word breaks
==== Contents of test case:

    .t configure -wrap word
    .t delete 1.0 end
    frame .t.f -width 30 -height 20 -bg black
    .t insert 1.0 "Sample text xxxxxxx yyyyyyy"
    .t window create end -window .t.f
    .t insert end "zzzzzzz qqqqq rrrr ssss tt u vvvvv"
    .t bbox 1.28

==== Result was:
33 20 8 15
---- Result should have been:
33 19 7 13
---- textDisp-24.22 FAILED

==== textDisp-24.23 TkTextCharLayoutProc, word breaks
==== Contents of test case:

    .t configure -wrap word
    .t delete 1.0 end
    frame .t.f -width 30 -height 20 -bg black
    .t insert 1.0 "Sample text xxxxxxx yyyyyyy "
    .t insert end "zzzzzzz qqqqq rrrr ssss tt"
    .t window create end -window .t.f
    .t insert end "u vvvvv"
    .t bbox .t.f

==== Result was:
211 18 32 20
---- Result should have been:
3 29 30 20
---- textDisp-24.23 FAILED

==== textDisp-24.24 TkTextCharLayoutProc, justification and tabs
==== Contents of test case:

    .t delete 1.0 end
    .t tag configure x -justify center
    .t insert 1.0 aa\tbb\tcc\tdd\t
    .t tag add x 1.0 end
    list [.t bbox 1.0] [.t bbox 1.10]

==== Result was:
{51 3 8 15} {107 3 8 15}
---- Result should have been:
{45 3 7 13} {94 3 7 13}
---- textDisp-24.24 FAILED

==== textDisp-25.1 CharBboxProc procedure, check tab width
==== Contents of test case:

    .t delete 1.0 end
    .t insert 1.0 abc\td\tfgh
    list [.t bbox 1.3] [.t bbox 1.5] [.t bbox 1.6]

==== Result was:
{24 1 76 15} {108 1 92 15} {200 1 8 15}
---- Result should have been:
{21 1 79 13} {107 1 93 13} {200 1 7 13}
---- textDisp-25.1 FAILED

==== textDisp-26.1 AdjustForTab procedure, no tabs
==== Contents of test case:

    .t delete 1.0 end
    .t insert 1.0 a\tbcdefghij\tc\td
    list [lindex [.t bbox 1.2] 0] [lindex [.t bbox 1.12] 0]  [lindex [.t bbox 1.14] 0]

==== Result was:
64 192 256
---- Result should have been:
56 168 224
---- textDisp-26.1 FAILED

==== textDisp-26.13 AdjustForTab procedure, not enough space
==== Contents of test case:

    .t delete 1.0 end
    .t insert 1.0 "abc\txyz\tqrs\txyz\t0"
    .t tag delete x
    .t tag configure x -tabs {10 30 center 50 right 120}
    .t tag add x 1.0 end
    list [lindex [.t bbox 1.4] 0] [lindex [.t bbox 1.8] 0]  [lindex [.t bbox 1.12] 0] [lindex [.t bbox 1.16] 0]

==== Result was:
32 64 96 128
---- Result should have been:
28 56 84 120
---- textDisp-26.13 FAILED

==== textDisp-27.1 SizeOfTab procedure, old-style tabs
==== Contents of test case:

    .t delete 1.0 end
    .t insert 1.0 a\tbcdefghij\tc\td
    list [.t bbox 1.2] [.t bbox 1.10] [.t bbox 1.12]

==== Result was:
{68 5 8 15} {132 5 8 15} {4 20 8 15}
---- Result should have been:
{60 5 7 13} {116 5 7 13} {4 18 7 13}
---- textDisp-27.1 FAILED

==== textDisp-27.2 SizeOfTab procedure, choosing tabX and alignment
==== Contents of test case:

    .t delete 1.0 end
    .t insert 1.0 a\tbcd
    .t tag delete x
    .t tag configure x -tabs 120
    .t tag add x 1.0 end
    list [.t bbox 1.3] [.t bbox 1.4]

==== Result was:
{132 5 8 15} {140 5 8 15}
---- Result should have been:
{131 5 13 13} {4 18 7 13}
---- textDisp-27.2 FAILED

==== textDisp-27.3 SizeOfTab procedure, choosing tabX and alignment
==== Contents of test case:

    .t delete 1.0 end
    .t insert 1.0 a\t\t\tbcd
    .t tag delete x
    .t tag configure x -tabs 40
    .t tag add x 1.0 end
    list [.t bbox 1.5] [.t bbox 1.6]

==== Result was:
{132 5 8 15} {140 5 8 15}
---- Result should have been:
{131 5 13 13} {4 18 7 13}
---- textDisp-27.3 FAILED

==== textDisp-27.4 SizeOfTab procedure, choosing tabX and alignment
==== Contents of test case:

    .t delete 1.0 end
    .t insert 1.0 a\t\t\tbcd
    .t tag delete x
    .t tag configure x -tabs {20 center 70 left}
    .t tag add x 1.0 end
    list [.t bbox 1.5] [.t bbox 1.6]

==== Result was:
{132 5 8 15} {140 5 8 15}
---- Result should have been:
{131 5 13 13} {4 18 7 13}
---- textDisp-27.4 FAILED

==== textDisp-27.5 SizeOfTab procedure, center alignment
==== Contents of test case:

    .t delete 1.0 end
    .t insert 1.0 a\txyzzyabc
    .t tag delete x
    .t tag configure x -tabs {120 center}
    .t tag add x 1.0 end
    list [.t bbox 1.6] [.t bbox 1.7]

==== Result was:
{124 5 8 15} {132 5 8 15}
---- Result should have been:
{135 5 9 13} {4 18 7 13}
---- textDisp-27.5 FAILED

==== textDisp-27.6 SizeOfTab procedure, center alignment
==== Contents of test case:

    .t delete 1.0 end
    .t insert 1.0 a\txyzzyabc
    .t tag delete x
    .t tag configure x -tabs {150 center}
    .t tag add x 1.0 end
    list [.t bbox 1.6] [.t bbox 1.7]

==== Result was:
{20 20 8 15} {28 20 8 15}
---- Result should have been:
{32 18 7 13} {39 18 7 13}
---- textDisp-27.6 FAILED

==== textDisp-27.7 SizeOfTab procedure, center alignment, wrap -none (potential numerical problems)
==== Contents of test case:

    .t delete 1.0 end
    .t configure -tabs {1c 2c center 3c 4c} -wrap none -width 40
    .t insert 1.0 a\tb\tc\td\te\n012345678934567890a\tbb\tcc\tdd
    update
    .t bbox 2.24

==== Result was:
196 20 8 15
---- Result should have been:
172 18 7 13
---- textDisp-27.7 FAILED

==== textDisp-27.8 SizeOfTab procedure, right alignment
==== Contents of test case:

    .t delete 1.0 end
    .t insert 1.0 a\t\txyzzyabc
    .t tag delete x
    .t tag configure x -tabs {100 left 140 right}
    .t tag add x 1.0 end
    list [.t bbox 1.6] [.t bbox 1.7]

==== Result was:
{136 5 8 15} {144 5 8 15}
---- Result should have been:
{137 5 7 13} {4 18 7 13}
---- textDisp-27.8 FAILED

==== textDisp-27.9 SizeOfTab procedure, left alignment
==== Contents of test case:

    .t delete 1.0 end
    .t insert 1.0 a\txyzzyabc
    .t tag delete x
    .t tag configure x -tabs {120}
    .t tag add x 1.0 end
    list [.t bbox 1.3] [.t bbox 1.4]

==== Result was:
{132 5 8 15} {140 5 8 15}
---- Result should have been:
{131 5 13 13} {4 18 7 13}
---- textDisp-27.9 FAILED

==== textDisp-27.10 SizeOfTab procedure, numeric alignment
==== Contents of test case:

    .t delete 1.0 end
    .t insert 1.0 a\t123.4
    .t tag delete x
    .t tag configure x -tabs {120 numeric}
    .t tag add x 1.0 end
    list [.t bbox 1.3] [.t bbox 1.4]

==== Result was:
{108 5 8 15} {116 5 8 15}
---- Result should have been:
{117 5 27 13} {4 18 7 13}
---- textDisp-27.10 FAILED

==== textDisp-27.11 SizeOfTab procedure, making tabs at least as wide as a space
==== Contents of test case:

    .t delete 1.0 end
    .t insert 1.0 abc\tdefghijklmnopqrst
    .t tag delete x
    .t tag configure x -tabs {120}
    .t tag add x 1.0 end
    list [.t bbox 1.5] [.t bbox 1.6]

==== Result was:
{132 5 8 15} {140 5 8 15}
---- Result should have been:
{131 5 13 13} {4 18 7 13}
---- textDisp-27.11 FAILED

==== textDisp-29.1 miscellaneous: lines wrap but are still too long
==== Contents of test case:

    catch {destroy .t2}
    toplevel .t2
    wm geometry .t2 +0+0
    text .t2.t -width 20 -height 10 -font $fixedFont  -wrap char -xscrollcommand ".t2.s set"
    pack .t2.t -side top
    scrollbar .t2.s -orient horizontal -command ".t2.t xview"
    pack .t2.s -side bottom -fill x
    .t2.t insert end 123
    frame .t2.t.f -width 300 -height 50 -bd 2 -relief raised
    .t2.t window create 1.1 -window .t2.t.f
    update
    list [.t2.t xview] [winfo geom .t2.t.f] [.t2.t bbox 1.3]

==== Result was:
{0 0.533333} 300x50+5+20 {13 70 8 15}
---- Result should have been:
{0 0.466667} 300x50+5+18 {12 68 7 13}
---- textDisp-29.1 FAILED

==== textDisp-29.2 miscellaneous: lines wrap but are still too long
==== Contents of test case:

    catch {destroy .t2}
    toplevel .t2
    wm geometry .t2 +0+0
    text .t2.t -width 20 -height 10 -font $fixedFont  -wrap char -xscrollcommand ".t2.s set"
    pack .t2.t -side top
    scrollbar .t2.s -orient horizontal -command ".t2.t xview"
    pack .t2.s -side bottom -fill x
    .t2.t insert end 123
    frame .t2.t.f -width 300 -height 50 -bd 2 -relief raised
    .t2.t window create 1.1 -window .t2.t.f
    .t2.t xview scroll 1 unit
    update
    list [.t2.t xview] [winfo geom .t2.t.f] [.t2.t bbox 1.3]

==== Result was:
{0.0266667 0.56} 300x50+-3+20 {5 70 8 15}
---- Result should have been:
{0.0233333 0.49} 300x50+-2+18 {5 68 7 13}
---- textDisp-29.2 FAILED

==== textDisp-29.3 miscellaneous: lines wrap but are still too long
==== Contents of test case:

    catch {destroy .t2}
    toplevel .t2
    wm geometry .t2 +0+0
    text .t2.t -width 20 -height 10 -font $fixedFont  -wrap char -xscrollcommand ".t2.s set"
    pack .t2.t -side top
    scrollbar .t2.s -orient horizontal -command ".t2.t xview"
    pack .t2.s -side bottom -fill x
    .t2.t insert end 123
    frame .t2.t.f -width 300 -height 50 -bd 2 -relief raised
    .t2.t window create 1.1 -window .t2.t.f
    update
    .t2.t xview scroll 200 units
    update
    list [.t2.t xview] [winfo geom .t2.t.f] [.t2.t bbox 1.3]

==== Result was:
{0.48 1} 300x50+-139+20 {}
---- Result should have been:
{0.536667 1} 300x50+-156+18 {}
---- textDisp-29.3 FAILED



Sun, 06 Jun 1999 03:00:00 GMT  
 
 [ 1 post ] 

 Relevant Pages 

1. Help! Tk 4.2 test partially failing after installation

2. Some of Tcl 7.6 self tests fail on Ultrix

3. GNAT on Ultrix 4.2 Anyone?

4. DECFortran (Ultrix 4.2) question

5. Compiling LAPACK on DEC with Ultrix 4.2 and Fortran 3.0

6. problems running fortran-based MCNP code on Decstation running Ultrix 4.2

7. Dec Fortran 3.04 problems in Ultrix 4.2

8. tcl 7.0b3 on DEC stations ultrix 4.2

9. Trouble with expect 4.7 on ULTRIX 4.2

10. Tk 4.1/Tk 4.2 configure bug for Unix

11. Beta test of ISE Eiffel 4.2

12. Partial lifesaver update for Python 1.4/Tk 4.2

 

 
Powered by phpBB® Forum Software