factor/basis/ui/gadgets/editors/editors-tests.factor

69 lines
2.5 KiB
Factor

USING: accessors ui.gadgets.editors ui.gadgets.editors.private
tools.test kernel io io.streams.plain definitions namespaces
ui.gadgets ui.gadgets.grids prettyprint documents ui.gestures
ui.gadgets.debug models documents.elements ui.gadgets.scrollers
ui.gadgets.line-support sequences ;
IN: ui.gadgets.editors.tests
{ "foo bar" } [
<editor> "editor" set
"editor" get [
"foo bar" "editor" get set-editor-string
"editor" get one-line-elt select-elt
"editor" get gadget-selection
] with-grafted-gadget
] unit-test
{ "baz quux" } [
<editor> "editor" set
"editor" get [
"foo bar\nbaz quux" "editor" get set-editor-string
"editor" get one-line-elt select-elt
"editor" get gadget-selection
] with-grafted-gadget
] unit-test
{ } [
<editor> "editor" set
"editor" get [
"foo bar\nbaz quux" "editor" get set-editor-string
4 hand-click# set
"editor" get position-caret
] with-grafted-gadget
] unit-test
{ "bar" } [
<editor> "editor" set
"editor" get [
"bar\nbaz quux" "editor" get set-editor-string
{ 0 3 } "editor" get caret>> set-model
"editor" get select-word
"editor" get gadget-selection
] with-grafted-gadget
] unit-test
"hello" <model> <model-field> "field" set
"field" get [
[ "hello" ] [ "field" get field-model>> value>> ] unit-test
] with-grafted-gadget
{ "Hello world." } [ "Hello \n world." join-lines ] unit-test
{ " Hello world. " } [ " Hello \n world. " join-lines ] unit-test
{ " Hello world. Goodbye." } [ " Hello \n world. \n Goodbye." join-lines ] unit-test
{ } [ <editor> com-join-lines ] unit-test
{ } [ <editor> "A" over set-editor-string com-join-lines ] unit-test
{ "A B" } [ <editor> "A\nB" over set-editor-string [ com-join-lines ] [ editor-string ] bi ] unit-test
{ "A B\nC\nD" } [ <editor> "A\nB\nC\nD" over set-editor-string { 0 0 } over set-caret dup mark>caret [ com-join-lines ] [ editor-string ] bi ] unit-test
{ "A\nB C\nD" } [ <editor> "A\nB\nC\nD" over set-editor-string { 1 0 } over set-caret dup mark>caret [ com-join-lines ] [ editor-string ] bi ] unit-test
{ "A\nB\nC D" } [ <editor> "A\nB\nC\nD" over set-editor-string { 2 0 } over set-caret dup mark>caret [ com-join-lines ] [ editor-string ] bi ] unit-test
{ 2 } [ <editor> 20 >>min-rows 20 >>min-cols pref-viewport-dim length ] unit-test
{ 20 } [
<editor> 20 >>min-rows 20 >>min-cols
dup pref-viewport-dim >>dim
visible-lines
] unit-test