reports/Builder__Report.st
author Stefan Vogel <sv@exept.de>
Mon, 08 Apr 2013 10:50:48 +0200
changeset 142 bbebfa86daea
parent 81 a433f1944dca
child 149 3f9e255e7d47
permissions -rw-r--r--
class: Builder::Report changed: #loadPackageIfNotAlready:
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
69
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     1
"{ Package: 'stx:goodies/builder/reports' }"
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     2
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     3
"{ NameSpace: Builder }"
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     4
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     5
Object subclass:#Report
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     6
	instanceVariableNames:'name format'
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     7
	classVariableNames:'Verbose OutputDir'
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     8
	poolDictionaries:''
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     9
	category:'Builder-Reports'
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    10
!
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    11
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    12
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    13
!Report class methodsFor:'initialization'!
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    14
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    15
initialize
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    16
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    17
    Verbose := false.
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    18
    OutputDir := Filename currentDirectory.
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    19
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    20
    "Created: / 14-03-2011 / 19:42:03 / Jan Vrany <jan.vrany@fit.cvut.cz>"
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    21
! !
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    22
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    23
!Report class methodsFor:'instance creation'!
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    24
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    25
new
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    26
    "return an initialized instance"
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    27
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    28
    ^ self basicNew initialize.
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    29
! !
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    30
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    31
!Report class methodsFor:'accessing'!
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    32
76
4c992db5503a --help improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 69
diff changeset
    33
available
4c992db5503a --help improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 69
diff changeset
    34
    "Return all available reports ready to run. 
4c992db5503a --help improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 69
diff changeset
    35
     Unfinished/Experimental reports are not returned"
4c992db5503a --help improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 69
diff changeset
    36
4c992db5503a --help improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 69
diff changeset
    37
    ^{ 
4c992db5503a --help improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 69
diff changeset
    38
        Builder::TestReport .
4c992db5503a --help improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 69
diff changeset
    39
        Builder::LintReport .
4c992db5503a --help improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 69
diff changeset
    40
    }
4c992db5503a --help improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 69
diff changeset
    41
4c992db5503a --help improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 69
diff changeset
    42
    "Created: / 13-01-2012 / 12:01:26 / Jan Vrany <jan.vrany@fit.cvut.cz>"
4c992db5503a --help improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 69
diff changeset
    43
!
4c992db5503a --help improved
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 69
diff changeset
    44
