src/JavaTestsResource.st
author vranyj1
Sat, 11 Jun 2011 15:07:29 +0000
branchjk_new_structure
changeset 848 b06ee9c295d9
parent 841 4db3d65dfd33
child 849 0addf2406912
permissions -rw-r--r--
Utility methods to load relevant subset of Mauve test suite
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
752
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
     1
"{ Package: 'stx:libjava' }"
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
     2
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
     3
TestResource subclass:#JavaTestsResource
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
     4
	instanceVariableNames:''
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
     5
	classVariableNames:''
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
     6
	poolDictionaries:''
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
     7
	category:'Languages-Java-Tests'
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
     8
!
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
     9
763
1e82b558abd3 Few fixes toward new repository layout
vranyj1
parents: 752
diff changeset
    10
JavaTestsResource class instanceVariableNames:'testsBuilded'
752
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    11
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    12
"
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    13
 The following class instance variables are inherited by this class:
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    14
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    15
	TestResource - current
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    16
	TestAsserter - 
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    17
	Object - 
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    18
"
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    19
!
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    20
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    21
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    22
!JavaTestsResource class methodsFor:'initialization'!
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    23
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    24
initialize
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    25
    "Invoked at system start or when the class is dynamically loaded."
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    26
    "/ please change as required (and remove this comment)
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    27
763
1e82b558abd3 Few fixes toward new repository layout
vranyj1
parents: 752
diff changeset
    28
    testsBuilded := false.
752
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    29
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    30
    "Modified: / 16-03-2011 / 14:33:56 / Jan Vrany <jan.vrany@fit.cvut.cz>"
841
4db3d65dfd33 trying to get tests working..
hlopkmar
parents: 763
diff changeset
    31
    "Modified: / 04-06-2011 / 18:01:58 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
752
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    32
! !
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    33
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    34
!JavaTestsResource class methodsFor:'accessing'!
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    35
848
b06ee9c295d9 Utility methods to load relevant subset of Mauve test suite
vranyj1
parents: 841
diff changeset
    36
classpath
b06ee9c295d9 Utility methods to load relevant subset of Mauve test suite
vranyj1
parents: 841
diff changeset
    37
    |cp|
b06ee9c295d9 Utility methods to load relevant subset of Mauve test suite
vranyj1
parents: 841
diff changeset
    38
b06ee9c295d9 Utility methods to load relevant subset of Mauve test suite
vranyj1
parents: 841
diff changeset
    39
    cp := OrderedCollection new.
b06ee9c295d9 Utility methods to load relevant subset of Mauve test suite
vranyj1
parents: 841
diff changeset
    40
    self testsDirectory 
b06ee9c295d9 Utility methods to load relevant subset of Mauve test suite
vranyj1
parents: 841
diff changeset
    41
        directoryContentsAsFilenamesDo:[:dir | cp := cp , (self classpathFor:dir) ].
b06ee9c295d9 Utility methods to load relevant subset of Mauve test suite
vranyj1
parents: 841
diff changeset
    42
    ^ cp
b06ee9c295d9 Utility methods to load relevant subset of Mauve test suite
vranyj1
parents: 841
diff changeset
    43
b06ee9c295d9 Utility methods to load relevant subset of Mauve test suite
vranyj1
parents: 841
diff changeset
    44
    "
b06ee9c295d9 Utility methods to load relevant subset of Mauve test suite
vranyj1
parents: 841
diff changeset
    45
        JavaTestsResource testsClasspath"
b06ee9c295d9 Utility methods to load relevant subset of Mauve test suite
vranyj1
parents: 841
diff changeset
    46
    "Created: / 07-05-2011 / 18:15:16 / Jan Vrany <jan.vrany@fit.cvut.cz>"
b06ee9c295d9 Utility methods to load relevant subset of Mauve test suite
vranyj1
parents: 841
diff changeset
    47
    "Modified: / 11-06-2011 / 15:58:34 / Jan Vrany <jan.vrany@fit.cvut.cz>"
b06ee9c295d9 Utility methods to load relevant subset of Mauve test suite
vranyj1
parents: 841
diff changeset
    48
!
b06ee9c295d9 Utility methods to load relevant subset of Mauve test suite
vranyj1
parents: 841
diff changeset
    49
