JavaLookupTests.st
author Jan Vrany <jan.vrany@fit.cvut.cz>
Tue, 29 Jan 2013 15:15:51 +0000
branchdevelopment
changeset 2006 c0598cab5f15
parent 1898 51de40865b71
child 2069 75d40b7b986f
permissions -rw-r--r--
Commit fix: fixed content of Smalltalk extensions containers. Somehow, bare Java class were written to extension containers for Java classes.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
1755
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
     1
"
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
     2
 Copyright (c) 2010-2011 Jan Vrany, Jan Kurs & Marcel Hlopko,
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
     3
                         SWING Research Group, Czech Technical University 
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
     4
                         in Prague
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
     5
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
     6
 Permission is hereby granted, free of charge, to any person
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
     7
 obtaining a copy of this software and associated documentation
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
     8
 files (the 'Software'), to deal in the Software without
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
     9
 restriction, including without limitation the rights to use,
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
    10
 copy, modify, merge, publish, distribute, sublicense, and/or sell
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
    11
 copies of the Software, and to permit persons to whom the
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
    12
 Software is furnished to do so, subject to the following
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
    13
 conditions:
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
    14
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
    15
 The above copyright notice and this permission notice shall be
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
    16
 included in all copies or substantial portions of the Software.
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
    17
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
    18
 THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
    19
 EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
    20
 OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
    21
 NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
    22
 HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
    23
 WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
    24
 FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
    25
 OTHER DEALINGS IN THE SOFTWARE.
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
    26
"
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
    27
"{ Package: 'stx:libjava' }"
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
    28
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
    29
TestCase subclass:#JavaLookupTests
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
    30
	instanceVariableNames:''
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
    31
	classVariableNames:''
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
    32
	poolDictionaries:''
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
    33
	category:'Languages-Java-Tests-Interop'
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
    34
!
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
    35
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
    36
!JavaLookupTests class methodsFor:'documentation'!
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
    37
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
    38
copyright
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
    39
"
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
    40
 Copyright (c) 2010-2011 Jan Vrany, Jan Kurs & Marcel Hlopko,
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
    41
                         SWING Research Group, Czech Technical University 
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
    42
                         in Prague
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
    43
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
    44
 Permission is hereby granted, free of charge, to any person
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
    45
 obtaining a copy of this software and associated documentation
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
    46
 files (the 'Software'), to deal in the Software without
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
    47
 restriction, including without limitation the rights to use,
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
    48
 copy, modify, merge, publish, distribute, sublicense, and/or sell
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
    49
 copies of the Software, and to permit persons to whom the
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
    50
 Software is furnished to do so, subject to the following
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
    51
 conditions:
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
    52
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
    53
 The above copyright notice and this permission notice shall be
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
    54
 included in all copies or substantial portions of the Software.
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
    55
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
    56
 THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
    57
 EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
    58
 OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
    59
 NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
    60
 HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
    61
 WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
    62
 FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
    63
 OTHER DEALINGS IN THE SOFTWARE.
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
    64
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
    65
"
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
    66
!
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
    67
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
    68
documentation
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
    69
"
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
    70
    This testcase tests the java-smalltalk interop lookup
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
    71
    (JavaLookup)
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
    72
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
    73
    [author:]
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
    74
        Jan Vrany <jan.vrany@fit.cvut.cz>
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
    75
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
    76
    [instance variables:]
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
    77
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
    78
    [class variables:]
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
    79
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
    80
    [see also:]
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
    81
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
    82
"
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
    83
! !
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
    84
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
    85
!JavaLookupTests class methodsFor:'resources'!
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
    86
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
    87
resources
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
    88
    ^ Array with: JavaLookupTestsResource.
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
    89
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
    90
    "Created: / 11-04-2011 / 19:38:11 / kursjan <kursjan@fit.cvut.cz>"
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
    91
    "Modified: / 29-08-2011 / 23:35:06 / Jan Kurs <kursjan@fit.cvut.cz>"
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
    92
    "Modified: / 29-10-2012 / 07:47:38 / Jan Vrany <jan.vrany@fit.cvut.cz>"
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
    93
