TestRunner.st
author Claus Gittinger <cg@exept.de>
Mon, 10 Mar 2008 10:26:30 +0100
changeset 178 31e594125d95
parent 122 61e456491017
child 182 6a3efe4da033
permissions -rw-r--r--
aspect holder setup
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     1
"{ Package: 'stx:goodies/sunit' }"
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     2
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     3
ApplicationModel subclass:#TestRunner
64
ef347b158415 better passed info (name of last testCase in window)
james
parents: 61
diff changeset
     4
	instanceVariableNames:'result lastTestCase lastPass defect allDefects defectMenu details
ef347b158415 better passed info (name of last testCase in window)
james
parents: 61
diff changeset
     5
		mode scriptModel script numberOfTestsToRun testsWhichFailed
39
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
     6
		testsWhichPassed categoryModel category'
30
564780aca775 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 29
diff changeset
     7
	classVariableNames:''
564780aca775 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 29
diff changeset
     8
	poolDictionaries:''
564780aca775 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 29
diff changeset
     9
	category:'SUnit-UI'
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    10
!
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    11
43
d46c62bd3c4e comment
Claus Gittinger <cg@exept.de>
parents: 42
diff changeset
    12
!TestRunner class methodsFor:'documentation'!
d46c62bd3c4e comment
Claus Gittinger <cg@exept.de>
parents: 42
diff changeset
    13
d46c62bd3c4e comment
Claus Gittinger <cg@exept.de>
parents: 42
diff changeset
    14
documentation
d46c62bd3c4e comment
Claus Gittinger <cg@exept.de>
parents: 42
diff changeset
    15
"
d46c62bd3c4e comment
Claus Gittinger <cg@exept.de>
parents: 42
diff changeset
    16
    This GUI is based on SUnit2.7 and 
d46c62bd3c4e comment
Claus Gittinger <cg@exept.de>
parents: 42
diff changeset
    17
    was ported to ST/X by Samuel S. Schuster (as 2.7)  (thanks, indeed)
d46c62bd3c4e comment
Claus Gittinger <cg@exept.de>
parents: 42
diff changeset
    18
d46c62bd3c4e comment
Claus Gittinger <cg@exept.de>
parents: 42
diff changeset
    19
    It was slightly enhanced by adding a rerun-defects, browse and
d46c62bd3c4e comment
Claus Gittinger <cg@exept.de>
parents: 42
diff changeset
    20
    a category selector (to minor revision 2.7d, in the meantime)
d46c62bd3c4e comment
Claus Gittinger <cg@exept.de>
parents: 42
diff changeset
    21
" 
d46c62bd3c4e comment
Claus Gittinger <cg@exept.de>
parents: 42
diff changeset
    22
! !
11
fd4882a6997f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 10
diff changeset
    23
8
fff4f606a2d1 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 6
diff changeset
    24
!TestRunner class methodsFor:'defaults'!
fff4f606a2d1 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 6
diff changeset
    25
42
Claus Gittinger <cg@exept.de>
parents: 39
diff changeset
    26
colorForFailedTests
Claus Gittinger <cg@exept.de>
parents: 39
diff changeset
    27
    ^ Color red
Claus Gittinger <cg@exept.de>
parents: 39
diff changeset
    28
!
Claus Gittinger <cg@exept.de>
parents: 39
diff changeset
    29
Claus Gittinger <cg@exept.de>
parents: 39
diff changeset
    30
colorForPassedTests
Claus Gittinger <cg@exept.de>
parents: 39
diff changeset
    31
    ^ Color green darkened
Claus Gittinger <cg@exept.de>
parents: 39
diff changeset
    32
!
Claus Gittinger <cg@exept.de>
parents: 39
diff changeset
    33
8
fff4f606a2d1 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 6
diff changeset
    34
defaultIcon
78
fa2e30b08f8b icon - ToolbarIconLibrary
Claus Gittinger <cg@exept.de>
parents: 76
diff changeset
    35
    <resource: #programImage>
8
fff4f606a2d1 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 6
diff changeset
    36
78
fa2e30b08f8b icon - ToolbarIconLibrary
Claus Gittinger <cg@exept.de>
parents: 76
diff changeset
    37
    "/ kept there to prevent me from being autoloaded for the icon
fa2e30b08f8b icon - ToolbarIconLibrary
Claus Gittinger <cg@exept.de>
parents: 76
diff changeset
    38
    ^ ToolbarIconLibrary sUnit28x28Icon
8
fff4f606a2d1 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 6
diff changeset
    39
! !
fff4f606a2d1 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 6
diff changeset
    40
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    41
!TestRunner class methodsFor:'interface specs'!
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    42
48
2549002b7179 flyByHelp
Claus Gittinger <cg@exept.de>
parents: 43
diff changeset
    43
flyByHelpSpec
2549002b7179 flyByHelp
Claus Gittinger <cg@exept.de>
parents: 43
diff changeset
    44
    <resource: #help>
2549002b7179 flyByHelp
Claus Gittinger <cg@exept.de>
parents: 43
diff changeset
    45
2549002b7179 flyByHelp
Claus Gittinger <cg@exept.de>
parents: 43
diff changeset
    46
    ^super flyByHelpSpec addPairsFrom:#(
2549002b7179 flyByHelp
Claus Gittinger <cg@exept.de>
parents: 43
diff changeset
    47
2549002b7179 flyByHelp
Claus Gittinger <cg@exept.de>
parents: 43
diff changeset
    48
#refreshSuitesButton
2549002b7179 flyByHelp
Claus Gittinger <cg@exept.de>
parents: 43
diff changeset
    49
'Refresh List of Tests'
2549002b7179 flyByHelp
Claus Gittinger <cg@exept.de>
parents: 43
diff changeset
    50
2549002b7179 flyByHelp
Claus Gittinger <cg@exept.de>
parents: 43
diff changeset
    51
#suitesCategoryList
2549002b7179 flyByHelp
Claus Gittinger <cg@exept.de>
parents: 43
diff changeset
    52
'Test Categories'
2549002b7179 flyByHelp
Claus Gittinger <cg@exept.de>
parents: 43
diff changeset
    53
2549002b7179 flyByHelp
Claus Gittinger <cg@exept.de>
parents: 43
diff changeset
    54
#suiteSelection
2549002b7179 flyByHelp
Claus Gittinger <cg@exept.de>
parents: 43
diff changeset
    55
'Selected Test'
2549002b7179 flyByHelp
Claus Gittinger <cg@exept.de>
parents: 43
diff changeset
    56
2549002b7179 flyByHelp
Claus Gittinger <cg@exept.de>
parents: 43
diff changeset
    57
#runButton
2549002b7179 flyByHelp
Claus Gittinger <cg@exept.de>
parents: 43
diff changeset
    58
'Run selected Test'
2549002b7179 flyByHelp
Claus Gittinger <cg@exept.de>
parents: 43
diff changeset
    59
2549002b7179 flyByHelp
Claus Gittinger <cg@exept.de>
parents: 43
diff changeset
    60
#rerunDefectsButton
2549002b7179 flyByHelp
Claus Gittinger <cg@exept.de>
parents: 43
diff changeset
    61
'ReRun Defects Only'
2549002b7179 flyByHelp
Claus Gittinger <cg@exept.de>
parents: 43
diff changeset
    62
2549002b7179 flyByHelp
Claus Gittinger <cg@exept.de>
parents: 43
diff changeset
    63
#runAllButton
2549002b7179 flyByHelp
Claus Gittinger <cg@exept.de>
parents: 43
diff changeset
    64
'Run all Tests from Category'
2549002b7179 flyByHelp
Claus Gittinger <cg@exept.de>
parents: 43
diff changeset
    65
2549002b7179 flyByHelp
Claus Gittinger <cg@exept.de>
parents: 43
diff changeset
    66
#defectsList
2549002b7179 flyByHelp
Claus Gittinger <cg@exept.de>
parents: 43
diff changeset
    67
'Failures'
2549002b7179 flyByHelp
Claus Gittinger <cg@exept.de>
parents: 43
diff changeset
    68
2549002b7179 flyByHelp
Claus Gittinger <cg@exept.de>
parents: 43
diff changeset
    69
#browseButton
2549002b7179 flyByHelp
Claus Gittinger <cg@exept.de>
parents: 43
diff changeset
    70
'Browse Test'
2549002b7179 flyByHelp
Claus Gittinger <cg@exept.de>
parents: 43
diff changeset
    71
2549002b7179 flyByHelp
Claus Gittinger <cg@exept.de>
parents: 43
diff changeset
    72
#debugButton
2549002b7179 flyByHelp
Claus Gittinger <cg@exept.de>
parents: 43
diff changeset
    73
'Debug Failed Test'
2549002b7179 flyByHelp
Claus Gittinger <cg@exept.de>
parents: 43
diff changeset
    74
2549002b7179 flyByHelp
Claus Gittinger <cg@exept.de>
parents: 43
diff changeset
    75
)
2549002b7179 flyByHelp
Claus Gittinger <cg@exept.de>
parents: 43
diff changeset
    76
!
2549002b7179 flyByHelp
Claus Gittinger <cg@exept.de>
parents: 43
diff changeset
    77
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    78
windowSpec
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    79
    "This resource specification was automatically generated
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    80
     by the UIPainter of ST/X."
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    81
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    82
    "Do not manually edit this!! If it is corrupted,
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    83
     the UIPainter may not be able to read the specification."
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    84
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    85
    "
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    86
     UIPainter new openOnClass:TestRunner andSelector:#windowSpec
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    87
     TestRunner new openInterface:#windowSpec
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    88
     TestRunner open
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    89
    "
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    90
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    91
    <resource: #canvas>
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    92
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    93
    ^ 
117
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
    94
     #(FullSpec
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
    95
        name: windowSpec
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
    96
        window: 
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
    97
       (WindowSpec
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
    98
          label: 'SUnit Camp Smalltalk 3.1/STX TestRunner'
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
    99
          name: 'SUnit Camp Smalltalk 3.1/STX TestRunner'
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   100
          min: (Point 362 122)
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   101
          bounds: (Rectangle 0 0 493 175)
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   102
          icon: defaultIcon
39
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   103
        )