b06ee9c295d9 Utility methods to load relevant subset of Mauve test suite
vranyj1
parents: 841
diff changeset
    50
classpathFor:testProject 
b06ee9c295d9 Utility methods to load relevant subset of Mauve test suite
vranyj1
parents: 841
diff changeset
    51
    |cp dir|
b06ee9c295d9 Utility methods to load relevant subset of Mauve test suite
vranyj1
parents: 841
diff changeset
    52
b06ee9c295d9 Utility methods to load relevant subset of Mauve test suite
vranyj1
parents: 841
diff changeset
    53
    cp := OrderedCollection new.
b06ee9c295d9 Utility methods to load relevant subset of Mauve test suite
vranyj1
parents: 841
diff changeset
    54
    dir := self testsDirectory / testProject.
b06ee9c295d9 Utility methods to load relevant subset of Mauve test suite
vranyj1
parents: 841
diff changeset
    55
    dir isDirectory 
b06ee9c295d9 Utility methods to load relevant subset of Mauve test suite
vranyj1
parents: 841
diff changeset
    56
        ifTrue:
b06ee9c295d9 Utility methods to load relevant subset of Mauve test suite
vranyj1
parents: 841
diff changeset
    57
            [ (dir / 'bin') exists ifTrue:[ cp add:(dir / 'bin') asString ].
b06ee9c295d9 Utility methods to load relevant subset of Mauve test suite
vranyj1
parents: 841
diff changeset
    58
            (dir / 'lib') exists 
b06ee9c295d9 Utility methods to load relevant subset of Mauve test suite
vranyj1
parents: 841
diff changeset
    59
                ifTrue:
b06ee9c295d9 Utility methods to load relevant subset of Mauve test suite
vranyj1
parents: 841
diff changeset
    60
                    [ cp addAll:((dir / 'lib') directoryContentsAsFilenames 
b06ee9c295d9 Utility methods to load relevant subset of Mauve test suite
vranyj1
parents: 841
diff changeset
    61
                                select:[:jar | jar suffix = 'jar' ]) ] ].
b06ee9c295d9 Utility methods to load relevant subset of Mauve test suite
vranyj1
parents: 841
diff changeset
    62
    ^ cp
b06ee9c295d9 Utility methods to load relevant subset of Mauve test suite
vranyj1
parents: 841
diff changeset
    63
b06ee9c295d9 Utility methods to load relevant subset of Mauve test suite
vranyj1
parents: 841
diff changeset
    64
    "
b06ee9c295d9 Utility methods to load relevant subset of Mauve test suite
vranyj1
parents: 841
diff changeset
    65
        JavaTestsResource testsClasspath"
b06ee9c295d9 Utility methods to load relevant subset of Mauve test suite
vranyj1
parents: 841
diff changeset
    66
    "Created: / 11-06-2011 / 15:58:00 / Jan Vrany <jan.vrany@fit.cvut.cz>"
b06ee9c295d9 Utility methods to load relevant subset of Mauve test suite
vranyj1
parents: 841
diff changeset
    67
!
b06ee9c295d9 Utility methods to load relevant subset of Mauve test suite
vranyj1
parents: 841
diff changeset
    68
b06ee9c295d9 Utility methods to load relevant subset of Mauve test suite
vranyj1
parents: 841
diff changeset
    69
classpathForMauve
b06ee9c295d9 Utility methods to load relevant subset of Mauve test suite
vranyj1
parents: 841
diff changeset
    70
    ^ self classpathFor:'libjava-mauve'
b06ee9c295d9 Utility methods to load relevant subset of Mauve test suite
vranyj1
parents: 841
diff changeset
    71
b06ee9c295d9 Utility methods to load relevant subset of Mauve test suite
vranyj1
parents: 841
diff changeset
    72
    "
b06ee9c295d9 Utility methods to load relevant subset of Mauve test suite
vranyj1
parents: 841
diff changeset
    73
        JavaTestsResource testsClasspathForMauve"
b06ee9c295d9 Utility methods to load relevant subset of Mauve test suite
vranyj1
parents: 841
diff changeset
    74
    "Created: / 11-06-2011 / 15:59:31 / Jan Vrany <jan.vrany@fit.cvut.cz>"