! !
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
    94
1856
f2e8307a717f Fix for JavaLookupTests>>testTypeOverloading
vranyj1
parents: 1845
diff changeset
    95
!JavaLookupTests methodsFor:'running'!
f2e8307a717f Fix for JavaLookupTests>>testTypeOverloading
vranyj1
parents: 1845
diff changeset
    96
f2e8307a717f Fix for JavaLookupTests>>testTypeOverloading
vranyj1
parents: 1845
diff changeset
    97
setUp
f2e8307a717f Fix for JavaLookupTests>>testTypeOverloading
vranyj1
parents: 1845
diff changeset
    98
    | md |
f2e8307a717f Fix for JavaLookupTests>>testTypeOverloading
vranyj1
parents: 1845
diff changeset
    99
f2e8307a717f Fix for JavaLookupTests>>testTypeOverloading
vranyj1
parents: 1845
diff changeset
   100
    md := self javaTestClass methodDictionary.
f2e8307a717f Fix for JavaLookupTests>>testTypeOverloading
vranyj1
parents: 1845
diff changeset
   101
    md copy keysAndValuesDo:[:sel :m|
1893
167f2898b9ad bugfix - interop - narrowed return type synthetic methods
Marcel Hlopko <marcel.hlopko@fit.cvut.cz>
parents: 1886
diff changeset
   102
        m isProxyMethod ifTrue:[md removeKey: sel]
1856
f2e8307a717f Fix for JavaLookupTests>>testTypeOverloading
vranyj1
parents: 1845
diff changeset
   103
    ].
f2e8307a717f Fix for JavaLookupTests>>testTypeOverloading
vranyj1
parents: 1845
diff changeset
   104
f2e8307a717f Fix for JavaLookupTests>>testTypeOverloading
vranyj1
parents: 1845
diff changeset
   105
    "Created: / 03-12-2012 / 17:50:29 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1893
167f2898b9ad bugfix - interop - narrowed return type synthetic methods
Marcel Hlopko <marcel.hlopko@fit.cvut.cz>
parents: 1886
diff changeset
   106
    "Modified: / 16-12-2012 / 13:35:52 / Marcel Hlopko <marcel.hlopko@fit.cvut.cz>"
1856
f2e8307a717f Fix for JavaLookupTests>>testTypeOverloading
vranyj1
parents: 1845
diff changeset
   107
! !
f2e8307a717f Fix for JavaLookupTests>>testTypeOverloading
vranyj1
parents: 1845
diff changeset
   108
1755
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   109
!JavaLookupTests methodsFor:'support'!
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   110
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   111
javaTestClass
1845
7aacc508afc7 updating JavaLookupTests
hlopkmar
parents: 1818
diff changeset
   112
    ^ JAVA cz cvut fit swing methodLookup Object.
1755
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   113
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   114
    "Created: / 05-09-2011 / 20:13:48 / Jan Kurs <kursjan@fit.cvut.cz>"
1845
7aacc508afc7 updating JavaLookupTests
hlopkmar
parents: 1818
diff changeset
   115
    "Modified: / 30-11-2012 / 22:16:24 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
1755
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   116
!
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   117
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   118
personManipulatorClass
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   119
    "Person Manipulator can interact with Person class defined in Java"
1845
7aacc508afc7 updating JavaLookupTests
hlopkmar
parents: 1818
diff changeset
   120
    
7aacc508afc7 updating JavaLookupTests
hlopkmar
parents: 1818
diff changeset
   121
    ^ JAVA cz cvut fit swing methodLookup PersonManipulator.
1755
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   122
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   123
    "Created: / 06-09-2011 / 21:48:16 / Jan Kurs <kursjan@fit.cvut.cz>"
1845
7aacc508afc7 updating JavaLookupTests
hlopkmar
parents: 1818
diff changeset
   124
    "Modified: / 30-11-2012 / 22:16:19 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
1755
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   125
!
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   126
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   127
setManipulatorClass
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   128
    "Person Manipulator can interact with Person class defined in Java"