69
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    45
outputDir
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    46
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    47
    ^OutputDir ? '.'
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    48
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    49
    "
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    50
        Report outputDir: '/tmp/reports' 
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    51
    "
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    52
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    53
    "Created: / 07-10-2011 / 09:12:23 / Jan Vrany <jan.vrany@fit.cvut.cz>"
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    54
!
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    55
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    56
outputDir: aStringOrFilename
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    57
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    58
    OutputDir := aStringOrFilename asFilename.
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    59
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    60
    "
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    61
        Report outputDir: '/tmp/reports' 
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    62
    "
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    63
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    64
    "Created: / 14-03-2011 / 19:40:25 / Jan Vrany <jan.vrany@fit.cvut.cz>"
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    65
! !
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    66
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    67
!Report class methodsFor:'private'!
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    68
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    69
convert: aString
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    70
	^ (aString asString 
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    71
		copyReplaceAll: (String with: Character cr with: Character lf) with: (String with: Character lf))
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    72
		copyReplaceAll: (String with: Character cr) with: (String with: Character lf)
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    73
!
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    74
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    75
encode: aString
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    76
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    77
    | in out c |
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    78
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    79
    (aString includesAny: #($< $> $& $")) ifFalse:[^aString].
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    80
    in := aString readStream.
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    81
    out := String new writeStream.  
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    82
    [in atEnd ] whileFalse:[
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    83
        c := in next.
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    84
        c == $< ifTrue:[out nextPutAll:'&lt;'] ifFalse:[
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    85
        c == $> ifTrue:[out nextPutAll:'&gt;'] ifFalse:[
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    86
        c == $& ifTrue:[out nextPutAll:'&amp;'] ifFalse:[
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    87
        c == $" ifTrue:[out nextPutAll:'&quot;'] ifFalse:[
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    88
        out nextPut: c]]]]].
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    89
    ^out contents.
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    90
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    91
    "
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    92
        HDReport basicNew encode: 'abx' 
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    93
        HDReport basicNew encode: ''  
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    94
        HDReport basicNew encode: 'sss <clint>()'       
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    95
    "
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    96
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    97
    "Modified: / 11-03-2011 / 17:12:17 / Jan Vrany <jan.vrany@fit.cvut.cz>"
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    98
!
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    99
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   100
encodeFilename: aString
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   101
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   102
    ^(aString copyReplaceAll: $: with:$_) copyReplaceAll: $/ with:$_
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   103
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   104
    "Created: / 14-03-2011 / 14:14:43 / Jan Vrany <jan.vrany@fit.cvut.cz>"
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   105
    "Modified: / 14-03-2011 / 23:45:40 / Jan Vrany <jan.vrany@fit.cvut.cz>"
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   106
! !
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   107
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   108
!Report class methodsFor:'running'!
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   109
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   110
runClasses: aCollectionOfClasses
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   111
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   112
    ^self runClasses: aCollectionOfClasses named: 'Some classes'
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   113
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   114
    "Created: / 04-08-2011 / 12:25:15 / Jan Vrany <jan.vrany@fit.cvut.cz>"
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   115
!
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   116
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   117
runClasses: aCollectionOfClasses named: aString
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   118
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   119
    ^self new runClasses: aCollectionOfClasses named: aString
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   120
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   121
    "Modified: / 04-08-2011 / 12:23:26 / Jan Vrany <jan.vrany@fit.cvut.cz>"
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   122
!
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   123
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   124
runPackage: aString
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   125
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   126
    "Run a report for given package (package id)"
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   127
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   128
    ^self runPackages: (Array with: aString)
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   129
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   130
    "Modified (comment): / 04-08-2011 / 12:24:59 / Jan Vrany <jan.vrany@fit.cvut.cz>"
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   131
!
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   132
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   133
runPackages: packages
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   134
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   135
    "Run a report for given list of packages
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   136
     (package IDs)"
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   137
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   138
    ^self new runPackages: packages
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   139
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   140
    "Modified (comment): / 04-08-2011 / 12:24:28 / Jan Vrany <jan.vrany@fit.cvut.cz>"
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   141
!
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   142
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   143
verbose
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   144
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   145
    ^ Verbose
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   146
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   147
    "Created: / 21-07-2011 / 11:48:13 / Jan Vrany <jan.vrany@fit.cvut.cz>"
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   148
!
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   149
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   150
verbose: aBoolean
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   151
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   152
    Verbose := aBoolean.
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   153
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   154
    "Created: / 21-07-2011 / 11:48:02 / Jan Vrany <jan.vrany@fit.cvut.cz>"
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   155
! !
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   156
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   157
!Report methodsFor:'accessing'!
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   158
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   159
format
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   160
    ^ format
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   161
!
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   162
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   163
format: aFormatOrString
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   164
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   165
    aFormatOrString isString ifTrue:[
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   166
        format := ReportFormat named: aFormatOrString 
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   167
    ] ifFalse:[
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   168
        format := aFormatOrString 
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   169
    ]
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   170
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   171
    "Created: / 04-08-2011 / 11:55:46 / Jan Vrany <jan.vrany@fit.cvut.cz>"
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   172
!
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   173
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   174
name
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   175
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   176
    ^name isNil ifTrue:[
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   177
        self defaultName
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   178
    ] ifFalse:[
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   179
        name
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   180
    ]
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   181
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   182
    "Modified: / 07-11-2011 / 09:47:56 / Jan Vrany <jan.vrany@fit.cvut.cz>"
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   183
!
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   184
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   185
name:aString
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   186
    name := aString.
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   187
!
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   188
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   189
outputDirectory
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   190
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   191
    ^self class outputDir asFilename
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   192
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   193
    "Created: / 07-10-2011 / 09:12:49 / Jan Vrany <jan.vrany@fit.cvut.cz>"
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   194
! !
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   195
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   196
!Report methodsFor:'accessing-command line options'!
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   197
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   198
cmdlineOptionFormat
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   199
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   200
    ^CmdLineOption new
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   201
        short: $F;
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   202
        long: '--format';
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   203
        description: 'Report format to use';
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   204
        action:[:option | self format: option ]
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   205
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   206
    "Created: / 06-11-2011 / 21:49:12 / Jan Vrany <jan.vrany@fit.cvut.cz>"
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   207
!
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   208
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   209
cmdlineOptionPackage
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   210
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   211
    ^CmdLineOption new
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   212
        short: $p;
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   213
        long: '--package';
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   214
        description: 'Package in which to run the report';