117
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   104
        component: 
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   105
       (SpecCollection
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   106
          collection: (
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   107
           (ActionButtonSpec
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   108
              label: 'Refresh'
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   109
              name: 'RefreshButton'
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   110
              layout: (LayoutFrame 0 0 0 0 75 0 48 0)
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   111
              activeHelpKey: refreshSuitesButton
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   112
              tabable: true
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   113
              model: refreshSuites
39
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   114
            )
117
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   115
           (MenuButtonSpec
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   116
              name: 'category'
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   117
              layout: (LayoutFrame 76 0 0 0 -216 1 24 0)
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   118
              activeHelpKey: suitesCategoryList
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   119
              tabable: true
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   120
              model: category
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   121
              menu: categoryList
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   122
            )
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   123
           (MenuButtonSpec
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   124
              name: tests
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   125
              layout: (LayoutFrame 76 0 24 0 -216 1 48 0)
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   126
              activeHelpKey: suiteSelection
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   127
              tabable: true
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   128
              model: script
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   129
              menu: scriptModel
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   130
              useIndex: true
39
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   131
            )
117
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   132
           (ActionButtonSpec
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   133
              label: 'Run'
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   134
              name: 'RunButton'
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   135
              layout: (LayoutFrame -215 1 0 0 -160 1 48 0)
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   136
              activeHelpKey: runButton
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   137
              tabable: true
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   138
              model: runTests
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   139
              enableChannel: enableRunButton
39
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   140
            )
117
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   141
           (ActionButtonSpec
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   142
              label: 'ReRun Defects'
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   143
              name: 'ReRunButton'
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   144
              layout: (LayoutFrame -159 1 0 0 -57 1 48 0)
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   145
              activeHelpKey: rerunDefectsButton
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   146
              tabable: true
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   147
              model: runDefects
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   148
              enableChannel: enableDefects
39
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   149
            )
117
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   150
           (ActionButtonSpec
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   151
              label: 'Run All'
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   152
              name: 'RunAllButton'
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   153
              layout: (LayoutFrame -56 1 0 0 0 1 48 0)
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   154
              activeHelpKey: runAllButton
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   155
              tabable: true
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   156
              model: runAllTests
39
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   157
            )
117
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   158
           (ProgressIndicatorSpec
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   159
              name: 'ProgressIndicator1'
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   160
              layout: (LayoutFrame 0 0.0 49 0 0 1.0 60 0)
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   161
              visibilityChannel: percentageIndicatorVisible
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   162
              model: percentageDone
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   163
              foregroundColor: (Color 32.999160753796 32.999160753796 0.0)
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   164
              backgroundColor: (Color 66.999313344015 66.999313344015 0.0)
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   165
              showPercentage: false
39
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   166
            )
117
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   167
           (LabelSpec
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   168
              label: '...'
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   169
              name: 'details'
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   170
              layout: (LayoutFrame 0 0 21 0.5 0 1 -25 1)
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   171
              labelChannel: details
51
5cc990c89e19 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 48
diff changeset
   172
            )
117
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   173
           (LabelSpec
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   174
              label: 'N/A'
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   175
              name: 'mode'
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   176
              layout: (LayoutFrame 0 0 49 0 0 1 35 0.5)
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   177
              style: (FontDescription Arial bold roman 14)
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   178
              labelChannel: mode
39
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   179
            )
117
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   180
           (MenuButtonSpec
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   181
              name: defects
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   182
              layout: (LayoutFrame 0 0 -24 1 -152 1 0 1)
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   183
              isOpaque: true
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   184
              flags: 40
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   185
              activeHelpKey: defectsList
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   186
              tabable: true
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   187
              model: selectionHolder
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   188
              initiallyDisabled: true
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   189
              enableChannel: enableDefects
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   190
              menu: defectMenu
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   191
              ignoreReselect: false
39
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   192
            )
117
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   193
           (ActionButtonSpec
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   194
              label: 'Browse'
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   195
              name: 'BrowseButton'
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   196
              layout: (LayoutFrame -151 1 -24 1 -76 1 0 1)
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   197
              activeHelpKey: browseButton
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   198
              tabable: true
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   199
              model: browseSelectedTestCase
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   200
              initiallyDisabled: true
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   201
              enableChannel: enableRunButton
39
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   202
            )
117
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   203
           (ActionButtonSpec
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   204
              label: 'Debug'
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   205
              name: 'DebugButton'
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   206
              layout: (LayoutFrame -75 1 -24 1 0 1 0 1)
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   207
              activeHelpKey: debugButton
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   208
              tabable: true
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   209
              model: debugSelectedFailure
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   210
              initiallyDisabled: true
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   211
              enableChannel: enableDebugButton
39
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   212
            )
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   213
           )
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   214
         
39
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   215
        )
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   216
      )
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   217
! !
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   218
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   219
!TestRunner class methodsFor:'opening'!
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   220
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   221
open
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   222
30
564780aca775 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 29
diff changeset
   223
	^super open
6
78bb1397e43d added rerun-defect tests; fixed button enable bug
Claus Gittinger <cg@exept.de>
parents: 5
diff changeset
   224
!
5
260add6a74a1 added #openOnTestCase
Claus Gittinger <cg@exept.de>
parents: 0
diff changeset
   225
260add6a74a1 added #openOnTestCase
Claus Gittinger <cg@exept.de>
parents: 0
diff changeset
   226
openOnTestCase:aTestCaseSubclass
76
4caa8b4f31d1 immediately run tests when started on a specified testCase
Claus Gittinger <cg@exept.de>
parents: 75
diff changeset
   227
    "open the testrunner,let it switch to and execute a testcase"
4caa8b4f31d1 immediately run tests when started on a specified testCase
Claus Gittinger <cg@exept.de>
parents: 75
diff changeset
   228
106
f5bd218630d4 Merge SUnit 3.1 changes
Stefan Vogel <sv@exept.de>
parents: 99
diff changeset
   229
    |runner|
5
260add6a74a1 added #openOnTestCase
Claus Gittinger <cg@exept.de>
parents: 0
diff changeset
   230
260add6a74a1 added #openOnTestCase
Claus Gittinger <cg@exept.de>
parents: 0
diff changeset
   231
    runner := self new.
76
4caa8b4f31d1 immediately run tests when started on a specified testCase
Claus Gittinger <cg@exept.de>
parents: 75
diff changeset
   232
    runner openAndWaitUntilVisible.
4caa8b4f31d1 immediately run tests when started on a specified testCase
Claus Gittinger <cg@exept.de>
parents: 75
diff changeset
   233
4caa8b4f31d1 immediately run tests when started on a specified testCase
Claus Gittinger <cg@exept.de>
parents: 75
diff changeset
   234
    "/ idx := runner scriptModel value indexOf:aTestCaseSubclass name.
4caa8b4f31d1 immediately run tests when started on a specified testCase
Claus Gittinger <cg@exept.de>
parents: 75
diff changeset
   235
    runner selectScriptNamed:aTestCaseSubclass name.
15
1c20b41c61a6 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 11
diff changeset
   236
76
4caa8b4f31d1 immediately run tests when started on a specified testCase
Claus Gittinger <cg@exept.de>
parents: 75
diff changeset
   237
    "/ the test should be executed by the TestRunner process (not the caller)
4caa8b4f31d1 immediately run tests when started on a specified testCase
Claus Gittinger <cg@exept.de>
parents: 75
diff changeset
   238
    "/ in oder for CTRL-C and busyCursor to work correctly.
4caa8b4f31d1 immediately run tests when started on a specified testCase
Claus Gittinger <cg@exept.de>
parents: 75
diff changeset
   239
    "/ Therefore, push event instead of executing the test here.
4caa8b4f31d1 immediately run tests when started on a specified testCase
Claus Gittinger <cg@exept.de>
parents: 75
diff changeset
   240
4caa8b4f31d1 immediately run tests when started on a specified testCase
Claus Gittinger <cg@exept.de>
parents: 75
diff changeset
   241
    "/runner runTests 
4caa8b4f31d1 immediately run tests when started on a specified testCase
Claus Gittinger <cg@exept.de>
parents: 75
diff changeset
   242
    runner enqueueMessage:#runTests for:runner arguments:nil.
5
260add6a74a1 added #openOnTestCase
Claus Gittinger <cg@exept.de>
parents: 0
diff changeset
   243
260add6a74a1 added #openOnTestCase
Claus Gittinger <cg@exept.de>
parents: 0
diff changeset
   244
    "
260add6a74a1 added #openOnTestCase
Claus Gittinger <cg@exept.de>
parents: 0
diff changeset
   245
     self openOnTestCase:CompilerTest
76
4caa8b4f31d1 immediately run tests when started on a specified testCase
Claus Gittinger <cg@exept.de>
parents: 75
diff changeset
   246
     self openOnTestCase:ConstraintTests
5
260add6a74a1 added #openOnTestCase
Claus Gittinger <cg@exept.de>
parents: 0
diff changeset
   247
    "
260add6a74a1 added #openOnTestCase
Claus Gittinger <cg@exept.de>
parents: 0
diff changeset
   248
! !
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   249
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   250
!TestRunner class methodsFor:'plugIn spec'!
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   251
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   252
aspectSelectors
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   253
    "This resource specification was automatically generated
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   254
     by the UIPainter of ST/X."
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   255
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   256
    "Do not manually edit this. If it is corrupted,
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   257
     the UIPainter may not be able to read the specification."
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   258
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   259
    "Return a description of exported aspects;
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   260
     these can be connected to aspects of an embedding application
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   261
     (if this app is embedded in a subCanvas)."
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   262
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   263
    ^ #(
39
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   264
        #script
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   265
      ).
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   266
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   267
! !
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   268
68
9fd111438d60 category renames (lower case)
Claus Gittinger <cg@exept.de>
parents: 65
diff changeset
   269