1845
7aacc508afc7 updating JavaLookupTests
hlopkmar
parents: 1818
diff changeset
   129
    
7aacc508afc7 updating JavaLookupTests
hlopkmar
parents: 1818
diff changeset
   130
    ^ JAVA cz cvut fit swing methodLookup SetManipulator.
1755
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   131
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   132
    "Created: / 25-09-2011 / 16:41:02 / Jan Kurs <kursjan@fit.cvut.cz>"
1845
7aacc508afc7 updating JavaLookupTests
hlopkmar
parents: 1818
diff changeset
   133
    "Modified: / 30-11-2012 / 22:13:34 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
1755
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   134
! !
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   135
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   136
!JavaLookupTests methodsFor:'tests - java lookup'!
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   137
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   138
test3
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   139
    "I am not sure with this test :)"
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   140
    self shouldnt: [(Java classForName: 'cz.cvut.fit.swing.methodLookup.Object') new isNumber] raise: Exception.
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   141
    self assert: (Java classForName: 'cz.cvut.fit.swing.methodLookup.Object') new isNumber = false.
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   142
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   143
    "Created: / 11-04-2011 / 19:43:37 / kursjan <kursjan@fit.cvut.cz>"
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   144
!
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   145
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   146
testBasic
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   147
    self 
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   148
        shouldnt:[ (Java classForName:'java.lang.Object') new hash ]
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   149
        raise:Exception.
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   150
    self 
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   151
        shouldnt:[ (Java classForName:'java.lang.Object') new toString ]
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   152
        raise:Exception.
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   153
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   154
    "Created: / 11-04-2011 / 19:22:07 / kursjan <kursjan@fit.cvut.cz>"
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   155
!
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   156
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   157
testBoolean
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   158
    self assert: (self javaTestClass new getTrue) = true.
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   159
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   160
    "Created: / 11-04-2011 / 19:32:51 / kursjan <kursjan@fit.cvut.cz>"
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   161
    "Created: / 05-09-2011 / 21:06:13 / Jan Kurs <kursjan@fit.cvut.cz>"
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   162
!
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   163
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   164
testBoolean2
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   165
    self assert: (self javaTestClass new getFalse) = false.
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   166
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   167
    "Created: / 11-04-2011 / 19:32:51 / kursjan <kursjan@fit.cvut.cz>"
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   168
    "Created: / 05-09-2011 / 21:06:25 / Jan Kurs <kursjan@fit.cvut.cz>"
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   169
!
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   170
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   171
testBoolean3
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   172
    self assert: (self javaTestClass new getTruePrim) = true.
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   173
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   174
    "Created: / 11-04-2011 / 19:32:51 / kursjan <kursjan@fit.cvut.cz>"
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   175
    "Created: / 05-09-2011 / 21:07:29 / Jan Kurs <kursjan@fit.cvut.cz>"
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   176
!
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   177
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   178
testBoolean4
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   179
    self assert: (self javaTestClass new getFalsePrim) = false.
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   180
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   181
    "Created: / 11-04-2011 / 19:32:51 / kursjan <kursjan@fit.cvut.cz>"
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   182
    "Created: / 05-09-2011 / 21:07:38 / Jan Kurs <kursjan@fit.cvut.cz>"
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   183
!
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   184
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   185
testBoolean5
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   186
    self assert: (self javaTestClass new getFalseWithConversion) = false.
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   187
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   188
    "Created: / 11-04-2011 / 19:32:51 / kursjan <kursjan@fit.cvut.cz>"
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   189
    "Created: / 25-09-2011 / 19:23:36 / Jan Kurs <kursjan@fit.cvut.cz>"
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   190
!
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   191
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   192
testBoolean6
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   193
    self assert: (self javaTestClass new getFalseFromBooleanValueOf) = false.
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   194
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   195
    "Created: / 11-04-2011 / 19:32:51 / kursjan <kursjan@fit.cvut.cz>"
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   196
    "Created: / 25-09-2011 / 19:40:22 / Jan Kurs <kursjan@fit.cvut.cz>"
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   197
!
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   198
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   199
testClass
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   200
    self assert: ((Java classForName: 'java.lang.Object') isKindOf: JavaClass).
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   201
    self assert: ((Java classForName: 'java.lang.Object') new isKindOf: JavaObject)
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   202
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   203
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   204
    "Created: / 11-04-2011 / 19:22:07 / kursjan <kursjan@fit.cvut.cz>"
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   205
!
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   206
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   207
testDoesNotUnderstand
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   208
    self 
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   209
        should:[ (Java classForName:'java.lang.Object') new bafickyBaf ]
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   210
        raise:MessageNotUnderstood.
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   211
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   212
    "Created: / 11-04-2011 / 19:22:07 / kursjan <kursjan@fit.cvut.cz>"
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   213
    "Created: / 30-08-2011 / 22:06:16 / Jan Kurs <kursjan@fit.cvut.cz>"
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   214
!
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   215
1893
167f2898b9ad bugfix - interop - narrowed return type synthetic methods
Marcel Hlopko <marcel.hlopko@fit.cvut.cz>
parents: 1886
diff changeset
   216