81
a433f1944dca Loads the package if not already loaded.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 76
diff changeset
   215
        action:[:option | 
a433f1944dca Loads the package if not already loaded.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 76
diff changeset
   216
            self loadPackageIfNotAlready: option.
a433f1944dca Loads the package if not already loaded.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 76
diff changeset
   217
            self setupForPackages: { option } 
a433f1944dca Loads the package if not already loaded.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 76
diff changeset
   218
        ]
69
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   219
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   220
    "Created: / 06-11-2011 / 21:49:49 / Jan Vrany <jan.vrany@fit.cvut.cz>"
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   221
! !
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   222
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   223
!Report methodsFor:'accessing-defaults'!
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   224
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   225
defaultFileSuffix
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   226
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   227
    "Return a default filename suffix. Note that format suffix will be 
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   228
     appended too if not file is explicitely specified"
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   229
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   230
    ^self subclassResponsibility
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   231
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   232
    "Created: / 04-08-2011 / 12:47:05 / Jan Vrany <jan.vrany@fit.cvut.cz>"
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   233
!
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   234
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   235
defaultFormat
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   236
    "raise an error: must be redefined in concrete subclass(es)"
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   237
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   238
    ^ self subclassResponsibility
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   239
!
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   240
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   241
defaultName
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   242
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   243
    ^self class name
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   244
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   245
    "Created: / 07-11-2011 / 09:47:21 / Jan Vrany <jan.vrany@fit.cvut.cz>"
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   246
! !
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   247
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   248
!Report methodsFor:'initialization'!
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   249
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   250
setupForClasses: classes
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   251
    "raise an error: must be redefined in concrete subclass(es)"
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   252
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   253
    ^ self subclassResponsibility
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   254
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   255
    "Created: / 04-08-2011 / 14:34:31 / Jan Vrany <jan.vrany@fit.cvut.cz>"
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   256
!
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   257
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   258
setupForPackages:arg
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   259
    "raise an error: must be redefined in concrete subclass(es)"
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   260
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   261
    ^ self subclassResponsibility
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   262
! !
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   263
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   264
!Report methodsFor:'private'!
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   265
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   266
convert:arg
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   267
    ^ self class convert:arg
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   268
!
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   269
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   270
encode:arg
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   271
    ^ self class encode:arg
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   272
!
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   273
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   274
encodeFilename:arg
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   275
    ^ self class encodeFilename:arg
81
a433f1944dca Loads the package if not already loaded.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 76
diff changeset
   276
!
a433f1944dca Loads the package if not already loaded.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 76
diff changeset
   277
a433f1944dca Loads the package if not already loaded.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 76
diff changeset
   278
loadPackageIfNotAlready: pkg
142
bbebfa86daea class: Builder::Report
Stefan Vogel <sv@exept.de>
parents: 81
diff changeset
   279
    "Loads a package, if it is not loaded already. 
bbebfa86daea class: Builder::Report
Stefan Vogel <sv@exept.de>
parents: 81
diff changeset
   280
     Raises an error if package cannot be loaded"
81
a433f1944dca Loads the package if not already loaded.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 76
diff changeset
   281
a433f1944dca Loads the package if not already loaded.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 76
diff changeset
   282
    | def |
a433f1944dca Loads the package if not already loaded.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 76
diff changeset
   283
    def := ProjectDefinition definitionClassForPackage:pkg.
a433f1944dca Loads the package if not already loaded.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 76
diff changeset
   284
    def isNil ifTrue:[ 
142
bbebfa86daea class: Builder::Report
Stefan Vogel <sv@exept.de>
parents: 81
diff changeset
   285
        (Smalltalk loadPackage:pkg) ifFalse:[
81
a433f1944dca Loads the package if not already loaded.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 76
diff changeset
   286
            self error:'Cannot load package: ', pkg.
a433f1944dca Loads the package if not already loaded.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 76
diff changeset
   287
        ].
a433f1944dca Loads the package if not already loaded.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 76
diff changeset
   288
        def := ProjectDefinition definitionClassForPackage:pkg. 
a433f1944dca Loads the package if not already loaded.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 76
diff changeset
   289
    ].