!TestRunner methodsFor:'accessing'!
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   270
39
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   271
category
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   272
    |holder|
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   273
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   274
    (holder := builder bindingAt:#category) isNil ifTrue:[
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   275
        holder := '* all *' asValue.
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   276
        builder aspectAt:#category put:holder.
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   277
        holder onChangeSend:#categorySelectionChanged to:self.
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   278
    ].
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   279
    ^ holder.
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   280
!
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   281
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   282
categoryList
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   283
    ^categoryModel isNil 
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   284
        ifTrue: [categoryModel := ValueHolder new. self updateCategoryList. categoryModel]
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   285
        ifFalse: [categoryModel]
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   286
!
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   287
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   288
defectMenu
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   289
    "automatically generated by UIPainter ..."
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   290
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   291
    "*** the code below creates a default model when invoked."
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   292
    "*** (which may not be the one you wanted)"
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   293
    "*** Please change as required and accept it in the browser."
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   294
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   295
    ^defectMenu isNil 
30
564780aca775 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 29
diff changeset
   296
	ifTrue: [defectMenu := OrderedCollection new asValue]
564780aca775 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 29
diff changeset
   297
	ifFalse: [defectMenu]
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   298
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   299
    "Modified: / 4.4.2000 / 20:00:31 / Sames"
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   300
!
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   301
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   302
defects
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   303
30
564780aca775 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 29
diff changeset
   304
	^self builder componentAt: #defects
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   305
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   306
    "Created: / 21.6.2000 / 12:19:29 / Sames"
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   307
!
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   308
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   309
details
106
f5bd218630d4 Merge SUnit 3.1 changes
Stefan Vogel <sv@exept.de>
parents: 99
diff changeset
   310
	"This method was generated by UIDefiner.  Any edits made here
f5bd218630d4 Merge SUnit 3.1 changes
Stefan Vogel <sv@exept.de>
parents: 99
diff changeset
   311
	may be lost whenever methods are automatically defined.  The
f5bd218630d4 Merge SUnit 3.1 changes
Stefan Vogel <sv@exept.de>
parents: 99
diff changeset
   312
	initialization provided below may have been preempted by an
f5bd218630d4 Merge SUnit 3.1 changes
Stefan Vogel <sv@exept.de>
parents: 99
diff changeset
   313
	initialize method."
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   314
106
f5bd218630d4 Merge SUnit 3.1 changes
Stefan Vogel <sv@exept.de>
parents: 99
diff changeset
   315
	^details isNil
f5bd218630d4 Merge SUnit 3.1 changes
Stefan Vogel <sv@exept.de>
parents: 99
diff changeset
   316
		ifTrue:
f5bd218630d4 Merge SUnit 3.1 changes
Stefan Vogel <sv@exept.de>
parents: 99
diff changeset
   317
			[details := '...' asValue]
f5bd218630d4 Merge SUnit 3.1 changes
Stefan Vogel <sv@exept.de>
parents: 99
diff changeset
   318
		ifFalse:
f5bd218630d4 Merge SUnit 3.1 changes
Stefan Vogel <sv@exept.de>
parents: 99
diff changeset
   319
			[details]
6
78bb1397e43d added rerun-defect tests; fixed button enable bug
Claus Gittinger <cg@exept.de>
parents: 5
diff changeset
   320
!
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   321
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   322
mode
30
564780aca775 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 29
diff changeset
   323
	"This method was generated by UIDefiner.  Any edits made here
564780aca775 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 29
diff changeset
   324
	may be lost whenever methods are automatically defined.  The
564780aca775 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 29
diff changeset
   325
	initialization provided below may have been preempted by an
564780aca775 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 29
diff changeset
   326
	initialize method."
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   327
30
564780aca775 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 29
diff changeset
   328
	^mode isNil
564780aca775 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 29
diff changeset
   329
		ifTrue:
564780aca775 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 29
diff changeset
   330
			[mode := 'N/A' asValue]
564780aca775 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 29
diff changeset
   331
		ifFalse:
564780aca775 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 29
diff changeset
   332
			[mode]
6
78bb1397e43d added rerun-defect tests; fixed button enable bug
Claus Gittinger <cg@exept.de>
parents: 5
diff changeset
   333
!
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   334
19
5942ea175447 percentage display
Claus Gittinger <cg@exept.de>
parents: 17
diff changeset
   335
percentageDone
178
31e594125d95 aspect holder setup
Claus Gittinger <cg@exept.de>
parents: 122
diff changeset
   336
    ^ builder valueAspectFor:#percentageDone initialValue:0
19
5942ea175447 percentage display
Claus Gittinger <cg@exept.de>
parents: 17
diff changeset
   337
!
5942ea175447 percentage display
Claus Gittinger <cg@exept.de>
parents: 17
diff changeset
   338
5942ea175447 percentage display
Claus Gittinger <cg@exept.de>
parents: 17
diff changeset
   339
percentageIndicatorVisible
178
31e594125d95 aspect holder setup
Claus Gittinger <cg@exept.de>
parents: 122
diff changeset
   340
    ^ builder valueAspectFor:#percentageIndicatorVisible initialValue:false
19
5942ea175447 percentage display
Claus Gittinger <cg@exept.de>
parents: 17
diff changeset
   341
!
5942ea175447 percentage display
Claus Gittinger <cg@exept.de>
parents: 17
diff changeset
   342
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   343
script
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   344
    "automatically generated by UIPainter ..."
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   345
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   346
    "*** the code below creates a default model when invoked."
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   347
    "*** (which may not be the one you wanted)"
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   348
    "*** Please change as required and accept it in the browser."
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   349
55
9d127479c584 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 51
diff changeset
   350
    script isNil ifTrue:[
9d127479c584 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 51
diff changeset
   351
        script := ValueHolder new.
9d127479c584 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 51
diff changeset
   352
        script onChangeSend:#suiteSelectionChanged to:self.
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   353
    ].
55
9d127479c584 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 51
diff changeset
   354
    ^ script.
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   355
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   356
    "Created: / 21.6.2000 / 12:04:36 / Sames"
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   357
!
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   358
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   359
script:something
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   360
    "automatically generated by UIPainter ..."
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   361
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   362
    "This method is used when I am embedded as subApplication,"
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   363
    "and the mainApp wants to connect its aspects to mine."
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   364
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   365
"/     |holder|
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   366
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   367
"/     (holder := builder bindingAt:#script) notNil ifTrue:[
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   368
"/         holder removeDependent:self.
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   369
"/     ].
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   370
    builder aspectAt:#script put:something.
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   371
"/     something notNil ifTrue:[
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   372
"/         something addDependent:self.
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   373
"/     ].
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   374
    ^ self.
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   375
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   376
    "Created: / 21.6.2000 / 12:04:36 / Sames"
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   377
!
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   378
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   379
scriptModel
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   380
    "This method was generated by UIDefiner.  Any edits made here
28
1a69b2a8a330 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 26
diff changeset
   381
        may be lost whenever methods are automatically defined.  The
1a69b2a8a330 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 26
diff changeset
   382
        initialization provided below may have been preempted by an
1a69b2a8a330 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 26
diff changeset
   383
        initialize method."
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   384
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   385
    ^scriptModel isNil 
28
1a69b2a8a330 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 26
diff changeset
   386
        ifTrue: [scriptModel := ValueHolder new. self updateSuitesList. scriptModel]
1a69b2a8a330 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 26
diff changeset
   387
        ifFalse: [scriptModel]
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   388
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   389
    "Modified: / 2.4.2000 / 14:37:51 / Sames"
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   390
!
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   391
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   392
selection
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   393
30
564780aca775 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 29
diff changeset
   394
	^defect
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   395
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   396
    "Created: / 4.4.2000 / 18:50:55 / Sames"
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   397
!
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   398
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   399
selectionHolder
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   400
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   401
    |holder|
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   402
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   403
    (holder := builder bindingAt:#selectionHolder) isNil ifTrue:[
117
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   404
        holder := AspectAdaptor new subject:self; forAspect:#selection.
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   405
        builder aspectAt:#selectionHolder put:holder.
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   406
    ].
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   407
    ^ holder.
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   408
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   409
    "Created: / 4.4.2000 / 18:46:08 / Sames"
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   410
    "Modified: / 4.4.2000 / 18:47:31 / Sames"
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   411
!
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   412
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   413
tests
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   414
30
564780aca775 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 29
diff changeset
   415
	^self builder componentAt: #tests
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   416
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   417
    "Created: / 4.4.2000 / 19:57:37 / Sames"
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   418
! !
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   419
68
9fd111438d60 category renames (lower case)
Claus Gittinger <cg@exept.de>
parents: 65
diff changeset
   420
!TestRunner methodsFor:'actions'!
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   421
10
ba0b2a768b40 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 8
diff changeset
   422
browseSelectedTestCase
75
5c7e806f9062 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 71
diff changeset
   423
    |testCaseName testCase browser defect singleCase|
10
ba0b2a768b40 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 8
diff changeset
   424
38
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   425
    testCaseName := self selectedScript.
115
cdf90adf1149 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 106
diff changeset
   426
    testCaseName isNil ifTrue:[
cdf90adf1149 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 106
diff changeset
   427
        testCaseName := self tests contents.
cdf90adf1149 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 106
diff changeset
   428
        testCaseName notNil ifTrue:[
cdf90adf1149 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 106
diff changeset
   429
            testCaseName := testCaseName string
cdf90adf1149 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 106
diff changeset
   430
        ]
cdf90adf1149 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 106
diff changeset
   431
    ].
38
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   432
    testCaseName notNil ifTrue:[
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   433
        testCase := Smalltalk at:testCaseName asSymbol.
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   434
        testCase notNil ifTrue:[
51
5cc990c89e19 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 48
diff changeset
   435
            browser := UserPreferences current systemBrowserClass openInClass:testCase.
5cc990c89e19 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 48
diff changeset
   436
            MessageNotUnderstood 
5cc990c89e19 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 48
diff changeset
   437
                handle:[:ex | ]
75
5c7e806f9062 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 71
diff changeset
   438
                do:[ 
5c7e806f9062 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 71
diff changeset
   439
                    (defect := self selection) notNil ifTrue:[
5c7e806f9062 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 71
diff changeset
   440
                        singleCase := allDefects at:defect ifAbsent: [nil].
5c7e806f9062 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 71
diff changeset
   441
                    ].
5c7e806f9062 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 71
diff changeset
   442
                    singleCase notNil ifTrue:[
5c7e806f9062 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 71
diff changeset
   443
                        browser switchToSelector:singleCase selector
5c7e806f9062 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 71
diff changeset
   444
                    ] ifFalse:[
5c7e806f9062 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 71
diff changeset
   445
                        browser selectProtocolsMatching:'test*'
5c7e806f9062 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 71
diff changeset
   446
                    ]
5c7e806f9062 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 71
diff changeset
   447
                ]
38
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   448
        ]
10
ba0b2a768b40 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 8
diff changeset
   449
    ]