testInterfaceMethodsWithNarrowerReturnType
167f2898b9ad bugfix - interop - narrowed return type synthetic methods
Marcel Hlopko <marcel.hlopko@fit.cvut.cz>
parents: 1886
diff changeset
   217
    "when a class A implements an interface I, and overridden method has narrower 
167f2898b9ad bugfix - interop - narrowed return type synthetic methods
Marcel Hlopko <marcel.hlopko@fit.cvut.cz>
parents: 1886
diff changeset
   218
    return type (e.g. method in I should return java.lang.Object, but overridden 
167f2898b9ad bugfix - interop - narrowed return type synthetic methods
Marcel Hlopko <marcel.hlopko@fit.cvut.cz>
parents: 1886
diff changeset
   219
    method in A declares return type of java.lang.String), java compiler generates
167f2898b9ad bugfix - interop - narrowed return type synthetic methods
Marcel Hlopko <marcel.hlopko@fit.cvut.cz>
parents: 1886
diff changeset
   220
    synthetic method with the same name and return type declared in I, which just
167f2898b9ad bugfix - interop - narrowed return type synthetic methods
Marcel Hlopko <marcel.hlopko@fit.cvut.cz>
parents: 1886
diff changeset
   221
    delegates to overridden method. This situation should not be considered
167f2898b9ad bugfix - interop - narrowed return type synthetic methods
Marcel Hlopko <marcel.hlopko@fit.cvut.cz>
parents: 1886
diff changeset
   222
    as error case, instead, one of the methods should be returned."
167f2898b9ad bugfix - interop - narrowed return type synthetic methods
Marcel Hlopko <marcel.hlopko@fit.cvut.cz>
parents: 1886
diff changeset
   223
167f2898b9ad bugfix - interop - narrowed return type synthetic methods
Marcel Hlopko <marcel.hlopko@fit.cvut.cz>
parents: 1886
diff changeset
   224
self assert: (self javaTestClass new getMethodReturningObject) = 'working'.
167f2898b9ad bugfix - interop - narrowed return type synthetic methods
Marcel Hlopko <marcel.hlopko@fit.cvut.cz>
parents: 1886
diff changeset
   225
167f2898b9ad bugfix - interop - narrowed return type synthetic methods
Marcel Hlopko <marcel.hlopko@fit.cvut.cz>
parents: 1886
diff changeset
   226
    "Created: / 16-12-2012 / 12:56:01 / Marcel Hlopko <marcel.hlopko@fit.cvut.cz>"
167f2898b9ad bugfix - interop - narrowed return type synthetic methods
Marcel Hlopko <marcel.hlopko@fit.cvut.cz>
parents: 1886
diff changeset
   227
!
167f2898b9ad bugfix - interop - narrowed return type synthetic methods
Marcel Hlopko <marcel.hlopko@fit.cvut.cz>
parents: 1886
diff changeset
   228