b06ee9c295d9 Utility methods to load relevant subset of Mauve test suite
vranyj1
parents: 841
diff changeset
    75
!
b06ee9c295d9 Utility methods to load relevant subset of Mauve test suite
vranyj1
parents: 841
diff changeset
    76
763
1e82b558abd3 Few fixes toward new repository layout
vranyj1
parents: 752
diff changeset
    77
testsBuilded
1e82b558abd3 Few fixes toward new repository layout
vranyj1
parents: 752
diff changeset
    78
    
1e82b558abd3 Few fixes toward new repository layout
vranyj1
parents: 752
diff changeset
    79
    ^testsBuilded == true
752
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    80
763
1e82b558abd3 Few fixes toward new repository layout
vranyj1
parents: 752
diff changeset
    81
    "Created: / 07-05-2011 / 18:44:49 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1e82b558abd3 Few fixes toward new repository layout
vranyj1
parents: 752
diff changeset
    82
!
1e82b558abd3 Few fixes toward new repository layout
vranyj1
parents: 752
diff changeset
    83
1e82b558abd3 Few fixes toward new repository layout
vranyj1
parents: 752
diff changeset
    84
testsBuilded:aBoolean 
752
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    85
    "
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    86
        JavaTestsResource projectBuilded: true.
763
1e82b558abd3 Few fixes toward new repository layout
vranyj1
parents: 752
diff changeset
    87
        JavaTestsResource projectBuilded: false."
1e82b558abd3 Few fixes toward new repository layout
vranyj1
parents: 752
diff changeset
    88
    
1e82b558abd3 Few fixes toward new repository layout
vranyj1
parents: 752
diff changeset
    89
    testsBuilded := aBoolean.
752
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    90
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    91
    "Modified: / 16-03-2011 / 15:20:46 / Jan Vrany <jan.vrany@fit.cvut.cz>"
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    92
!
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    93
763
1e82b558abd3 Few fixes toward new repository layout
vranyj1
parents: 752
diff changeset
    94
testsDirectory
1e82b558abd3 Few fixes toward new repository layout
vranyj1
parents: 752
diff changeset
    95
    ^ UserPreferences current javaTestsDirectory asFilename
1e82b558abd3 Few fixes toward new repository layout
vranyj1
parents: 752
diff changeset
    96
1e82b558abd3 Few fixes toward new repository layout
vranyj1
parents: 752
diff changeset
    97
    "Modified: / 07-05-2011 / 17:57:05 / Jan Vrany <jan.vrany@fit.cvut.cz>"
752
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    98
! !
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    99
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
   100
!JavaTestsResource class methodsFor:'running'!
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
   101
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
   102
buildProject
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
   103
    "
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
   104
        JavaTestsResource projectBuilded: true.
763
1e82b558abd3 Few fixes toward new repository layout
vranyj1
parents: 752
diff changeset
   105
        JavaTestsResource projectBuilded: false."
1e82b558abd3 Few fixes toward new repository layout
vranyj1
parents: 752
diff changeset
   106
    