ba0b2a768b40 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 8
diff changeset
   450
!
ba0b2a768b40 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 8
diff changeset
   451
39
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   452
categorySelectionChanged
60
c22cbb44b137 initial category selection
Claus Gittinger <cg@exept.de>
parents: 59
diff changeset
   453
    |selectedScriptIndex selectedScript oldSuitesList newSuitesList 
c22cbb44b137 initial category selection
Claus Gittinger <cg@exept.de>
parents: 59
diff changeset
   454
     newScriptSelectionIndex|
55
9d127479c584 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 51
diff changeset
   455
9d127479c584 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 51
diff changeset
   456
    selectedScriptIndex := self script value.
9d127479c584 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 51
diff changeset
   457
    oldSuitesList := self scriptModel value.
9d127479c584 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 51
diff changeset
   458
9d127479c584 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 51
diff changeset
   459
    selectedScriptIndex notNil ifTrue:[
9d127479c584 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 51
diff changeset
   460
        selectedScript := (oldSuitesList at:selectedScriptIndex) string
9d127479c584 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 51
diff changeset
   461
    ].
9d127479c584 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 51
diff changeset
   462
9d127479c584 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 51
diff changeset
   463
    self updateSuitesList.
9d127479c584 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 51
diff changeset
   464
9d127479c584 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 51
diff changeset
   465
    newSuitesList := self scriptModel value.
60
c22cbb44b137 initial category selection
Claus Gittinger <cg@exept.de>
parents: 59
diff changeset
   466
    newScriptSelectionIndex := newSuitesList indexOf:selectedScript.
c22cbb44b137 initial category selection
Claus Gittinger <cg@exept.de>
parents: 59
diff changeset
   467
c22cbb44b137 initial category selection
Claus Gittinger <cg@exept.de>
parents: 59
diff changeset
   468
    self script value:(newScriptSelectionIndex == 0 
c22cbb44b137 initial category selection
Claus Gittinger <cg@exept.de>
parents: 59
diff changeset
   469
                            ifTrue:[nil]
c22cbb44b137 initial category selection
Claus Gittinger <cg@exept.de>
parents: 59
diff changeset
   470
                            ifFalse:[newScriptSelectionIndex]).
39
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   471
!
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   472
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   473
debugSelectedFailure
106
f5bd218630d4 Merge SUnit 3.1 changes
Stefan Vogel <sv@exept.de>
parents: 99
diff changeset
   474
	self debugTest: self selection
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   475
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   476
    "Created: / 21.6.2000 / 10:58:58 / Sames"
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   477
    "Modified: / 21.6.2000 / 12:21:05 / Sames"
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   478
!
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   479
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   480
debugTest: aTestCaseName 
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   481
    | testCase |
29
ada4e34e33ec allow reselecting in defect-popUpList
Claus Gittinger <cg@exept.de>
parents: 28
diff changeset
   482
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   483
    defect := aTestCaseName.
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   484
    testCase := allDefects at: aTestCaseName ifAbsent: [nil].
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   485
    testCase isNil ifTrue: [^self enableDebugButton value: false].
75
5c7e806f9062 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 71
diff changeset
   486
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   487
    self enableDebugButton value: true.
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   488
    self displayMode: 'Debugging'.
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   489
75
5c7e806f9062 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 71
diff changeset
   490
    "/ defect := nil.
5c7e806f9062 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 71
diff changeset
   491
99
d334e58369fa *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 98
diff changeset
   492
    self withWaitCursorDo:[
d334e58369fa *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 98
diff changeset
   493
        ((result isFailure: testCase) "or:[(result isError: testCase)]")    
d334e58369fa *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 98
diff changeset
   494
            ifTrue: [testCase debugAsFailure]
d334e58369fa *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 98
diff changeset
   495
            ifFalse: [testCase debug].
d334e58369fa *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 98
diff changeset
   496
    ].
75
5c7e806f9062 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 71
diff changeset
   497
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   498
    "Modified: / 21.6.2000 / 12:12:09 / Sames"
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   499
!
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   500
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   501
enableDebugButton
178
31e594125d95 aspect holder setup
Claus Gittinger <cg@exept.de>
parents: 122
diff changeset
   502
    ^ builder valueAspectFor:#enableDebugButton initialValue:false
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   503
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   504
    "Created: / 21.6.2000 / 10:47:34 / Sames"
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   505
    "Modified: / 21.6.2000 / 10:51:07 / Sames"
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   506
!
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   507
117
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   508
enableDefects
178
31e594125d95 aspect holder setup
Claus Gittinger <cg@exept.de>
parents: 122
diff changeset
   509
    ^ builder valueAspectFor:#enableDefects initialValue:true
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   510
!
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   511
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   512
enableRunButton
178
31e594125d95 aspect holder setup
Claus Gittinger <cg@exept.de>
parents: 122
diff changeset
   513
    ^ builder valueAspectFor:#enableRunButton initialValue:true
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   514
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   515
    "Created: / 21.6.2000 / 10:47:34 / Sames"
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   516
!
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   517
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   518
refreshSuites
39
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   519
        self updateCategoryList.
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   520
        self updateSuitesList.
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   521
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   522
        self script value:nil.
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   523
        self tests selection: 0.
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   524
        self defects selection: 0.
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   525
        result := TestResult new.
64
ef347b158415 better passed info (name of last testCase in window)
james
parents: 61
diff changeset
   526
        lastTestCase := nil.
39
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   527
        self displayRefresh
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   528
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   529
    "Created: / 21.6.2000 / 10:58:34 / Sames"
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   530
    "Modified: / 21.6.2000 / 12:19:54 / Sames"
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   531
!
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   532
75
5c7e806f9062 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 71
diff changeset
   533
rerunSingleSelectedTestCase
5c7e806f9062 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 71
diff changeset
   534
    self debugTest:self defects contents
5c7e806f9062 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 71
diff changeset
   535
!
5c7e806f9062 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 71
diff changeset
   536
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   537
runAllTests
30
564780aca775 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 29
diff changeset
   538
	self runSuite: self allTestSuite
6
78bb1397e43d added rerun-defect tests; fixed button enable bug
Claus Gittinger <cg@exept.de>
parents: 5
diff changeset
   539
!
78bb1397e43d added rerun-defect tests; fixed button enable bug
Claus Gittinger <cg@exept.de>
parents: 5
diff changeset
   540
78bb1397e43d added rerun-defect tests; fixed button enable bug
Claus Gittinger <cg@exept.de>
parents: 5
diff changeset
   541
runDefectTests
30
564780aca775 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 29
diff changeset
   542
	| testSuite |
564780aca775 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 29
diff changeset
   543
	(testSuite := self defectTestSuite) notNil ifTrue:
564780aca775 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 29
diff changeset
   544
		[self runSuite: testSuite]
6
78bb1397e43d added rerun-defect tests; fixed button enable bug
Claus Gittinger <cg@exept.de>
parents: 5
diff changeset
   545
!
78bb1397e43d added rerun-defect tests; fixed button enable bug
Claus Gittinger <cg@exept.de>
parents: 5
diff changeset
   546
78bb1397e43d added rerun-defect tests; fixed button enable bug
Claus Gittinger <cg@exept.de>
parents: 5
diff changeset
   547
runDefects
78bb1397e43d added rerun-defect tests; fixed button enable bug
Claus Gittinger <cg@exept.de>
parents: 5
diff changeset
   548
    allDefects size > 0 ifTrue:[
30
564780aca775 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 29
diff changeset
   549
	^ self runDefectTests
6
78bb1397e43d added rerun-defect tests; fixed button enable bug
Claus Gittinger <cg@exept.de>
parents: 5
diff changeset
   550
    ].
78bb1397e43d added rerun-defect tests; fixed button enable bug
Claus Gittinger <cg@exept.de>
parents: 5
diff changeset
   551
    self runTests
78bb1397e43d added rerun-defect tests; fixed button enable bug
Claus Gittinger <cg@exept.de>
parents: 5
diff changeset
   552
!
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   553
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   554
runSuite: aTestSuite 
38
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   555
        |numTests|
19
5942ea175447 percentage display
Claus Gittinger <cg@exept.de>
parents: 17
diff changeset
   556
38
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   557
        "/ count the number of individual tests
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   558
        numTests := 0.
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   559
        aTestSuite tests do:[:eachTestOrSubSuite |
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   560
            (eachTestOrSubSuite isKindOf:TestSuite) ifTrue:[
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   561
                numTests := numTests + eachTestOrSubSuite tests size.
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   562
            ] ifFalse:[
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   563
                numTests := numTests + 1.
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   564
            ]
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   565
        ].
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   566
        numberOfTestsToRun := numTests.
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   567
        self percentageDone value:0.
19
5942ea175447 percentage display
Claus Gittinger <cg@exept.de>
parents: 17
diff changeset
   568