1755
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   229
testMultipleParameters
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   230
    "test multiple parameters"
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   231
    
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   232
    self 
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   233
        assert: (self javaTestClass new foo) = 0
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   234
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   235
    "Created: / 11-04-2011 / 19:48:54 / kursjan <kursjan@fit.cvut.cz>"
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   236
    "Modified: / 05-09-2011 / 20:18:03 / Jan Kurs <kursjan@fit.cvut.cz>"
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   237
!
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   238
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   239
testMultipleParameters1
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   240
    "test multiple parameters"
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   241
    
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   242
    self 
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   243
        assert: (self javaTestClass new foo: 1) = 1
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   244
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   245
    "Created: / 11-04-2011 / 19:48:54 / kursjan <kursjan@fit.cvut.cz>"
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   246
    "Created: / 05-09-2011 / 20:18:14 / Jan Kurs <kursjan@fit.cvut.cz>"
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   247
!
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   248
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   249
testMultipleParameters2
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   250
    "test multiple parameters"
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   251
    
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   252
    self 
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   253
        assert: (self javaTestClass new foo: 1 and: 2) = 2
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   254
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   255
    "Created: / 11-04-2011 / 19:48:54 / kursjan <kursjan@fit.cvut.cz>"
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   256
    "Created: / 05-09-2011 / 20:18:30 / Jan Kurs <kursjan@fit.cvut.cz>"
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   257
!
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   258
1886
746919e0fc34 bugfix in smalltalk2java lookup with nil arguments
Marcel Hlopko <marcel.hlopko@fit.cvut.cz>
parents: 1856
diff changeset
   259
testPassingNilAsParameter
1898
51de40865b71 Bugfix: JavaLookupTests>>testPassingNilAsParameter2.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1893
diff changeset
   260
    "
51de40865b71 Bugfix: JavaLookupTests>>testPassingNilAsParameter2.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1893
diff changeset
   261
    Scenario: from smalltalk, pass a nil to an overloaded method with object-type argument.
51de40865b71 Bugfix: JavaLookupTests>>testPassingNilAsParameter2.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1893
diff changeset
   262
51de40865b71 Bugfix: JavaLookupTests>>testPassingNilAsParameter2.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1893
diff changeset
   263
    Question: What to do? Both matches, so Ambibuous message looks good,
51de40865b71 Bugfix: JavaLookupTests>>testPassingNilAsParameter2.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1893
diff changeset
   264
    but then it behave differently if you do
51de40865b71 Bugfix: JavaLookupTests>>testPassingNilAsParameter2.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1893
diff changeset
   265
        foo overloadedMethod: 'XXX'
51de40865b71 Bugfix: JavaLookupTests>>testPassingNilAsParameter2.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1893
diff changeset
   266
        foo overloadedMethod: nil
51de40865b71 Bugfix: JavaLookupTests>>testPassingNilAsParameter2.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1893
diff changeset
   267
    than if you do
51de40865b71 Bugfix: JavaLookupTests>>testPassingNilAsParameter2.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1893
diff changeset
   268
        foo overloadedMethod: nil
51de40865b71 Bugfix: JavaLookupTests>>testPassingNilAsParameter2.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1893
diff changeset
   269
        foo overloadedMethod: 'XXX'.
51de40865b71 Bugfix: JavaLookupTests>>testPassingNilAsParameter2.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1893
diff changeset
   270
    On the other hand, which method do choose? Random one? Would lead into
51de40865b71 Bugfix: JavaLookupTests>>testPassingNilAsParameter2.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1893
diff changeset
   271
    hard-to-debug situations.
51de40865b71 Bugfix: JavaLookupTests>>testPassingNilAsParameter2.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1893
diff changeset
   272
51de40865b71 Bugfix: JavaLookupTests>>testPassingNilAsParameter2.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1893
diff changeset
   273
    No good solution so far..."
51de40865b71 Bugfix: JavaLookupTests>>testPassingNilAsParameter2.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1893
diff changeset
   274
    <skip>
51de40865b71 Bugfix: JavaLookupTests>>testPassingNilAsParameter2.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1893
diff changeset
   275