a433f1944dca Loads the package if not already loaded.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 76
diff changeset
   290
    def isNil ifTrue:[
142
bbebfa86daea class: Builder::Report
Stefan Vogel <sv@exept.de>
parents: 81
diff changeset
   291
        self error:'Package loaded but project definition not found: ', pkg.
81
a433f1944dca Loads the package if not already loaded.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 76
diff changeset
   292
    ].
a433f1944dca Loads the package if not already loaded.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 76
diff changeset
   293
a433f1944dca Loads the package if not already loaded.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 76
diff changeset
   294
    "Created: / 13-01-2012 / 12:56:48 / Jan Vrany <jan.vrany@fit.cvut.cz>"
69
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   295
! !
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   296
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   297
!Report methodsFor:'running'!
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   298
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   299
run
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   300
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   301
    self setUp.
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   302
    format writeHeader.
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   303
    [ self runReport ] ensure:[
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   304
        format writeFooter.
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   305
        self tearDown.
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   306
    ]
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   307
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   308
    "Modified: / 04-08-2011 / 12:42:32 / Jan Vrany <jan.vrany@fit.cvut.cz>"
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   309
!
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   310
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   311
runClasses:classes named:aString 
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   312
    name := aString.
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   313
    self setupForClasses:classes.
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   314
    self run
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   315
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   316
    "Modified: / 04-08-2011 / 14:34:41 / Jan Vrany <jan.vrany@fit.cvut.cz>"
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   317
!
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   318
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   319
runPackage: package
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   320
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   321
    ^self runPackages: (Array with: package)
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   322
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   323
    "Created: / 04-08-2011 / 12:53:58 / Jan Vrany <jan.vrany@fit.cvut.cz>"
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   324
!
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   325
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   326
runPackages:packages 
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   327
    packages size == 1 
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   328
        ifTrue:[ name := packages anyOne. ]
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   329
        ifFalse:[ name := ('%1 packages' bindWith:packages size). ].
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   330
    self setupForPackages:packages.
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   331
    ^ self run
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   332
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   333
    "
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   334
        HDTestReport runPackage:'stx:goodies/monticello'
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   335
        HDTestReport runPackage:'stx:libjava'"
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   336
    "Created: / 04-08-2011 / 12:35:32 / Jan Vrany <jan.vrany@fit.cvut.cz>"
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   337
!
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   338
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   339
runReport
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   340
    "Actually run the report. What to do (what classes/packages to check)
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   341
     must be stored instance variables"
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   342
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   343
    ^ self subclassResponsibility
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   344
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   345
    "Created: / 04-08-2011 / 12:39:43 / Jan Vrany <jan.vrany@fit.cvut.cz>"
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   346
!
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   347
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   348
setUp
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   349
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   350
    | stream | 
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   351
    format isNil ifTrue:[format := self defaultFormat].
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   352
    stream := (OutputDir / (self encodeFilename: ('%1-%2.%3' bindWith: self name with: self defaultFileSuffix with: format defaultFileSuffix))) writeStream.
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   353
    format report: self stream: stream
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   354
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   355
    "Created: / 04-08-2011 / 12:43:32 / Jan Vrany <jan.vrany@fit.cvut.cz>"
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   356
!
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   357
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   358
tearDown
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   359
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   360
    format streamFlush; streamClose.
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   361
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   362
    "Created: / 04-08-2011 / 12:43:40 / Jan Vrany <jan.vrany@fit.cvut.cz>"
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   363
! !
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   364
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   365
!Report class methodsFor:'documentation'!
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   366
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   367
version
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   368
    ^ '$Header$'
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   369
!
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   370
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   371
version_CVS
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   372
    ^ '$Header$'
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   373
!
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   374
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   375
version_SVN
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   376
    ^ '§Id: Builder__Report.st 294 2011-11-27 11:08:02Z vranyj1 §'
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   377
! !
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   378
142
bbebfa86daea class: Builder::Report
Stefan Vogel <sv@exept.de>
parents: 81
diff changeset
   379
69
4c4c6f784b18 initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   380
Report initialize!