38
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   569
        Cursor 
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   570
            wait
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   571
                showWhile:[
39
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   572
                    |errorCountBefore failureCountBefore|
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   573
38
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   574
                    self displayRunning.
94
f692704fac60 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 91
diff changeset
   575
                    "/ self displayDetails: '...'.
38
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   576
                    aTestSuite addDependentToHierachy: self.
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   577
                    result := TestResult new.
64
ef347b158415 better passed info (name of last testCase in window)
james
parents: 61
diff changeset
   578
                    lastTestCase := aTestSuite.
38
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   579
                    self showPercentageIndicator.
25
ab09e4669864 change progressindicators color to red, when an error occurs.
Claus Gittinger <cg@exept.de>
parents: 24
diff changeset
   580
39
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   581
                    errorCountBefore :=  result errorCount.
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   582
                    failureCountBefore := result failureCount.
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   583
38
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   584
                    [
122
61e456491017 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 121
diff changeset
   585
                        |caseName|
61e456491017 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 121
diff changeset
   586
39
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   587
                        aTestSuite 
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   588
                            run:result 
122
61e456491017 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 121
diff changeset
   589
                            beforeEachDo:[:eachCase :eachResult |  
61e456491017 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 121
diff changeset
   590
                                caseName := eachCase testName.
39
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   591
                                caseName size == 0 ifTrue:[self halt].
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   592
61
b9204f5672ae show each cases selector as it is executed
Claus Gittinger <cg@exept.de>
parents: 60
diff changeset
   593
                                self displayDetails:(caseName , '...').
80
473ad00a8b9b rememberFailed/ok
Claus Gittinger <cg@exept.de>
parents: 79
diff changeset
   594
                                self testPassed:caseName
61
b9204f5672ae show each cases selector as it is executed
Claus Gittinger <cg@exept.de>
parents: 60
diff changeset
   595
                            ]
122
61e456491017 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 121
diff changeset
   596
                            afterEachDo:[:eachCase :eachResult |  
61e456491017 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 121
diff changeset
   597
                                |passed errorCountAfter failureCountAfter|
61
b9204f5672ae show each cases selector as it is executed
Claus Gittinger <cg@exept.de>
parents: 60
diff changeset
   598
39
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   599
                                errorCountAfter := result errorCount.
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   600
                                failureCountAfter := result failureCount.
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   601
                                passed := (errorCountAfter == errorCountBefore) 
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   602
                                          & (failureCountAfter == failureCountBefore).
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   603
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   604
                                passed == true ifTrue:[
70
2ff4508f476d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 68
diff changeset
   605
"/                                    testsWhichPassed add:caseName.
2ff4508f476d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 68
diff changeset
   606
"/                                    testsWhichFailed remove:caseName ifAbsent:nil.
39
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   607
                                ] ifFalse:[
87
24e88e7f5d88 remember individual failed cases.
Claus Gittinger <cg@exept.de>
parents: 86
diff changeset
   608
                                    self testFailed:caseName withResult:result
39
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   609
                                ].
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   610
                                errorCountBefore :=  errorCountAfter.
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   611
                                failureCountBefore := failureCountAfter
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   612
                            ]
38
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   613
                    ] ensure: [
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   614
                        aTestSuite removeDependentFromHierachy: self.
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   615
                        self hidePercentageIndicator.
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   616
                        self displayNormalColorInProgress.
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   617
                    ].
70
2ff4508f476d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 68
diff changeset
   618
38
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   619
                    self updateWindow
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   620
                ]
6
78bb1397e43d added rerun-defect tests; fixed button enable bug
Claus Gittinger <cg@exept.de>
parents: 5
diff changeset
   621
!
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   622
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   623
runTests
30
564780aca775 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 29
diff changeset
   624
	| testSuite |
564780aca775 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 29
diff changeset
   625
	(testSuite := self freshTestSuite) notNil ifTrue:
564780aca775 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 29
diff changeset
   626
		[self runSuite: testSuite]
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   627
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   628
    "Modified: / 2.4.2000 / 14:16:10 / Sames"
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   629
!
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   630
11
fd4882a6997f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 10
diff changeset
   631
scriptSelectionChanged
15
1c20b41c61a6 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 11
diff changeset
   632
    self enableRunButton value:(self script value notNil).
11
fd4882a6997f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 10
diff changeset
   633
!
fd4882a6997f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 10
diff changeset
   634
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   635
selection: aValue
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   636
117
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   637
    aValue = '' ifTrue:[
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   638
        defect := aValue.
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   639
    ] ifFalse:[
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   640
        self debugTest: aValue
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   641
    ].
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   642
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   643
    "Created: / 4.4.2000 / 18:54:09 / Sames"
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   644
    "Modified: / 4.4.2000 / 19:01:33 / Sames"
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   645
!
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   646
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   647
suiteSelectionChanged
8
fff4f606a2d1 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 6
diff changeset
   648
    |ok className description  cls|
6
78bb1397e43d added rerun-defect tests; fixed button enable bug
Claus Gittinger <cg@exept.de>
parents: 5
diff changeset
   649
121
491b0f280eb9 *** empty log message ***
penk
parents: 117
diff changeset
   650
    ok := self freshTestSuite notNil and:[self script value notNil].
491b0f280eb9 *** empty log message ***
penk
parents: 117
diff changeset
   651
    "/ self enableRunButton value:ok.
491b0f280eb9 *** empty log message ***
penk
parents: 117
diff changeset
   652
    self enableRunButton value:self script value notNil.
117
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   653
    self enableDefects value:(ok and:[allDefects size > 0]).
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   654
8
fff4f606a2d1 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 6
diff changeset
   655
    self script value notNil ifTrue:[
42
Claus Gittinger <cg@exept.de>
parents: 39
diff changeset
   656
        className := self selectedScript string.
38
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   657
        (ok and:[className notNil]) ifTrue:[
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   658
            cls := Smalltalk at:className.
65
019891d527b7 implements -> includesSelector
Claus Gittinger <cg@exept.de>
parents: 64
diff changeset
   659
            (cls class includesSelector:#description) ifTrue:[
38
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   660
                description := cls description.
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   661
            ]
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   662
        ].
8
fff4f606a2d1 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 6
diff changeset
   663
    ].
17
7cadcf8bb19d checkin from browser
Claus Gittinger <cg@exept.de>
parents: 16
diff changeset
   664
    self displayDetails:nil.
7cadcf8bb19d checkin from browser
Claus Gittinger <cg@exept.de>
parents: 16
diff changeset
   665
    self displayMode: (description ? '').
7cadcf8bb19d checkin from browser
Claus Gittinger <cg@exept.de>
parents: 16
diff changeset
   666
    self displayGray.
8
fff4f606a2d1 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 6
diff changeset
   667
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   668
    "Created: / 21.6.2000 / 11:31:25 / Sames"
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   669
    "Modified: / 21.6.2000 / 11:32:54 / Sames"
24
0f897c4468c3 automatic update, when new testCase classes arrive,
Claus Gittinger <cg@exept.de>
parents: 23
diff changeset
   670
!
0f897c4468c3 automatic update, when new testCase classes arrive,
Claus Gittinger <cg@exept.de>
parents: 23
diff changeset
   671
39
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   672
suitesInCategory
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   673
        |suites cat allCategories|
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   674
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   675
        cat := self category value.
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   676
        allCategories := (cat = '* all *').
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   677
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   678
        suites := TestCase allSubclasses 
84
bdbea68d8bc5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 83
diff changeset
   679
                        select:[:each | 
bdbea68d8bc5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 83
diff changeset
   680
                                true "/ "cg:TestCaseHelper is gone -->" ((each isSubclassOf:TestCaseHelper) not) 
91
df3c9d5e7295 hide abstract testCase classes in testCase-list;
Claus Gittinger <cg@exept.de>
parents: 89
diff changeset
   681
                                and:[each isAbstract not
df3c9d5e7295 hide abstract testCase classes in testCase-list;
Claus Gittinger <cg@exept.de>
parents: 89
diff changeset
   682
                                and:[allCategories or:[cat = each category]]]]
39
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   683
                        thenCollect: [:each | each name].
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   684
        suites sort.
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   685
        ^ suites 
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   686
!
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   687
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   688
updateCategoryList
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   689
        |categories|
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   690
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   691
        categories := (TestCase allSubclasses collect: [:each | each category]) asSet asOrderedCollection.
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   692
        categories sort.
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   693
        categories addFirst:'* all *'.
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   694
        self categoryList value:categories.
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   695
!
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   696
24
0f897c4468c3 automatic update, when new testCase classes arrive,
Claus Gittinger <cg@exept.de>
parents: 23
diff changeset
   697
updateSuitesList
38
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   698
        |suites|
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   699
39
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   700
        suites := self suitesInCategory.
38
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   701
        suites := suites 
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   702
                    collect:[:eachSuiteName |
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   703
                                (testsWhichFailed includes:eachSuiteName) ifTrue:[
42
Claus Gittinger <cg@exept.de>
parents: 39
diff changeset
   704
                                    eachSuiteName colorizeAllWith:(self class colorForFailedTests).
38
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   705
                                ] ifFalse:[     
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   706
                                    (testsWhichPassed includes:eachSuiteName) ifTrue:[
42
Claus Gittinger <cg@exept.de>
parents: 39
diff changeset
   707
                                        eachSuiteName colorizeAllWith:(self class colorForPassedTests).
38
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   708
                                    ] ifFalse:[
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   709
                                        eachSuiteName
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   710
                                    ]
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   711
                                ].
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   712
                            ].
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   713
        self scriptModel value: suites.
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   714
! !
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   715
68
9fd111438d60 category renames (lower case)
Claus Gittinger <cg@exept.de>
parents: 65
diff changeset
   716
!TestRunner methodsFor:'private'!
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   717
80
473ad00a8b9b rememberFailed/ok
Claus Gittinger <cg@exept.de>
parents: 79
diff changeset
   718
addToFailedTests:caseName
473ad00a8b9b rememberFailed/ok
Claus Gittinger <cg@exept.de>
parents: 79
diff changeset
   719
    testsWhichFailed add:caseName.
473ad00a8b9b rememberFailed/ok
Claus Gittinger <cg@exept.de>
parents: 79
diff changeset
   720
!
473ad00a8b9b rememberFailed/ok
Claus Gittinger <cg@exept.de>
parents: 79
diff changeset
   721
473ad00a8b9b rememberFailed/ok
Claus Gittinger <cg@exept.de>
parents: 79
diff changeset
   722
addToPassedTests:caseName
473ad00a8b9b rememberFailed/ok
Claus Gittinger <cg@exept.de>
parents: 79
diff changeset
   723
    testsWhichPassed add:caseName.
473ad00a8b9b rememberFailed/ok
Claus Gittinger <cg@exept.de>
parents: 79
diff changeset
   724
!
473ad00a8b9b rememberFailed/ok
Claus Gittinger <cg@exept.de>
parents: 79
diff changeset
   725
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   726
allTestSuite
38
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   727
        "generate and return a suite for all tests, except SUnitTests"
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   728
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   729
        | tokens stream suite|
