tests/EditTextViewTests.st
author Jan Vrany <jan.vrany@fit.cvut.cz>
Fri, 17 Mar 2017 09:13:53 +0000
branchjv
changeset 6153 ef289d40b266
parent 5298 558eadf6190a
child 6187 df5e0e50fe4e
permissions -rw-r--r--
Issue #124, case 0: Fixed long standing bug with inconsistent cursor position after select-word If there's a selection, cursor position (`cursorLine` / `cursorCol` instvars) are required to be same as either selection start or selection end. #selectWordAtLine:col: did not update cursor position accordingly, leading to assertion failure. This bug has been there for a loong time. My bad, I was too lazy to fix it, until today... https://swing.fit.cvut.cz/projects/stx-jv/ticket/124
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
5298
558eadf6190a First shot on EditTextViewTests
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     1
"{ Package: 'stx:libwidg/tests' }"
558eadf6190a First shot on EditTextViewTests
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     2
558eadf6190a First shot on EditTextViewTests
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     3
"{ NameSpace: Smalltalk }"
558eadf6190a First shot on EditTextViewTests
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     4
558eadf6190a First shot on EditTextViewTests
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     5
TestCase subclass:#EditTextViewTests
558eadf6190a First shot on EditTextViewTests
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     6
	instanceVariableNames:'textView textViewInteractor'
558eadf6190a First shot on EditTextViewTests
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     7
	classVariableNames:''
558eadf6190a First shot on EditTextViewTests
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     8
	poolDictionaries:''
558eadf6190a First shot on EditTextViewTests
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     9
	category:'Views-Text-Tests'
558eadf6190a First shot on EditTextViewTests
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    10
!
558eadf6190a First shot on EditTextViewTests
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    11
558eadf6190a First shot on EditTextViewTests
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    12
!EditTextViewTests methodsFor:'running'!
558eadf6190a First shot on EditTextViewTests
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    13
558eadf6190a First shot on EditTextViewTests
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    14
setUp
558eadf6190a First shot on EditTextViewTests
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    15
    | topView |
558eadf6190a First shot on EditTextViewTests
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    16
6153
ef289d40b266 Issue #124, case 0: Fixed long standing bug with inconsistent cursor position after select-word
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 5298
diff changeset
    17
    Smalltalk loadPackage: 'stx:goodies/sunit/ext/ui'.
5298
558eadf6190a First shot on EditTextViewTests
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    18
558eadf6190a First shot on EditTextViewTests
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    19
    topView := StandardSystemView new.
558eadf6190a First shot on EditTextViewTests
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    20
    topView extent: 320 @ 200.
558eadf6190a First shot on EditTextViewTests
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    21
    topView label: self printString.
558eadf6190a First shot on EditTextViewTests
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    22
    textView := EditTextView origin: 0.0@0.0 extent: 1.0@1.0 in: topView.
558eadf6190a First shot on EditTextViewTests
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    23
    textViewInteractor := textView interactor.
558eadf6190a First shot on EditTextViewTests
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    24
558eadf6190a First shot on EditTextViewTests
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    25
558eadf6190a First shot on EditTextViewTests
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    26
    topView open.
558eadf6190a First shot on EditTextViewTests
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    27
    topView waitUntilVisible.
558eadf6190a First shot on EditTextViewTests
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    28
558eadf6190a First shot on EditTextViewTests
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    29
    "Created: / 23-07-2014 / 07:15:05 / Jan Vrany <jan.vrany@fit.cvut.cz>"
558eadf6190a First shot on EditTextViewTests
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    30
    "Modified: / 24-02-2015 / 08:22:37 / Jan Vrany <jan.vrany@fit.cvut.cz>"
558eadf6190a First shot on EditTextViewTests
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    31
!
558eadf6190a First shot on EditTextViewTests
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    32
558eadf6190a First shot on EditTextViewTests
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    33
tearDown
558eadf6190a First shot on EditTextViewTests
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    34
    textView topView destroy.
558eadf6190a First shot on EditTextViewTests
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    35
558eadf6190a First shot on EditTextViewTests
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    36
    "Created: / 23-07-2014 / 07:17:13 / Jan Vrany <jan.vrany@fit.cvut.cz>"
558eadf6190a First shot on EditTextViewTests
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    37
    "Modified: / 24-02-2015 / 08:17:35 / Jan Vrany <jan.vrany@fit.cvut.cz>"
558eadf6190a First shot on EditTextViewTests
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    38
! !
558eadf6190a First shot on EditTextViewTests
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    39
558eadf6190a First shot on EditTextViewTests
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    40
!EditTextViewTests methodsFor:'tests'!
558eadf6190a First shot on EditTextViewTests
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    41
558eadf6190a First shot on EditTextViewTests
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    42
test_01
558eadf6190a First shot on EditTextViewTests
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    43
    textView contents: 'Hello, here is Smalltalk X'.
558eadf6190a First shot on EditTextViewTests
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    44
    textView setCursorCol: 14.
558eadf6190a First shot on EditTextViewTests
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    45
558eadf6190a First shot on EditTextViewTests
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    46
    textViewInteractor type: #SelectWord.
558eadf6190a First shot on EditTextViewTests
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    47
    self assert: textView selectionAsString = 'is'.
558eadf6190a First shot on EditTextViewTests
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    48
558eadf6190a First shot on EditTextViewTests
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    49
    textViewInteractor type: #CtrlShiftCursorRight.
558eadf6190a First shot on EditTextViewTests
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    50
    textViewInteractor type: #CtrlShiftCursorRight.
558eadf6190a First shot on EditTextViewTests
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    51
6153
ef289d40b266 Issue #124, case 0: Fixed long standing bug with inconsistent cursor position after select-word
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 5298
diff changeset
    52
    self assert: textView selectionAsString = 'is Smalltalk '.
ef289d40b266 Issue #124, case 0: Fixed long standing bug with inconsistent cursor position after select-word
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 5298
diff changeset
    53
 
5298
558eadf6190a First shot on EditTextViewTests
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    54
    "Created: / 24-02-2015 / 08:21:56 / Jan Vrany <jan.vrany@fit.cvut.cz>"
558eadf6190a First shot on EditTextViewTests
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    55
! !
558eadf6190a First shot on EditTextViewTests
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    56