]> gitweb.factorcode.org Git - factor.git/blob - basis/ui/gadgets/paragraphs/paragraphs-tests.factor
c8494216b40a271c4de452c780eca03f4d7c8338
[factor.git] / basis / ui / gadgets / paragraphs / paragraphs-tests.factor
1 IN: ui.gadgets.paragraphs.tests
2 USING: ui.gadgets.paragraphs ui.gadgets.paragraphs.private
3 ui.gadgets ui.gadgets.debug accessors tools.test namespaces
4 sequences kernel ;
5
6 TUPLE: fake-break < gadget ;
7
8 : <fake-break> ( -- gadget ) fake-break new { 5 5 } >>dim ;
9
10 INSTANCE: fake-break word-break
11
12 100 <paragraph>
13 <gadget> { 40 30 } >>dim dup "a" set add-gadget
14 <fake-break> add-gadget
15 <gadget> { 40 15 } >>dim dup "b" set add-gadget
16 <fake-break> add-gadget
17 <gadget> { 50 20 } >>dim dup "c" set add-gadget
18 "p" set
19
20 [ { 4 1 } ] [ "p" get wrap-paragraph [ words>> length ] map ] unit-test
21
22 [ { 85 50 } ] [ "p" get pref-dim ] unit-test
23
24 [ ] [ "p" get prefer ] unit-test
25
26 [ ] [ "p" get layout ] unit-test
27
28 [ { 0 0 } ] [ "a" get loc>> ] unit-test
29
30 [ { 45 7 } ] [ "b" get loc>> ] unit-test
31
32 [ { 0 30 } ] [ "c" get loc>> ] unit-test
33
34 100 <paragraph>
35 15 15 { 40 30 } <baseline-gadget> dup "a" set add-gadget
36 <fake-break> add-gadget
37 10 10 { 40 30 } <baseline-gadget> dup "b" set add-gadget
38 <fake-break> add-gadget
39 20 20 { 40 30 } <baseline-gadget> dup "c" set add-gadget
40 "p" set
41
42 [ { 85 65 } ] [ "p" get pref-dim ] unit-test
43
44 [ ] [ "p" get prefer ] unit-test
45
46 [ ] [ "p" get layout ] unit-test
47
48 [ { 0 0 } ] [ "a" get loc>> ] unit-test
49
50 [ { 45 5 } ] [ "b" get loc>> ] unit-test
51
52 [ { 0 35 } ] [ "c" get loc>> ] unit-test