"{ Package: 'stx:libjava/experiments' }"
TestCase subclass:#StInJavaTests
instanceVariableNames:''
classVariableNames:''
poolDictionaries:''
category:'Languages-Java-Tests'
!
!StInJavaTests class methodsFor:'accessing'!
resources
^ Array with: StInJavaResource
"Created: / 24-01-2011 / 17:21:47 / kursjan <kursjan@fit.cvut.cz>"
! !
!StInJavaTests methodsFor:'testing'!
_testIsKindOf
self assertTrue: (StCounter new isKindOf: (Java classForName: 'Counter')).
"Created: / 09-01-2011 / 13:21:17 / Jan Kurs <kurs.jan@post.cz>"
!
_testJavaCounter
self shouldnt: [(Java classForName:'CounterManipulator') main:#() ] raise: Exception.
"Created: / 09-01-2011 / 12:57:31 / Jan Kurs <kurs.jan@post.cz>"
"Modified: / 09-01-2011 / 19:55:38 / Jan Kurs <kurs.jan@post.cz>"
"Modified: / 24-01-2011 / 17:22:34 / kursjan <kursjan@fit.cvut.cz>"
!
_testJavaCounter2
| counter |
counter := (Java classForName:'Counter') new.
self shouldnt: [(Java classForName:'CounterManipulator') new doSomething: counter ] raise: Exception.
"Created: / 09-01-2011 / 12:57:55 / Jan Kurs <kurs.jan@post.cz>"
"Modified: / 09-01-2011 / 14:02:59 / Jan Kurs <kurs.jan@post.cz>"
!
_testJavaCounter3
| counter res |
counter := (Java classForName:'Counter') new.
res := (Java classForName:'CounterManipulator') new incCounter: counter.
self assert: res = 1.
res := (Java classForName:'CounterManipulator') new incCounter: counter.
self assert: res = 2.
"Created: / 09-01-2011 / 13:05:40 / Jan Kurs <kurs.jan@post.cz>"
!
_testJavaCounterWithStObject
| counter |
counter := StCounter new.
(Java classForName:'CounterManipulator') new doSomething: counter.
"Created: / 09-01-2011 / 12:58:09 / Jan Kurs <kurs.jan@post.cz>"
!
_testJavaCounterWithStObject2
| counter res |
counter := StCounter new.
res := (Java classForName:'CounterManipulator') new incCounter: counter.
self assert: res = 2
"Created: / 09-01-2011 / 13:50:09 / Jan Kurs <kurs.jan@post.cz>"
!
_testStCounter
| counter |
counter := StCounter new.
self assert: counter count = 0.
counter incCount.
self assert: counter count = 2.
"Created: / 09-01-2011 / 13:10:28 / Jan Kurs <kurs.jan@post.cz>"
!
_testStObjectJavaMethod
| counter |
counter := StCounter new.
"#sayHello does not exists in StCounter - we have to call JavaMethod"
self shouldnt: [(Java classForName:'CounterManipulator') new counterHello: counter ] raise: Exception.
"Created: / 09-01-2011 / 13:54:44 / Jan Kurs <kurs.jan@post.cz>"
!
_testStObjectJavaMethod2
| counter |
counter := StCounter new.
"#sayHello does not exists in StCounter - we have to call JavaMethod"
self shouldnt: [(Java classForName:'CounterManipulator') new counterGreetings: counter ] raise: Exception.
"Created: / 09-01-2011 / 14:11:20 / Jan Kurs <kurs.jan@post.cz>"
!
_testStObjectJavaMethod3
| counter |
counter := StCounter new.
self assert: ((Java classForName:'CounterManipulator') new counterGreetings: counter) = 'Hi, this is Counter FROM JAVA'
"Created: / 09-01-2011 / 14:16:41 / Jan Kurs <kurs.jan@post.cz>"
!
_testStObjectJavaMethod4
| counter |
counter := StCounter new.
self shouldnt: [(Java classForName:'CounterManipulator') new
statelessIncCounterBy: counter with: 2
] raise: Exception.
"Created: / 09-01-2011 / 14:50:14 / Jan Kurs <kurs.jan@post.cz>"
!
_testStObjectJavaMethod5
| counter res |
counter := StCounter new.
res:= (Java classForName:'CounterManipulator') new
statelessIncCounterBy: counter with: 2.
self assert: res = 4.
"Created: / 09-01-2011 / 14:50:09 / Jan Kurs <kurs.jan@post.cz>"
!
_testStObjectSupersend
| counter |
counter := StIdentityCounter new.
self shouldnt: [counter id] raise: Exception.
"Created: / 09-01-2011 / 15:45:09 / Jan Kurs <kurs.jan@post.cz>"
!
_testStObjectSupersend2
| counter |
counter := StIdentityCounter new.
self assert: (Java as_ST_String: counter id) = 'id#0'.
counter incCount.
self assert: (Java as_ST_String: counter id) = 'id#2'.
"Created: / 09-01-2011 / 15:47:39 / Jan Kurs <kurs.jan@post.cz>"
!
_testStString
| string res |
string := StString fromString: 'hello'.
res := (Java classForName:'StringManipulator') new repeatIt: string.
self assert: res == string.
"Modified: / 09-01-2011 / 21:58:53 / Jan Kurs <kurs.jan@post.cz>"
"Modified: / 17-01-2011 / 12:16:39 / kursjan <kursjan@fit.cvut.cz>"
!
_testStString2
| string res |
string := StString fromString: 'hello'.
res := (Java classForName:'StringManipulator') new hashOfHello.
self assert: string hashCode = res.
"Modified: / 09-01-2011 / 21:58:53 / Jan Kurs <kurs.jan@post.cz>"
"Created: / 17-01-2011 / 12:15:54 / kursjan <kursjan@fit.cvut.cz>"
"Modified: / 17-01-2011 / 16:43:56 / kursjan <kursjan@fit.cvut.cz>"
!
_testStString3
| string res |
string := StString fromString: 'hello'.
res := (Java classForName:'StringManipulator') new className: string.
self assert: 'java.lang.String' = res.
"Modified: / 09-01-2011 / 21:58:53 / Jan Kurs <kurs.jan@post.cz>"
"Created: / 17-01-2011 / 17:28:55 / kursjan <kursjan@fit.cvut.cz>"
"Modified: / 17-01-2011 / 19:13:57 / kursjan <kursjan@fit.cvut.cz>"
! !
!StInJavaTests class methodsFor:'documentation'!
version_SVN
^ '$Id$'
! !