51de40865b71 Bugfix: JavaLookupTests>>testPassingNilAsParameter2.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1893
diff changeset
   276
    self assert: false message:'Solution wanted'
51de40865b71 Bugfix: JavaLookupTests>>testPassingNilAsParameter2.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1893
diff changeset
   277
51de40865b71 Bugfix: JavaLookupTests>>testPassingNilAsParameter2.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1893
diff changeset
   278
"/    self 
51de40865b71 Bugfix: JavaLookupTests>>testPassingNilAsParameter2.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1893
diff changeset
   279
"/        should:[r := self javaTestClass new overloadedMethod: nil]
51de40865b71 Bugfix: JavaLookupTests>>testPassingNilAsParameter2.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1893
diff changeset
   280
"/        raise: AmbiguousMessage
1886
746919e0fc34 bugfix in smalltalk2java lookup with nil arguments
Marcel Hlopko <marcel.hlopko@fit.cvut.cz>
parents: 1856
diff changeset
   281
746919e0fc34 bugfix in smalltalk2java lookup with nil arguments
Marcel Hlopko <marcel.hlopko@fit.cvut.cz>
parents: 1856
diff changeset
   282
    "Created: / 16-12-2012 / 11:35:14 / Marcel Hlopko <marcel.hlopko@fit.cvut.cz>"
1898
51de40865b71 Bugfix: JavaLookupTests>>testPassingNilAsParameter2.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1893
diff changeset
   283
    "Modified: / 16-12-2012 / 17:21:59 / Jan Vrany <jan.vrany@fit.cvut.cz>"
51de40865b71 Bugfix: JavaLookupTests>>testPassingNilAsParameter2.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1893
diff changeset
   284
!
51de40865b71 Bugfix: JavaLookupTests>>testPassingNilAsParameter2.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1893
diff changeset
   285
51de40865b71 Bugfix: JavaLookupTests>>testPassingNilAsParameter2.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1893
diff changeset
   286
testPassingNilAsParameter2
51de40865b71 Bugfix: JavaLookupTests>>testPassingNilAsParameter2.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1893
diff changeset
   287
    "nil should match any formal argument object type (so should not match primitives)"
51de40865b71 Bugfix: JavaLookupTests>>testPassingNilAsParameter2.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1893
diff changeset
   288
51de40865b71 Bugfix: JavaLookupTests>>testPassingNilAsParameter2.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1893
diff changeset
   289
    self assert: (self javaTestClass new overloadedMethodInt: nil) = 2.
51de40865b71 Bugfix: JavaLookupTests>>testPassingNilAsParameter2.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1893
diff changeset
   290
51de40865b71 Bugfix: JavaLookupTests>>testPassingNilAsParameter2.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1893
diff changeset
   291
    "Created: / 16-12-2012 / 16:21:47 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1886
746919e0fc34 bugfix in smalltalk2java lookup with nil arguments
Marcel Hlopko <marcel.hlopko@fit.cvut.cz>
parents: 1856
diff changeset
   292
!
746919e0fc34 bugfix in smalltalk2java lookup with nil arguments
Marcel Hlopko <marcel.hlopko@fit.cvut.cz>
parents: 1856
diff changeset
   293
1755
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   294
testSayHello
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   295
    self assert: (self javaTestClass new sayHello = 'hello').
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   296
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   297
    "Created: / 11-04-2011 / 19:32:51 / kursjan <kursjan@fit.cvut.cz>"
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   298
    "Modified: / 05-09-2011 / 21:05:40 / Jan Kurs <kursjan@fit.cvut.cz>"
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   299
!
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   300
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   301
testSayHelloStatic
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   302
    self assert: self javaTestClass staticSayHello = 'static hello'.
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   303
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   304
    "Created: / 11-04-2011 / 19:32:51 / kursjan <kursjan@fit.cvut.cz>"
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   305
    "Created: / 05-09-2011 / 20:26:44 / Jan Kurs <kursjan@fit.cvut.cz>"
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   306
!
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   307
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   308
testTypeOverloading
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   309
    "test type overloading"