841
4db3d65dfd33 trying to get tests working..
hlopkmar
parents: 763
diff changeset
   107
    testsBuilded == true ifFalse: [
4db3d65dfd33 trying to get tests working..
hlopkmar
parents: 763
diff changeset
   108
        "Check for ant"
4db3d65dfd33 trying to get tests working..
hlopkmar
parents: 763
diff changeset
   109
        self assert: (OperatingSystem canExecuteCommand: 'ant')
4db3d65dfd33 trying to get tests working..
hlopkmar
parents: 763
diff changeset
   110
            description: 'Cannot execute ant'.
4db3d65dfd33 trying to get tests working..
hlopkmar
parents: 763
diff changeset
   111
        self assert: (self testsDirectory / 'build.xml') exists
4db3d65dfd33 trying to get tests working..
hlopkmar
parents: 763
diff changeset
   112
            description: 'No build.xml in ' , self testsDirectory asString.
4db3d65dfd33 trying to get tests working..
hlopkmar
parents: 763
diff changeset
   113
         "Launch ant"
4db3d65dfd33 trying to get tests working..
hlopkmar
parents: 763
diff changeset
   114
        Transcript
4db3d65dfd33 trying to get tests working..
hlopkmar
parents: 763
diff changeset
   115
            show: 'Running ant in ';
4db3d65dfd33 trying to get tests working..
hlopkmar
parents: 763
diff changeset
   116
            showCR: self testsDirectory asString.
4db3d65dfd33 trying to get tests working..
hlopkmar
parents: 763
diff changeset
   117
        OperatingSystem 
4db3d65dfd33 trying to get tests working..
hlopkmar
parents: 763
diff changeset
   118
            executeCommand: 'ant -f build.xml'
4db3d65dfd33 trying to get tests working..
hlopkmar
parents: 763
diff changeset
   119
            inputFrom: nil
4db3d65dfd33 trying to get tests working..
hlopkmar
parents: 763
diff changeset
   120
            outputTo: Stdout
4db3d65dfd33 trying to get tests working..
hlopkmar
parents: 763
diff changeset
   121
            errorTo: Stderr
4db3d65dfd33 trying to get tests working..
hlopkmar
parents: 763
diff changeset
   122
            inDirectory: self testsDirectory
4db3d65dfd33 trying to get tests working..
hlopkmar
parents: 763
diff changeset
   123
            onError: [
4db3d65dfd33 trying to get tests working..
hlopkmar
parents: 763
diff changeset
   124
                :status | 
4db3d65dfd33 trying to get tests working..
hlopkmar
parents: 763
diff changeset
   125
                Transcript showCR: 'ANT FAILED!!!!!!'.
4db3d65dfd33 trying to get tests working..
hlopkmar
parents: 763
diff changeset
   126
                self error: 'ant failed'.
4db3d65dfd33 trying to get tests working..
hlopkmar
parents: 763
diff changeset
   127
                ^ self
4db3d65dfd33 trying to get tests working..
hlopkmar
parents: 763
diff changeset
   128
            ].
4db3d65dfd33 trying to get tests working..
hlopkmar
parents: 763
diff changeset
   129
        Transcript showCR: 'Ant finished'.
4db3d65dfd33 trying to get tests working..
hlopkmar
parents: 763
diff changeset
   130
        testsBuilded := true.
4db3d65dfd33 trying to get tests working..
hlopkmar
parents: 763
diff changeset
   131
    ].
4db3d65dfd33 trying to get tests working..
hlopkmar
parents: 763
diff changeset
   132
    ^ testsBuilded.
752
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
   133
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
   134
    "Modified: / 16-03-2011 / 15:20:22 / Jan Vrany <jan.vrany@fit.cvut.cz>"
841
4db3d65dfd33 trying to get tests working..
hlopkmar
parents: 763
diff changeset
   135
    "Modified: / 04-06-2011 / 18:03:00 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
752
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
   136
! !
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
   137
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
   138
!JavaTestsResource methodsFor:'running'!
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
   139
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
   140
setUp
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
   141
    self class buildProject.
848
b06ee9c295d9 Utility methods to load relevant subset of Mauve test suite
vranyj1
parents: 841
diff changeset
   142
    self class classpath do:[:each | Java addToClassPath:each ].
763
1e82b558abd3 Few fixes toward new repository layout
vranyj1
parents: 752
diff changeset
   143
1e82b558abd3 Few fixes toward new repository layout
vranyj1
parents: 752
diff changeset
   144
    "
1e82b558abd3 Few fixes toward new repository layout
vranyj1
parents: 752
diff changeset
   145
        JavaTestsResource basicNew setUp
848
b06ee9c295d9 Utility methods to load relevant subset of Mauve test suite
vranyj1
parents: 841
diff changeset
   146
        Java classPath"
752
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
   147
    "Created: / 06-03-2011 / 14:50:58 / Jan Vrany <jan.vrany@fit.cvut.cz>"
763
1e82b558abd3 Few fixes toward new repository layout
vranyj1
parents: 752
diff changeset
   148
    "Modified: / 07-05-2011 / 18:19:19 / Jan Vrany <jan.vrany@fit.cvut.cz>"
752
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
   149
! !
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
   150
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
   151
!JavaTestsResource class methodsFor:'documentation'!
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
   152
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
   153
version_SVN
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
   154
    ^ '$Id$'
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
   155
! !
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
   156
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
   157
JavaTestsResource initialize!