39
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   730
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   731
        tokens := (self suitesInCategory
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   732
                          collect: [:eachName | eachName ", '*' " ])
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   733
                      copyWithout: 'SUnitTest* '.
38
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   734
        stream := WriteStream on: String new.
39
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   735
        tokens do: [:each | stream nextPutAll:each; space].
38
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   736
        suite := TestSuitesScripter run: stream contents.
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   737
        suite name:'all'.
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   738
        ^ suite
6
78bb1397e43d added rerun-defect tests; fixed button enable bug
Claus Gittinger <cg@exept.de>
parents: 5
diff changeset
   739
!
78bb1397e43d added rerun-defect tests; fixed button enable bug
Claus Gittinger <cg@exept.de>
parents: 5
diff changeset
   740
78bb1397e43d added rerun-defect tests; fixed button enable bug
Claus Gittinger <cg@exept.de>
parents: 5
diff changeset
   741
defectTestSuite
38
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   742
        |suite|
6
78bb1397e43d added rerun-defect tests; fixed button enable bug
Claus Gittinger <cg@exept.de>
parents: 5
diff changeset
   743
38
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   744
        suite := TestSuite new.
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   745
        suite name:'defects'.
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   746
        allDefects keysAndValuesDo:[:nm :test |
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   747
            suite addTest:test.
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   748
        ].
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   749
        ^suite
6
78bb1397e43d added rerun-defect tests; fixed button enable bug
Claus Gittinger <cg@exept.de>
parents: 5
diff changeset
   750
!
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   751
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   752
formatTime: aTime 
30
564780aca775 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 29
diff changeset
   753
	aTime hours > 0 ifTrue: [^aTime hours printString , 'h'].
564780aca775 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 29
diff changeset
   754
	aTime minutes > 0 ifTrue: [^aTime minutes printString , 'min'].
564780aca775 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 29
diff changeset
   755
	^aTime seconds printString , ' sec'
6
78bb1397e43d added rerun-defect tests; fixed button enable bug
Claus Gittinger <cg@exept.de>
parents: 5
diff changeset
   756
!
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   757
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   758
freshTestSuite
94
f692704fac60 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 91
diff changeset
   759
        |tests suite|
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   760
98
8c4fa665d95e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 94
diff changeset
   761
        tests := self tests contents.
59
fff692d1da57 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 55
diff changeset
   762
        tests isNil ifTrue:[ ^ nil].
98
8c4fa665d95e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 94
diff changeset
   763
        tests := tests string.
94
f692704fac60 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 91
diff changeset
   764
        suite := TestSuitesScripter run: tests.
f692704fac60 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 91
diff changeset
   765
        ^ suite
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   766
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   767
    "Modified: / 4.4.2000 / 20:13:41 / Sames"
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   768
!
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   769
38
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   770
initialize
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   771
    super initialize.
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   772
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   773
    testsWhichPassed := Set new.
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   774
    testsWhichFailed := Set new.
83
0985c728925d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 82
diff changeset
   775
0985c728925d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 82
diff changeset
   776
    TestCase allSubclassesDo:[:cls |
87
24e88e7f5d88 remember individual failed cases.
Claus Gittinger <cg@exept.de>
parents: 86
diff changeset
   777
        |lastResult className|
24e88e7f5d88 remember individual failed cases.
Claus Gittinger <cg@exept.de>
parents: 86
diff changeset
   778
89
9f4e3bddee97 care for abstract testCase classes
Claus Gittinger <cg@exept.de>
parents: 88
diff changeset
   779
        cls isAbstract ifFalse:[
9f4e3bddee97 care for abstract testCase classes
Claus Gittinger <cg@exept.de>
parents: 88
diff changeset
   780
            lastResult := cls lastTestRunResultOrNil.
9f4e3bddee97 care for abstract testCase classes
Claus Gittinger <cg@exept.de>
parents: 88
diff changeset
   781
            lastResult notNil ifTrue:[
9f4e3bddee97 care for abstract testCase classes
Claus Gittinger <cg@exept.de>
parents: 88
diff changeset
   782
                className := cls name.
9f4e3bddee97 care for abstract testCase classes
Claus Gittinger <cg@exept.de>
parents: 88
diff changeset
   783
                lastResult == true ifTrue:[
9f4e3bddee97 care for abstract testCase classes
Claus Gittinger <cg@exept.de>
parents: 88
diff changeset
   784
                    testsWhichPassed add:className
9f4e3bddee97 care for abstract testCase classes
Claus Gittinger <cg@exept.de>
parents: 88
diff changeset
   785
                ] ifFalse:[
9f4e3bddee97 care for abstract testCase classes
Claus Gittinger <cg@exept.de>
parents: 88
diff changeset
   786
                    testsWhichFailed add:className
9f4e3bddee97 care for abstract testCase classes
Claus Gittinger <cg@exept.de>
parents: 88
diff changeset
   787
                ]
83
0985c728925d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 82
diff changeset
   788
            ]
0985c728925d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 82
diff changeset
   789
        ]
0985c728925d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 82
diff changeset
   790
    ].
38
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   791
!
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   792
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   793
postOpenWith: aBuilder 
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   794
    "automatically generated by UIPainter ..."
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   795
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   796
    super postOpenWith: aBuilder.
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   797
    self tests defaultLabel: ''.
11
fd4882a6997f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 10
diff changeset
   798
    "/ self tests selection: 'ExampleSetTest'. self script value:1.
15
1c20b41c61a6 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 11
diff changeset
   799
1c20b41c61a6 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 11
diff changeset
   800
    self enableRunButton value: (self script value notNil).
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   801
    self enableDebugButton value: false.
117
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   802
    self enableDefects value: false.
24
0f897c4468c3 automatic update, when new testCase classes arrive,
Claus Gittinger <cg@exept.de>
parents: 23
diff changeset
   803
    self script onChangeSend: #suiteSelectionChanged to:self.
0f897c4468c3 automatic update, when new testCase classes arrive,
Claus Gittinger <cg@exept.de>
parents: 23
diff changeset
   804
0f897c4468c3 automatic update, when new testCase classes arrive,
Claus Gittinger <cg@exept.de>
parents: 23
diff changeset
   805
    Smalltalk addDependent:self.
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   806
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   807
    "Created: / 2.4.2000 / 14:44:32 / Sames"
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   808
    "Modified: / 21.6.2000 / 12:06:30 / Sames"
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   809
!
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   810
24
0f897c4468c3 automatic update, when new testCase classes arrive,
Claus Gittinger <cg@exept.de>
parents: 23
diff changeset
   811
release
0f897c4468c3 automatic update, when new testCase classes arrive,
Claus Gittinger <cg@exept.de>
parents: 23
diff changeset
   812
    Smalltalk removeDependent:self.
0f897c4468c3 automatic update, when new testCase classes arrive,
Claus Gittinger <cg@exept.de>
parents: 23
diff changeset
   813
    super release.
0f897c4468c3 automatic update, when new testCase classes arrive,
Claus Gittinger <cg@exept.de>
parents: 23
diff changeset
   814
!
0f897c4468c3 automatic update, when new testCase classes arrive,
Claus Gittinger <cg@exept.de>
parents: 23
diff changeset
   815
80
473ad00a8b9b rememberFailed/ok
Claus Gittinger <cg@exept.de>
parents: 79
diff changeset
   816
removeFromFailedTests:caseName
473ad00a8b9b rememberFailed/ok
Claus Gittinger <cg@exept.de>
parents: 79
diff changeset
   817
    testsWhichFailed remove:caseName ifAbsent:nil.
473ad00a8b9b rememberFailed/ok
Claus Gittinger <cg@exept.de>
parents: 79
diff changeset
   818
!
473ad00a8b9b rememberFailed/ok
Claus Gittinger <cg@exept.de>
parents: 79
diff changeset
   819
473ad00a8b9b rememberFailed/ok
Claus Gittinger <cg@exept.de>
parents: 79
diff changeset
   820
removeFromPassedTests:caseName
473ad00a8b9b rememberFailed/ok
Claus Gittinger <cg@exept.de>
parents: 79
diff changeset
   821
    testsWhichPassed remove:caseName ifAbsent:nil.
473ad00a8b9b rememberFailed/ok
Claus Gittinger <cg@exept.de>
parents: 79
diff changeset
   822
!
473ad00a8b9b rememberFailed/ok
Claus Gittinger <cg@exept.de>
parents: 79
diff changeset
   823
60
c22cbb44b137 initial category selection
Claus Gittinger <cg@exept.de>
parents: 59
diff changeset
   824
selectScriptNamed:aScriptName
c22cbb44b137 initial category selection
Claus Gittinger <cg@exept.de>
parents: 59
diff changeset
   825
    |idx scriptClass|
c22cbb44b137 initial category selection
Claus Gittinger <cg@exept.de>
parents: 59
diff changeset
   826
c22cbb44b137 initial category selection
Claus Gittinger <cg@exept.de>
parents: 59
diff changeset
   827
    idx := self scriptModel value indexOf:aScriptName.
c22cbb44b137 initial category selection
Claus Gittinger <cg@exept.de>
parents: 59
diff changeset
   828
    self script value:idx.
c22cbb44b137 initial category selection
Claus Gittinger <cg@exept.de>
parents: 59
diff changeset
   829
c22cbb44b137 initial category selection
Claus Gittinger <cg@exept.de>
parents: 59
diff changeset
   830
    self updateCategoryList.
c22cbb44b137 initial category selection
Claus Gittinger <cg@exept.de>
parents: 59
diff changeset
   831
c22cbb44b137 initial category selection
Claus Gittinger <cg@exept.de>
parents: 59
diff changeset
   832
    scriptClass := Smalltalk at:aScriptName asSymbol.
c22cbb44b137 initial category selection
Claus Gittinger <cg@exept.de>
parents: 59
diff changeset
   833
    scriptClass notNil ifTrue:[
c22cbb44b137 initial category selection
Claus Gittinger <cg@exept.de>
parents: 59
diff changeset
   834
        self category value:scriptClass category.
c22cbb44b137 initial category selection
Claus Gittinger <cg@exept.de>
parents: 59
diff changeset
   835
    ]
