tests/Tools__NewSystemBrowserTests.st
author Jan Vrany <jan.vrany@fit.cvut.cz>
Mon, 16 Oct 2017 10:49:29 +0100
branchjv
changeset 17730 9ae4a3d621e0
child 18226 346376844040
permissions -rw-r--r--
Issue #108: Added some tests for issue #108 See https://swing.fit.cvut.cz/projects/stx-jv/ticket/108
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
17730
9ae4a3d621e0 Issue #108: Added some tests for issue #108
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     1
"{ Package: 'stx:libtool/tests' }"
9ae4a3d621e0 Issue #108: Added some tests for issue #108
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     2
9ae4a3d621e0 Issue #108: Added some tests for issue #108
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     3
"{ NameSpace: Tools }"
9ae4a3d621e0 Issue #108: Added some tests for issue #108
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     4
9ae4a3d621e0 Issue #108: Added some tests for issue #108
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     5
TestCase subclass:#NewSystemBrowserTests
9ae4a3d621e0 Issue #108: Added some tests for issue #108
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     6
	instanceVariableNames:'browser browserInteractor'
9ae4a3d621e0 Issue #108: Added some tests for issue #108
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     7
	classVariableNames:''
9ae4a3d621e0 Issue #108: Added some tests for issue #108
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     8
	poolDictionaries:''
9ae4a3d621e0 Issue #108: Added some tests for issue #108
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     9
	category:'Interface-Browsers-New-Tests'
9ae4a3d621e0 Issue #108: Added some tests for issue #108
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    10
!
9ae4a3d621e0 Issue #108: Added some tests for issue #108
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    11
9ae4a3d621e0 Issue #108: Added some tests for issue #108
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    12
!NewSystemBrowserTests methodsFor:'mocks'!
9ae4a3d621e0 Issue #108: Added some tests for issue #108
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    13
9ae4a3d621e0 Issue #108: Added some tests for issue #108
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    14
foo
9ae4a3d621e0 Issue #108: Added some tests for issue #108
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    15
    ^ 1
9ae4a3d621e0 Issue #108: Added some tests for issue #108
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    16
9ae4a3d621e0 Issue #108: Added some tests for issue #108
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    17
    "Created: / 07-08-2017 / 16:07:36 / Jan Vrany <jan.vrany@fit.cvut.cz>"
9ae4a3d621e0 Issue #108: Added some tests for issue #108
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    18
! !
9ae4a3d621e0 Issue #108: Added some tests for issue #108
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    19
9ae4a3d621e0 Issue #108: Added some tests for issue #108
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    20
!NewSystemBrowserTests methodsFor:'running'!
9ae4a3d621e0 Issue #108: Added some tests for issue #108
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    21
9ae4a3d621e0 Issue #108: Added some tests for issue #108
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    22
setUp
9ae4a3d621e0 Issue #108: Added some tests for issue #108
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    23
    Screen current isNil ifTrue:[
9ae4a3d621e0 Issue #108: Added some tests for issue #108
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    24
    	Smalltalk openDisplay.
9ae4a3d621e0 Issue #108: Added some tests for issue #108
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    25
    ].
9ae4a3d621e0 Issue #108: Added some tests for issue #108
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    26
    self skipIf:Screen current isNil description:'No display connection'.
9ae4a3d621e0 Issue #108: Added some tests for issue #108
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    27
    Smalltalk loadPackage:'stx:goodies/sunit/ext/ui'.
9ae4a3d621e0 Issue #108: Added some tests for issue #108
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    28
    super setUp.
9ae4a3d621e0 Issue #108: Added some tests for issue #108
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    29
9ae4a3d621e0 Issue #108: Added some tests for issue #108
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    30
    browser := Tools::NewSystemBrowser new.
9ae4a3d621e0 Issue #108: Added some tests for issue #108
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    31
    browser open.
9ae4a3d621e0 Issue #108: Added some tests for issue #108
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    32
    browserInteractor := browser interactor.