1856
f2e8307a717f Fix for JavaLookupTests>>testTypeOverloading
vranyj1
parents: 1845
diff changeset
   310
f2e8307a717f Fix for JavaLookupTests>>testTypeOverloading
vranyj1
parents: 1845
diff changeset
   311
    self assert:(self javaTestClass new overloadedMethod: 1) = 4.
f2e8307a717f Fix for JavaLookupTests>>testTypeOverloading
vranyj1
parents: 1845
diff changeset
   312
    self assert:(self javaTestClass new overloadedMethod: 'Hi') = 3.
f2e8307a717f Fix for JavaLookupTests>>testTypeOverloading
vranyj1
parents: 1845
diff changeset
   313
    self assert:(self javaTestClass new overloadedMethod: 'Hi') = 3.
f2e8307a717f Fix for JavaLookupTests>>testTypeOverloading
vranyj1
parents: 1845
diff changeset
   314
    self assert:(self javaTestClass new overloadedMethod: 1) = 4.
1755
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   315
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   316
    "Created: / 11-04-2011 / 20:02:54 / kursjan <kursjan@fit.cvut.cz>"
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   317
    "Modified: / 05-09-2011 / 21:37:53 / Jan Kurs <kursjan@fit.cvut.cz>"
1856
f2e8307a717f Fix for JavaLookupTests>>testTypeOverloading
vranyj1
parents: 1845
diff changeset
   318
    "Modified (format): / 03-12-2012 / 17:45:23 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1755
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   319
! !
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   320
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   321
!JavaLookupTests methodsFor:'tests - obsolete'!
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   322
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   323
_testSetManipulator_add
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   324
    "test interaction of smalltalk Set and java.util.Set"
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   325
    | aSet anObject |
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   326
    self breakPoint: #jk info: 'using SetSample, because it contains DNU hook - this is workaround'.
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   327
    aSet := SetSample new.
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   328
    anObject := Object new.
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   329
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   330
    self setManipulatorClass new addElement: aSet and: anObject.
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   331
    self assert: aSet size = 1.
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   332
    self assert:(self setManipulatorClass new getSize: aSet) = 1.
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   333
    self assert:(aSet contains: [:e | e = anObject ]).
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   334
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   335
    "Created: / 29-10-2012 / 07:17:27 / Jan Vrany <jan.vrany@fit.cvut.cz>"
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   336
!
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   337
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   338
_testSetManipulator_contains
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   339
    "test interaction of smalltalk Set and java.util.Set"
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   340
    | aSet anObject |
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   341
    self breakPoint: #jk info: 'using SetSample, because it contains DNU hook - this is workaround'.
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   342
    aSet := SetSample new.
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   343
    anObject := Object new.
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   344
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   345
    self assert: (self setManipulatorClass new contains: aSet and: anObject) = false.
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   346
    aSet add: anObject.
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   347
    self assert: (self setManipulatorClass new contains: aSet and: anObject) = true.
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   348
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   349
    "Created: / 29-10-2012 / 07:18:04 / Jan Vrany <jan.vrany@fit.cvut.cz>"
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   350
!
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   351
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   352
_testSetManipulator_getSize
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   353
    "test interaction of smalltalk Set and java.util.Set"
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   354
    | aSet |
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   355
    self breakPoint: #jk info: 'using SetSample, because it contains DNU hook - this is workaround'.
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   356
    aSet := SetSample new.
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   357
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   358
    self  assert:(self setManipulatorClass new getSize: aSet) = 0.
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   359
    aSet add: Object new.
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   360
    self  assert:(self setManipulatorClass new getSize: aSet) = 1.
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   361
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   362
    "Created: / 29-10-2012 / 07:17:46 / Jan Vrany <jan.vrany@fit.cvut.cz>"
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   363
!
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   364
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   365
_testSetManipulator_isEmpty
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   366
    "test interaction of smalltalk Set and java.util.Set"
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   367
    | aSet |
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   368
    self breakPoint: #jk info: 'using SetSample, because it contains DNU hook - this is workaround'.
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   369
    aSet := SetSample new.
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   370
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   371
    self  assert: (self setManipulatorClass new isEmpty:aSet).
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   372
    aSet add: Object new.
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   373
    self  assert: (self setManipulatorClass new isEmpty:aSet) not.
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   374
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   375
    "Created: / 29-10-2012 / 07:17:41 / Jan Vrany <jan.vrany@fit.cvut.cz>"
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   376
!
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   377
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   378
_testSetManipulator_remove
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   379
    "test interaction of smalltalk Set and java.util.Set"
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   380
    | aSet anObject |
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   381
    self breakPoint: #jk info: 'using SetSample, because it contains DNU hook - this is workaround'.
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   382
    aSet := SetSample new.
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   383
    anObject := Object new.
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   384
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   385
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   386
    aSet add: anObject.
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   387
    self setManipulatorClass new remove: aSet and: anObject.
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   388
    self assert: aSet size = 0.
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   389
    self assert:(self setManipulatorClass new getSize: aSet) = 0.
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   390
    self assert:(aSet contains: [:e | e = anObject ]) not.
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   391
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   392
    "Created: / 29-10-2012 / 07:17:37 / Jan Vrany <jan.vrany@fit.cvut.cz>"
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   393
! !
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   394
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   395
!JavaLookupTests methodsFor:'tests - smalltalk lookup'!
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   396
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   397
testPersonManipulator_getAge
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   398
    "test interaction of Smalltallk objects with Java code"
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   399
    | person |
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   400
    person := PersonSample new.
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   401
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   402
    person name: 'Anne'.
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   403
    person age: 18.
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   404
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   405
    self 
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   406
        assert:(self personManipulatorClass new getPersonAge: person) = 18.
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   407
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   408
    "Created: / 11-04-2011 / 20:02:54 / kursjan <kursjan@fit.cvut.cz>"
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   409
    "Created: / 25-09-2011 / 17:27:45 / Jan Kurs <kursjan@fit.cvut.cz>"
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   410
!
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   411
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   412
testPersonManipulator_getName
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   413
    "test interaction of Smalltallk objects with Java code"
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   414
    | person |
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   415
    person := PersonSample new.
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   416
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   417
    person name: 'Anne'.
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   418
    person age: 18.
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   419
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   420
    self 
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   421
        assert:(self personManipulatorClass new getPersonName: person) = 'Anne'.
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   422
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   423
    "Created: / 11-04-2011 / 20:02:54 / kursjan <kursjan@fit.cvut.cz>"
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   424
    "Created: / 25-09-2011 / 17:27:34 / Jan Kurs <kursjan@fit.cvut.cz>"
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   425
! !
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   426
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   427
!JavaLookupTests class methodsFor:'documentation'!
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   428
1886
746919e0fc34 bugfix in smalltalk2java lookup with nil arguments
Marcel Hlopko <marcel.hlopko@fit.cvut.cz>
parents: 1856
diff changeset
   429
version_HG
746919e0fc34 bugfix in smalltalk2java lookup with nil arguments
Marcel Hlopko <marcel.hlopko@fit.cvut.cz>
parents: 1856
diff changeset
   430
746919e0fc34 bugfix in smalltalk2java lookup with nil arguments
Marcel Hlopko <marcel.hlopko@fit.cvut.cz>
parents: 1856
diff changeset
   431
    ^ '$Changeset: <not expanded> $'
746919e0fc34 bugfix in smalltalk2java lookup with nil arguments
Marcel Hlopko <marcel.hlopko@fit.cvut.cz>
parents: 1856
diff changeset
   432
!
746919e0fc34 bugfix in smalltalk2java lookup with nil arguments
Marcel Hlopko <marcel.hlopko@fit.cvut.cz>
parents: 1856
diff changeset
   433
1755
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   434
version_SVN
1886
746919e0fc34 bugfix in smalltalk2java lookup with nil arguments
Marcel Hlopko <marcel.hlopko@fit.cvut.cz>
parents: 1856
diff changeset
   435
    ^ '§Id§'
1755
dac7ae2c49a6 - stx_libjava
vranyj1
parents:
diff changeset
   436
! !