src/JavaJUnitTests.st
branchjk_new_structure
changeset 752 ff7bc6428c9c
child 756 dd9543675518
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/JavaJUnitTests.st	Fri Apr 08 12:02:36 2011 +0000
@@ -0,0 +1,108 @@
+"{ Package: 'stx:libjava' }"
+
+TestCase subclass:#JavaJUnitTests
+	instanceVariableNames:''
+	classVariableNames:''
+	poolDictionaries:''
+	category:'Languages-Java-Tests'
+!
+
+!JavaJUnitTests class methodsFor:'documentation'!
+
+documentation
+"
+    A test case that tests whether JUnit 3.x works under
+    stx:libjava.
+
+    [author:]
+        Jan Vrany <jan.vrany@fit.cvut.cz>
+
+    [instance variables:]
+
+    [class variables:]
+
+    [see also:]
+
+"
+! !
+
+!JavaJUnitTests class methodsFor:'resource'!
+
+resources
+
+    ^ Array with: JavaInitializedResource with: JavaTestsResource
+
+    "Created: / 28-02-2011 / 15:28:52 / Marcel Hlopko <hlopik@gmail.com>"
+    "Modified: / 16-03-2011 / 14:45:36 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+
+!JavaJUnitTests methodsFor:'running'!
+
+setUp
+
+    super setUp.
+    Java addToClassPath: '/usr/share/java/junit4.jar'.
+
+    "Created: / 16-03-2011 / 15:28:50 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+
+!JavaJUnitTests methodsFor:'tests - jUnit 3.x'!
+
+test_junit3x_01
+
+    | runner junit3testcase result |
+    "/ Java effectiveClassPath
+
+    runner := Java classForName: 'org.junit.runner.JUnitCore'.
+    self assert: runner notNil.
+    junit3testcase := Java classForName: 'stx.libjava.tests.JUnit3Tests'.
+    self assert: junit3testcase notNil.
+
+    "signature: Result runClass(java.lang.Class[] classes)"
+    result := runner 
+                perform:#'runClasses([Ljava/lang/Class;)Lorg/junit/runner/Result;' 
+                with: (Array with: (JavaVM javaClassObjectForClass: junit3testcase)).
+
+    "
+    result getFailures
+    "
+    self assert: result getRunCount = 4.
+    self assert: result getFailureCount = 2.
+    self assert: result wasSuccessful == 0"false"
+
+    "Created: / 06-02-2011 / 12:14:09 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+    "Modified: / 07-04-2011 / 23:02:40 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+
+!JavaJUnitTests methodsFor:'tests - jUnit 4.x'!
+
+test_junit4x_01
+    | runner  junit4testcase  result |
+
+    "/ Java effectiveClassPath
+    
+    runner := Java classForName:'org.junit.runner.JUnitCore'.
+    self assert:runner notNil.
+    junit4testcase := Java classForName:'stx.libjava.tests.JUnit4Tests'.
+    self assert:junit4testcase notNil.
+     "signature: Result runClass(java.lang.Class[] classes)"
+    result := runner 
+                perform:#'runClasses([Ljava/lang/Class;)Lorg/junit/runner/Result;'
+                with:(Array with:(JavaVM javaClassObjectForClass:junit4testcase)).
+     "
+     result getFailures
+    "
+    self assert:result getRunCount = 3.
+    self assert:result getFailureCount = 1.
+    self assert:result wasSuccessful == 0
+
+    "Created: / 06-02-2011 / 12:14:28 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+    "Modified: / 28-02-2011 / 17:27:16 / Marcel Hlopko <hlopik@gmail.com>"
+    "Modified: / 07-04-2011 / 23:02:48 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+
+!JavaJUnitTests class methodsFor:'documentation'!
+
+version_SVN
+    ^ '$Id$'
+! !