c22cbb44b137 initial category selection
Claus Gittinger <cg@exept.de>
parents: 59
diff changeset
   836
!
c22cbb44b137 initial category selection
Claus Gittinger <cg@exept.de>
parents: 59
diff changeset
   837
38
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   838
selectedScript
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   839
    |scriptIndex|
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   840
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   841
    scriptIndex := self script value.
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   842
    scriptIndex isNil ifTrue:[
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   843
        ^ ''
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   844
    ].
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   845
    ^ self scriptModel value at:scriptIndex ifAbsent:nil.
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   846
!
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   847
87
24e88e7f5d88 remember individual failed cases.
Claus Gittinger <cg@exept.de>
parents: 86
diff changeset
   848
testFailed:caseName withResult:result
80
473ad00a8b9b rememberFailed/ok
Claus Gittinger <cg@exept.de>
parents: 79
diff changeset
   849
    |cls|
88
Claus Gittinger <cg@exept.de>
parents: 87
diff changeset
   850
80
473ad00a8b9b rememberFailed/ok
Claus Gittinger <cg@exept.de>
parents: 79
diff changeset
   851
    self removeFromPassedTests:caseName.
473ad00a8b9b rememberFailed/ok
Claus Gittinger <cg@exept.de>
parents: 79
diff changeset
   852
    self addToFailedTests:caseName.
473ad00a8b9b rememberFailed/ok
Claus Gittinger <cg@exept.de>
parents: 79
diff changeset
   853
473ad00a8b9b rememberFailed/ok
Claus Gittinger <cg@exept.de>
parents: 79
diff changeset
   854
    (cls := Smalltalk classNamed:caseName) notNil ifTrue:[
87
24e88e7f5d88 remember individual failed cases.
Claus Gittinger <cg@exept.de>
parents: 86
diff changeset
   855
        cls rememberFailedTestRunWithResult:result.
80
473ad00a8b9b rememberFailed/ok
Claus Gittinger <cg@exept.de>
parents: 79
diff changeset
   856
    ].
473ad00a8b9b rememberFailed/ok
Claus Gittinger <cg@exept.de>
parents: 79
diff changeset
   857
!
473ad00a8b9b rememberFailed/ok
Claus Gittinger <cg@exept.de>
parents: 79
diff changeset
   858
473ad00a8b9b rememberFailed/ok
Claus Gittinger <cg@exept.de>
parents: 79
diff changeset
   859
testPassed:caseName
473ad00a8b9b rememberFailed/ok
Claus Gittinger <cg@exept.de>
parents: 79
diff changeset
   860
    |cls|
473ad00a8b9b rememberFailed/ok
Claus Gittinger <cg@exept.de>
parents: 79
diff changeset
   861
473ad00a8b9b rememberFailed/ok
Claus Gittinger <cg@exept.de>
parents: 79
diff changeset
   862
    self removeFromFailedTests:caseName.
473ad00a8b9b rememberFailed/ok
Claus Gittinger <cg@exept.de>
parents: 79
diff changeset
   863
    self addToPassedTests:caseName.
473ad00a8b9b rememberFailed/ok
Claus Gittinger <cg@exept.de>
parents: 79
diff changeset
   864
85
5051fb7e4b93 debugPrint
Claus Gittinger <cg@exept.de>
parents: 84
diff changeset
   865
"/    Transcript show:'passed: '; showCR:caseName.
5051fb7e4b93 debugPrint
Claus Gittinger <cg@exept.de>
parents: 84
diff changeset
   866
"/    Transcript show:'passed: '; showCR:caseName className.
80
473ad00a8b9b rememberFailed/ok
Claus Gittinger <cg@exept.de>
parents: 79
diff changeset
   867
473ad00a8b9b rememberFailed/ok
Claus Gittinger <cg@exept.de>
parents: 79
diff changeset
   868
    (cls := Smalltalk classNamed:caseName) notNil ifTrue:[
473ad00a8b9b rememberFailed/ok
Claus Gittinger <cg@exept.de>
parents: 79
diff changeset
   869
        cls rememberPassedTestRun
473ad00a8b9b rememberFailed/ok
Claus Gittinger <cg@exept.de>
parents: 79
diff changeset
   870
    ].
473ad00a8b9b rememberFailed/ok
Claus Gittinger <cg@exept.de>
parents: 79
diff changeset
   871
!
473ad00a8b9b rememberFailed/ok
Claus Gittinger <cg@exept.de>
parents: 79
diff changeset
   872
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   873
timeSinceLastPassAsString
30
564780aca775 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 29
diff changeset
   874
	lastPass isNil ifTrue: [^''].
564780aca775 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 29
diff changeset
   875
	^', ' , (self formatTime: (Time now subtractTime: lastPass getSeconds)) , ' since last Pass'
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   876
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   877
    "Modified: / 3.4.2000 / 19:17:11 / Sames"
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   878
! !
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   879
68
9fd111438d60 category renames (lower case)
Claus Gittinger <cg@exept.de>
parents: 65
diff changeset
   880