9ae4a3d621e0 Issue #108: Added some tests for issue #108
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    33
    MessageTracer untraceMethod: (self class >> #foo)
9ae4a3d621e0 Issue #108: Added some tests for issue #108
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    34
9ae4a3d621e0 Issue #108: Added some tests for issue #108
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    35
    "Add your own code here..."
9ae4a3d621e0 Issue #108: Added some tests for issue #108
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    36
9ae4a3d621e0 Issue #108: Added some tests for issue #108
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    37
    "Modified: / 15-10-2017 / 21:54:46 / Jan Vrany <jan.vrany@fit.cvut.cz>"
9ae4a3d621e0 Issue #108: Added some tests for issue #108
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    38
!
9ae4a3d621e0 Issue #108: Added some tests for issue #108
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    39
9ae4a3d621e0 Issue #108: Added some tests for issue #108
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    40
tearDown
9ae4a3d621e0 Issue #108: Added some tests for issue #108
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    41
    browser closeDownViews.
9ae4a3d621e0 Issue #108: Added some tests for issue #108
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    42
    browser := browserInteractor := nil.
9ae4a3d621e0 Issue #108: Added some tests for issue #108
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    43
    MessageTracer untraceMethod: (self class >> #foo)
9ae4a3d621e0 Issue #108: Added some tests for issue #108
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    44
9ae4a3d621e0 Issue #108: Added some tests for issue #108
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    45
9ae4a3d621e0 Issue #108: Added some tests for issue #108
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    46
    "Add your own code here..."
9ae4a3d621e0 Issue #108: Added some tests for issue #108
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    47
9ae4a3d621e0 Issue #108: Added some tests for issue #108
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    48
    "Created: / 07-08-2017 / 16:25:43 / Jan Vrany <jan.vrany@fit.cvut.cz>"
9ae4a3d621e0 Issue #108: Added some tests for issue #108
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    49
! !
9ae4a3d621e0 Issue #108: Added some tests for issue #108
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    50
9ae4a3d621e0 Issue #108: Added some tests for issue #108
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    51
!NewSystemBrowserTests methodsFor:'tests'!
9ae4a3d621e0 Issue #108: Added some tests for issue #108
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    52
9ae4a3d621e0 Issue #108: Added some tests for issue #108
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    53
test_issue_108_a
9ae4a3d621e0 Issue #108: Added some tests for issue #108
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    54
9ae4a3d621e0 Issue #108: Added some tests for issue #108
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    55
    self assert: (self class >> #foo) mclass == self class.
9ae4a3d621e0 Issue #108: Added some tests for issue #108
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    56
    self assert: (self class >> #foo) isWrapped not.
9ae4a3d621e0 Issue #108: Added some tests for issue #108
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    57
9ae4a3d621e0 Issue #108: Added some tests for issue #108
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    58
    browserInteractor do:[ browser switchToClass: self class selector: #foo ].
9ae4a3d621e0 Issue #108: Added some tests for issue #108
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    59
    self assert: browser theSingleSelectedMethod == (self class >> #foo).
9ae4a3d621e0 Issue #108: Added some tests for issue #108
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    60
    "
9ae4a3d621e0 Issue #108: Added some tests for issue #108
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    61
    browser selectedMethods onChangeEvaluate: [ self halt ]
9ae4a3d621e0 Issue #108: Added some tests for issue #108
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    62
    "
9ae4a3d621e0 Issue #108: Added some tests for issue #108
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    63
    browserInteractor do:[ browser  debugMenuTrace ].
9ae4a3d621e0 Issue #108: Added some tests for issue #108
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    64
    self assert: (self class >> #foo) == (browser theSingleSelectedMethod).
9ae4a3d621e0 Issue #108: Added some tests for issue #108
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    65
    self assert: (self class >> #foo) mclass == self class.
9ae4a3d621e0 Issue #108: Added some tests for issue #108
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    66
    self assert: (self class >> #foo) isWrapped.
9ae4a3d621e0 Issue #108: Added some tests for issue #108
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    67
    self assert: (self class >> #foo) originalMethod isWrapped not.
9ae4a3d621e0 Issue #108: Added some tests for issue #108
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    68
9ae4a3d621e0 Issue #108: Added some tests for issue #108
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    69
    browserInteractor do:[ browser  debugMenuTraceSender ].
9ae4a3d621e0 Issue #108: Added some tests for issue #108
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    70
    self assert: (self class >> #foo) == (browser theSingleSelectedMethod).
9ae4a3d621e0 Issue #108: Added some tests for issue #108
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    71
    self assert: (self class >> #foo) mclass == self class.
9ae4a3d621e0 Issue #108: Added some tests for issue #108
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    72
    self assert: (self class >> #foo) isWrapped.
9ae4a3d621e0 Issue #108: Added some tests for issue #108
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    73
    self assert: (self class >> #foo) originalMethod isWrapped not.
9ae4a3d621e0 Issue #108: Added some tests for issue #108
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    74
9ae4a3d621e0 Issue #108: Added some tests for issue #108
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    75
    browserInteractor do:[ browser  debugMenuRemoveBreakOrTrace ].
9ae4a3d621e0 Issue #108: Added some tests for issue #108
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    76
    self assert: (self class >> #foo) == (browser theSingleSelectedMethod).
9ae4a3d621e0 Issue #108: Added some tests for issue #108
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    77
    self assert: (self class >> #foo) mclass == self class.
9ae4a3d621e0 Issue #108: Added some tests for issue #108
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    78
    self assert: (self class >> #foo) isWrapped not.
9ae4a3d621e0 Issue #108: Added some tests for issue #108
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    79
9ae4a3d621e0 Issue #108: Added some tests for issue #108
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    80
    "Created: / 07-08-2017 / 16:07:19 / Jan Vrany <jan.vrany@fit.cvut.cz>"
9ae4a3d621e0 Issue #108: Added some tests for issue #108
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    81
    "Modified: / 15-10-2017 / 23:25:15 / Jan Vrany <jan.vrany@fit.cvut.cz>"
9ae4a3d621e0 Issue #108: Added some tests for issue #108
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    82
!
9ae4a3d621e0 Issue #108: Added some tests for issue #108
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    83
9ae4a3d621e0 Issue #108: Added some tests for issue #108
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    84
test_issue_108_b
9ae4a3d621e0 Issue #108: Added some tests for issue #108
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    85
9ae4a3d621e0 Issue #108: Added some tests for issue #108
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    86
    self assert: (self class >> #foo) mclass == self class.
9ae4a3d621e0 Issue #108: Added some tests for issue #108
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    87
    self assert: (self class >> #foo) isWrapped not.
9ae4a3d621e0 Issue #108: Added some tests for issue #108
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    88
9ae4a3d621e0 Issue #108: Added some tests for issue #108
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    89
    browserInteractor do:[ browser switchToClass: self class selector: #foo ].
9ae4a3d621e0 Issue #108: Added some tests for issue #108
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    90
    self assert: browser theSingleSelectedMethod == (self class >> #foo).
9ae4a3d621e0 Issue #108: Added some tests for issue #108
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    91
    "
9ae4a3d621e0 Issue #108: Added some tests for issue #108
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    92
    browser selectedMethods onChangeEvaluate: [ self halt ]
9ae4a3d621e0 Issue #108: Added some tests for issue #108
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    93
    (browser builder findComponentAt:#MethodList) application selectedMethodNameIndices onChangeEvaluate: [ self halt ].
9ae4a3d621e0 Issue #108: Added some tests for issue #108
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    94
    "
9ae4a3d621e0 Issue #108: Added some tests for issue #108
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    95
    browserInteractor do:[ browser  debugMenuBreakPoint ].
9ae4a3d621e0 Issue #108: Added some tests for issue #108
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    96
    self assert: (self class >> #foo) == (browser theSingleSelectedMethod).
9ae4a3d621e0 Issue #108: Added some tests for issue #108
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    97
    self assert: (self class >> #foo) mclass == self class.
9ae4a3d621e0 Issue #108: Added some tests for issue #108
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    98
    self assert: (self class >> #foo) isWrapped.
9ae4a3d621e0 Issue #108: Added some tests for issue #108
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    99
    self assert: (self class >> #foo) originalMethod isWrapped not.
9ae4a3d621e0 Issue #108: Added some tests for issue #108
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   100
9ae4a3d621e0 Issue #108: Added some tests for issue #108
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   101
    browserInteractor do:[ browser  debugMenuRemoveBreakOrTrace ].
9ae4a3d621e0 Issue #108: Added some tests for issue #108
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   102
    self assert: (self class >> #foo) == (browser theSingleSelectedMethod).
9ae4a3d621e0 Issue #108: Added some tests for issue #108
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   103
    self assert: (self class >> #foo) mclass == self class.
9ae4a3d621e0 Issue #108: Added some tests for issue #108
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   104
    self assert: (self class >> #foo) isWrapped not.
9ae4a3d621e0 Issue #108: Added some tests for issue #108
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   105
9ae4a3d621e0 Issue #108: Added some tests for issue #108
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   106
    "Created: / 15-10-2017 / 22:30:53 / Jan Vrany <jan.vrany@fit.cvut.cz>"
9ae4a3d621e0 Issue #108: Added some tests for issue #108
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   107
! !
9ae4a3d621e0 Issue #108: Added some tests for issue #108
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   108