!TestRunner methodsFor:'updating'!
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   881
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   882
displayColor: aColorValue
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   883
30
564780aca775 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 29
diff changeset
   884
	(builder componentAt: #mode) widget insideColor: aColorValue.
564780aca775 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 29
diff changeset
   885
	(builder componentAt: #details) widget insideColor: aColorValue.
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   886
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   887
    "Modified: / 2.4.2000 / 14:21:42 / Sames"
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   888
!
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   889
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   890
displayDefault
30
564780aca775 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 29
diff changeset
   891
	self displayColor: self tests backgroundColor
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   892
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   893
    "Created: / 21.6.2000 / 12:28:06 / Sames"
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   894
    "Modified: / 21.6.2000 / 12:35:09 / Sames"
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   895
!
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   896
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   897
displayDefects: aCollection 
117
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   898
    | failedTests|
6
78bb1397e43d added rerun-defect tests; fixed button enable bug
Claus Gittinger <cg@exept.de>
parents: 5
diff changeset
   899
    aCollection isEmpty ifTrue: [
117
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   900
        self selectionHolder value:''.
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   901
        self enableDefects value:false.
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   902
        self enableDebugButton value:false.
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   903
        ^ self
6
78bb1397e43d added rerun-defect tests; fixed button enable bug
Claus Gittinger <cg@exept.de>
parents: 5
diff changeset
   904
    ].
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   905
    allDefects := Dictionary new.
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   906
    aCollection do: [:each | allDefects at: each printString put: each].
117
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   907
    failedTests := allDefects keys asOrderedCollection sort.
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   908
    self defectMenu value: failedTests.
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   909
"/    self selectionHolder value: failedTests first withoutNotifying:self.
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   910
    self enableDefects value:true.
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   911
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   912
    "Modified: / 4.4.2000 / 20:11:06 / Sames"
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   913
!
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   914
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   915
displayDetails: aString 
94
f692704fac60 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 91
diff changeset
   916
    self details value: aString.
f692704fac60 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 91
diff changeset
   917
    self repairDamage.
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   918
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   919
    "Modified: / 21.6.2000 / 11:10:14 / Sames"
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   920
!
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   921
25
ab09e4669864 change progressindicators color to red, when an error occurs.
Claus Gittinger <cg@exept.de>
parents: 24
diff changeset
   922
displayErrorColorInProgress
ab09e4669864 change progressindicators color to red, when an error occurs.
Claus Gittinger <cg@exept.de>
parents: 24
diff changeset
   923
    (self builder componentAt:#ProgressIndicator1)
42
Claus Gittinger <cg@exept.de>
parents: 39
diff changeset
   924
      foregroundColor: (self class colorForFailedTests).
25
ab09e4669864 change progressindicators color to red, when an error occurs.
Claus Gittinger <cg@exept.de>
parents: 24
diff changeset
   925
ab09e4669864 change progressindicators color to red, when an error occurs.
Claus Gittinger <cg@exept.de>
parents: 24
diff changeset
   926
"/    (self builder componentAt:#ProgressIndicator1)
ab09e4669864 change progressindicators color to red, when an error occurs.
Claus Gittinger <cg@exept.de>
parents: 24
diff changeset
   927
"/      backgroundColor: (Color red:67 green:0 blue:0)
ab09e4669864 change progressindicators color to red, when an error occurs.
Claus Gittinger <cg@exept.de>
parents: 24
diff changeset
   928
!
ab09e4669864 change progressindicators color to red, when an error occurs.
Claus Gittinger <cg@exept.de>
parents: 24
diff changeset
   929
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   930
displayFail
30
564780aca775 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 29
diff changeset
   931
	self displayRed.
564780aca775 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 29
diff changeset
   932
	self displayMode: 'Fail'.
564780aca775 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 29
diff changeset
   933
	self displayDetails: result printString.
6
78bb1397e43d added rerun-defect tests; fixed button enable bug
Claus Gittinger <cg@exept.de>
parents: 5
diff changeset
   934
!
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   935
17
7cadcf8bb19d checkin from browser
Claus Gittinger <cg@exept.de>
parents: 16
diff changeset
   936
displayGray
30
564780aca775 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 29
diff changeset
   937
	self displayColor: (View defaultViewBackgroundColor)
17
7cadcf8bb19d checkin from browser
Claus Gittinger <cg@exept.de>
parents: 16
diff changeset
   938
!
7cadcf8bb19d checkin from browser
Claus Gittinger <cg@exept.de>
parents: 16
diff changeset
   939
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   940
displayGreen
30
564780aca775 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 29
diff changeset
   941
	self displayColor: ColorValue green
6
78bb1397e43d added rerun-defect tests; fixed button enable bug
Claus Gittinger <cg@exept.de>
parents: 5
diff changeset
   942
!
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   943
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   944
displayMode: aString 
51
5cc990c89e19 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 48
diff changeset
   945
        self mode value: aString.
5cc990c89e19 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 48
diff changeset
   946
        self repairDamage.
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   947
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   948
    "Modified: / 21.6.2000 / 11:14:19 / Sames"
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   949
!
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   950
25
ab09e4669864 change progressindicators color to red, when an error occurs.
Claus Gittinger <cg@exept.de>
parents: 24
diff changeset
   951
displayNormalColorInProgress
ab09e4669864 change progressindicators color to red, when an error occurs.
Claus Gittinger <cg@exept.de>
parents: 24
diff changeset
   952
    (self builder componentAt:#ProgressIndicator1)
ab09e4669864 change progressindicators color to red, when an error occurs.
Claus Gittinger <cg@exept.de>
parents: 24
diff changeset
   953
      foregroundColor: (Color red:33 green:33 blue:0);
ab09e4669864 change progressindicators color to red, when an error occurs.
Claus Gittinger <cg@exept.de>
parents: 24
diff changeset
   954
      backgroundColor: (Color red:67 green:67 blue:0)
ab09e4669864 change progressindicators color to red, when an error occurs.
Claus Gittinger <cg@exept.de>
parents: 24
diff changeset
   955
!
ab09e4669864 change progressindicators color to red, when an error occurs.
Claus Gittinger <cg@exept.de>
parents: 24
diff changeset
   956
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   957
displayPass
55
9d127479c584 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 51
diff changeset
   958
    self displayGreen.
64
ef347b158415 better passed info (name of last testCase in window)
james
parents: 61
diff changeset
   959
    (lastTestCase notNil 
ef347b158415 better passed info (name of last testCase in window)
james
parents: 61
diff changeset
   960
    and:[lastTestCase name notNil]) ifTrue:[
ef347b158415 better passed info (name of last testCase in window)
james
parents: 61
diff changeset
   961
        self displayMode: 'Pass ' , lastTestCase name.
ef347b158415 better passed info (name of last testCase in window)
james
parents: 61
diff changeset
   962
    ] ifFalse:[
ef347b158415 better passed info (name of last testCase in window)
james
parents: 61
diff changeset
   963
        self displayMode: 'Pass'.
ef347b158415 better passed info (name of last testCase in window)
james
parents: 61
diff changeset
   964
    ].
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   965
    self displayDetails: result runCount printString , ' run' , self timeSinceLastPassAsString.
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   966
    lastPass := Time now
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   967
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   968
    "Modified: / 21.6.2000 / 12:14:52 / Sames"
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   969
!
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   970
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   971
displayRed
30
564780aca775 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 29
diff changeset
   972
	self displayColor: ColorValue red.
6
78bb1397e43d added rerun-defect tests; fixed button enable bug
Claus Gittinger <cg@exept.de>
parents: 5
diff changeset
   973
!
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   974
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   975
displayRefresh
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   976
    self displayMode: 'N/A'.
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   977
    self displayDetails:'...'.
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   978
    self updateDefects.
79
a8743653e4bb dont disable trun button
Claus Gittinger <cg@exept.de>
parents: 78
diff changeset
   979
    self enableRunButton value: (self script value notNil).
117
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   980
    self enableDefects value: false.
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   981
    self enableDebugButton value: false.
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   982
    self displayDefault
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   983
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   984
    "Created: / 21.6.2000 / 12:14:11 / Sames"
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   985
    "Modified: / 21.6.2000 / 12:28:24 / Sames"
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   986
!
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   987
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   988
displayRunning
39
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   989
        self displayRunning:(self selectedScript ? 'all') string.
38
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   990
!
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   991
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   992
displayRunning:scriptName
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   993
        self displayYellow.
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   994
        self displayMode:('running ' , scriptName allBold). 
61
b9204f5672ae show each cases selector as it is executed
Claus Gittinger <cg@exept.de>
parents: 60
diff changeset
   995
"/        self displayDetails: '...'.
38
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   996
        self repairDamage.
6
78bb1397e43d added rerun-defect tests; fixed button enable bug
Claus Gittinger <cg@exept.de>
parents: 5
diff changeset
   997
!
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   998
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   999
displayYellow
30
564780aca775 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 29
diff changeset
  1000
	self displayColor: ColorValue yellow
6
78bb1397e43d added rerun-defect tests; fixed button enable bug
Claus Gittinger <cg@exept.de>
parents: 5
diff changeset
  1001
!
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1002
25
ab09e4669864 change progressindicators color to red, when an error occurs.
Claus Gittinger <cg@exept.de>
parents: 24
diff changeset
  1003
hidePercentageIndicator
ab09e4669864 change progressindicators color to red, when an error occurs.
Claus Gittinger <cg@exept.de>
parents: 24
diff changeset
  1004
    self percentageIndicatorVisible value:false.
ab09e4669864 change progressindicators color to red, when an error occurs.
Claus Gittinger <cg@exept.de>
parents: 24
diff changeset
  1005
!
24
0f897c4468c3 automatic update, when new testCase classes arrive,
Claus Gittinger <cg@exept.de>
parents: 23
diff changeset
  1006
38
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
  1007
repairDamage
82
e0e67a37e1ec *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 80
diff changeset
  1008
    |wg|
e0e67a37e1ec *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 80
diff changeset
  1009
e0e67a37e1ec *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 80
diff changeset
  1010
    (wg := self windowGroup) notNil ifTrue:[wg  repairDamage].
38
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
  1011
!
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
  1012
25
ab09e4669864 change progressindicators color to red, when an error occurs.
Claus Gittinger <cg@exept.de>
parents: 24
diff changeset
  1013
showPercentageIndicator
ab09e4669864 change progressindicators color to red, when an error occurs.
Claus Gittinger <cg@exept.de>
parents: 24
diff changeset
  1014
    self percentageIndicatorVisible value:true.
ab09e4669864 change progressindicators color to red, when an error occurs.
Claus Gittinger <cg@exept.de>
parents: 24
diff changeset
  1015
!
ab09e4669864 change progressindicators color to red, when an error occurs.
Claus Gittinger <cg@exept.de>
parents: 24
diff changeset
  1016
30
564780aca775 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 29
diff changeset
  1017
update:something with:aParameter from:changedObject
24
0f897c4468c3 automatic update, when new testCase classes arrive,
Claus Gittinger <cg@exept.de>
parents: 23
diff changeset
  1018
    changedObject == Smalltalk ifTrue:[
30
564780aca775 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 29
diff changeset
  1019
        (changedObject isBehavior and:[changedObject isSubclassOf:TestCase]) ifTrue:[
28
1a69b2a8a330 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 26
diff changeset
  1020
            self updateSuitesList
1a69b2a8a330 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 26
diff changeset
  1021
        ].
1a69b2a8a330 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 26
diff changeset
  1022
        ^ self
25
ab09e4669864 change progressindicators color to red, when an error occurs.
Claus Gittinger <cg@exept.de>
parents: 24
diff changeset
  1023
    ].
ab09e4669864 change progressindicators color to red, when an error occurs.
Claus Gittinger <cg@exept.de>
parents: 24
diff changeset
  1024
38
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
  1025
    (changedObject isKindOf: TestSuite) ifTrue: [
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
  1026
        self displayRunning:changedObject name.
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
  1027
        ^ self
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
  1028
    ].
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
  1029
30
564780aca775 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 29
diff changeset
  1030
    (changedObject isKindOf: TestCase) ifTrue: [
28
1a69b2a8a330 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 26
diff changeset
  1031
        (result errorCount + result failureCount) > 0 ifTrue:[
1a69b2a8a330 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 26
diff changeset
  1032
            self displayErrorColorInProgress.
1a69b2a8a330 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 26
diff changeset
  1033
        ].
1a69b2a8a330 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 26
diff changeset
  1034
        self percentageDone value:(result runCount / numberOfTestsToRun * 100) rounded.
30
564780aca775 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 29
diff changeset
  1035
        self displayDetails: changedObject printString.
28
1a69b2a8a330 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 26
diff changeset
  1036
        ^ self
25
ab09e4669864 change progressindicators color to red, when an error occurs.
Claus Gittinger <cg@exept.de>
parents: 24
diff changeset
  1037
    ].
ab09e4669864 change progressindicators color to red, when an error occurs.
Claus Gittinger <cg@exept.de>
parents: 24
diff changeset
  1038
30
564780aca775 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 29
diff changeset
  1039
    super update:something with:aParameter from:changedObject
6
78bb1397e43d added rerun-defect tests; fixed button enable bug
Claus Gittinger <cg@exept.de>
parents: 5
diff changeset
  1040
!
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1041
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1042
updateDefects
38
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
  1043
        |script|
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
  1044
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
  1045
        script := self selectedScript.
39
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
  1046
        script notNil ifTrue:[script := script string].
38
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
  1047
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
  1048
        self displayDefects: result defects.
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
  1049
39
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
  1050
        script notNil ifTrue:[
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
  1051
            result hasPassed ifTrue:[
80
473ad00a8b9b rememberFailed/ok
Claus Gittinger <cg@exept.de>
parents: 79
diff changeset
  1052
                self testPassed:script
39
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
  1053
            ] ifFalse:[
87
24e88e7f5d88 remember individual failed cases.
Claus Gittinger <cg@exept.de>
parents: 86
diff changeset
  1054
                self testFailed:script withResult:result
39
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
  1055
            ].
38
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
  1056
        ].
6
78bb1397e43d added rerun-defect tests; fixed button enable bug
Claus Gittinger <cg@exept.de>
parents: 5
diff changeset
  1057
!
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1058
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1059
updateWindow
38
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
  1060
        result hasPassed
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
  1061
                ifTrue: [self displayPass]
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
  1062
                ifFalse: [self displayFail].
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
  1063
        self updateDefects.
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
  1064
        self updateSuitesList. "/ for colors
6
78bb1397e43d added rerun-defect tests; fixed button enable bug
Claus Gittinger <cg@exept.de>
parents: 5
diff changeset
  1065
! !
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1066
11
fd4882a6997f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 10
diff changeset
  1067
!TestRunner class methodsFor:'documentation'!
fd4882a6997f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 10
diff changeset
  1068
fd4882a6997f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 10
diff changeset
  1069
version
178
31e594125d95 aspect holder setup
Claus Gittinger <cg@exept.de>
parents: 122
diff changeset
  1070
    ^ '$Header: /cvs/stx/stx/goodies/sunit/TestRunner.st,v 1.57 2008-03-10 09:26:30 cg Exp $'
11
fd4882a6997f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 10
diff changeset
  1071
! !