TestRunner.st
author Claus Gittinger <cg@exept.de>
Thu, 18 Aug 2005 13:44:32 +0200
changeset 122 61e456491017
parent 121 491b0f280eb9
child 178 31e594125d95
permissions -rw-r--r--
*** empty log message ***
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
5942ea175447 percentage display
Claus Gittinger <cg@exept.de>
parents: 17
diff changeset
   336
    |holder|
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
    (holder := builder bindingAt:#percentageDone) isNil ifTrue:[
30
564780aca775 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 29
diff changeset
   339
	holder := 0 asValue.
564780aca775 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 29
diff changeset
   340
	builder aspectAt:#percentageDone put:holder.
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
    ^ holder.
5942ea175447 percentage display
Claus Gittinger <cg@exept.de>
parents: 17
diff changeset
   343
!
5942ea175447 percentage display
Claus Gittinger <cg@exept.de>
parents: 17
diff changeset
   344
5942ea175447 percentage display
Claus Gittinger <cg@exept.de>
parents: 17
diff changeset
   345
percentageIndicatorVisible
5942ea175447 percentage display
Claus Gittinger <cg@exept.de>
parents: 17
diff changeset
   346
    |holder|
5942ea175447 percentage display
Claus Gittinger <cg@exept.de>
parents: 17
diff changeset
   347
5942ea175447 percentage display
Claus Gittinger <cg@exept.de>
parents: 17
diff changeset
   348
    (holder := builder bindingAt:#percentageIndicatorVisible) isNil ifTrue:[
30
564780aca775 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 29
diff changeset
   349
	holder := false asValue.
564780aca775 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 29
diff changeset
   350
	builder aspectAt:#percentageIndicatorVisible put:holder.
19
5942ea175447 percentage display
Claus Gittinger <cg@exept.de>
parents: 17
diff changeset
   351
    ].
5942ea175447 percentage display
Claus Gittinger <cg@exept.de>
parents: 17
diff changeset
   352
    ^ holder.
5942ea175447 percentage display
Claus Gittinger <cg@exept.de>
parents: 17
diff changeset
   353
!
5942ea175447 percentage display
Claus Gittinger <cg@exept.de>
parents: 17
diff changeset
   354
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   355
script
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   356
    "automatically generated by UIPainter ..."
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
    "*** the code below creates a default model when invoked."
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   359
    "*** (which may not be the one you wanted)"
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   360
    "*** Please change as required and accept it in the browser."
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   361
55
9d127479c584 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 51
diff changeset
   362
    script isNil ifTrue:[
9d127479c584 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 51
diff changeset
   363
        script := ValueHolder new.
9d127479c584 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 51
diff changeset
   364
        script onChangeSend:#suiteSelectionChanged to:self.
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   365
    ].
55
9d127479c584 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 51
diff changeset
   366
    ^ script.
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   367
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   368
    "Created: / 21.6.2000 / 12:04:36 / Sames"
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
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   371
script:something
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   372
    "automatically generated by UIPainter ..."
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
    "This method is used when I am embedded as subApplication,"
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   375
    "and the mainApp wants to connect its aspects to mine."
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   376
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   377
"/     |holder|
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
"/     (holder := builder bindingAt:#script) notNil ifTrue:[
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   380
"/         holder removeDependent:self.
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   381
"/     ].
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   382
    builder aspectAt:#script put:something.
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   383
"/     something notNil ifTrue:[
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   384
"/         something addDependent:self.
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   385
"/     ].
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   386
    ^ self.
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   387
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   388
    "Created: / 21.6.2000 / 12:04:36 / Sames"
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   389
!
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
scriptModel
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   392
    "This method was generated by UIDefiner.  Any edits made here
28
1a69b2a8a330 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 26
diff changeset
   393
        may be lost whenever methods are automatically defined.  The
1a69b2a8a330 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 26
diff changeset
   394
        initialization provided below may have been preempted by an
1a69b2a8a330 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 26
diff changeset
   395
        initialize method."
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   396
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   397
    ^scriptModel isNil 
28
1a69b2a8a330 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 26
diff changeset
   398
        ifTrue: [scriptModel := ValueHolder new. self updateSuitesList. scriptModel]
1a69b2a8a330 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 26
diff changeset
   399
        ifFalse: [scriptModel]
0
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
    "Modified: / 2.4.2000 / 14:37:51 / Sames"
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
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   404
selection
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   405
30
564780aca775 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 29
diff changeset
   406
	^defect
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   407
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   408
    "Created: / 4.4.2000 / 18:50:55 / Sames"
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   409
!
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   410
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   411
selectionHolder
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
    |holder|
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   414
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   415
    (holder := builder bindingAt:#selectionHolder) isNil ifTrue:[
117
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   416
        holder := AspectAdaptor new subject:self; forAspect:#selection.
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   417
        builder aspectAt:#selectionHolder put:holder.
0
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
    ^ holder.
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   420
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   421
    "Created: / 4.4.2000 / 18:46:08 / Sames"
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   422
    "Modified: / 4.4.2000 / 18:47:31 / Sames"
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   423
!
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   424
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   425
tests
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   426
30
564780aca775 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 29
diff changeset
   427
	^self builder componentAt: #tests
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   428
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   429
    "Created: / 4.4.2000 / 19:57:37 / Sames"
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   430
! !
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   431
68
9fd111438d60 category renames (lower case)
Claus Gittinger <cg@exept.de>
parents: 65
diff changeset
   432
!TestRunner methodsFor:'actions'!
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   433
10
ba0b2a768b40 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 8
diff changeset
   434
browseSelectedTestCase
75
5c7e806f9062 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 71
diff changeset
   435
    |testCaseName testCase browser defect singleCase|
10
ba0b2a768b40 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 8
diff changeset
   436
38
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   437
    testCaseName := self selectedScript.
115
cdf90adf1149 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 106
diff changeset
   438
    testCaseName isNil ifTrue:[
cdf90adf1149 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 106
diff changeset
   439
        testCaseName := self tests contents.
cdf90adf1149 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 106
diff changeset
   440
        testCaseName notNil ifTrue:[
cdf90adf1149 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 106
diff changeset
   441
            testCaseName := testCaseName string
cdf90adf1149 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 106
diff changeset
   442
        ]
cdf90adf1149 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 106
diff changeset
   443
    ].
38
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   444
    testCaseName notNil ifTrue:[
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   445
        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
   446
        testCase notNil ifTrue:[
51
5cc990c89e19 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 48
diff changeset
   447
            browser := UserPreferences current systemBrowserClass openInClass:testCase.
5cc990c89e19 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 48
diff changeset
   448
            MessageNotUnderstood 
5cc990c89e19 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 48
diff changeset
   449
                handle:[:ex | ]
75
5c7e806f9062 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 71
diff changeset
   450
                do:[ 
5c7e806f9062 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 71
diff changeset
   451
                    (defect := self selection) notNil ifTrue:[
5c7e806f9062 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 71
diff changeset
   452
                        singleCase := allDefects at:defect ifAbsent: [nil].
5c7e806f9062 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 71
diff changeset
   453
                    ].
5c7e806f9062 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 71
diff changeset
   454
                    singleCase notNil ifTrue:[
5c7e806f9062 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 71
diff changeset
   455
                        browser switchToSelector:singleCase selector
5c7e806f9062 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 71
diff changeset
   456
                    ] ifFalse:[
5c7e806f9062 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 71
diff changeset
   457
                        browser selectProtocolsMatching:'test*'
5c7e806f9062 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 71
diff changeset
   458
                    ]
5c7e806f9062 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 71
diff changeset
   459
                ]
38
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   460
        ]
10
ba0b2a768b40 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 8
diff changeset
   461
    ]
ba0b2a768b40 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 8
diff changeset
   462
!
ba0b2a768b40 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 8
diff changeset
   463
39
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   464
categorySelectionChanged
60
c22cbb44b137 initial category selection
Claus Gittinger <cg@exept.de>
parents: 59
diff changeset
   465
    |selectedScriptIndex selectedScript oldSuitesList newSuitesList 
c22cbb44b137 initial category selection
Claus Gittinger <cg@exept.de>
parents: 59
diff changeset
   466
     newScriptSelectionIndex|
55
9d127479c584 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 51
diff changeset
   467
9d127479c584 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 51
diff changeset
   468
    selectedScriptIndex := self script value.
9d127479c584 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 51
diff changeset
   469
    oldSuitesList := self scriptModel value.
9d127479c584 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 51
diff changeset
   470
9d127479c584 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 51
diff changeset
   471
    selectedScriptIndex notNil ifTrue:[
9d127479c584 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 51
diff changeset
   472
        selectedScript := (oldSuitesList at:selectedScriptIndex) string
9d127479c584 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 51
diff changeset
   473
    ].
9d127479c584 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 51
diff changeset
   474
9d127479c584 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 51
diff changeset
   475
    self updateSuitesList.
9d127479c584 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 51
diff changeset
   476
9d127479c584 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 51
diff changeset
   477
    newSuitesList := self scriptModel value.
60
c22cbb44b137 initial category selection
Claus Gittinger <cg@exept.de>
parents: 59
diff changeset
   478
    newScriptSelectionIndex := newSuitesList indexOf:selectedScript.
c22cbb44b137 initial category selection
Claus Gittinger <cg@exept.de>
parents: 59
diff changeset
   479
c22cbb44b137 initial category selection
Claus Gittinger <cg@exept.de>
parents: 59
diff changeset
   480
    self script value:(newScriptSelectionIndex == 0 
c22cbb44b137 initial category selection
Claus Gittinger <cg@exept.de>
parents: 59
diff changeset
   481
                            ifTrue:[nil]
c22cbb44b137 initial category selection
Claus Gittinger <cg@exept.de>
parents: 59
diff changeset
   482
                            ifFalse:[newScriptSelectionIndex]).
39
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   483
!
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   484
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   485
debugSelectedFailure
106
f5bd218630d4 Merge SUnit 3.1 changes
Stefan Vogel <sv@exept.de>
parents: 99
diff changeset
   486
	self debugTest: self selection
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   487
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   488
    "Created: / 21.6.2000 / 10:58:58 / Sames"
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   489
    "Modified: / 21.6.2000 / 12:21:05 / Sames"
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   490
!
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   491
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   492
debugTest: aTestCaseName 
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   493
    | testCase |
29
ada4e34e33ec allow reselecting in defect-popUpList
Claus Gittinger <cg@exept.de>
parents: 28
diff changeset
   494
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   495
    defect := aTestCaseName.
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   496
    testCase := allDefects at: aTestCaseName ifAbsent: [nil].
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   497
    testCase isNil ifTrue: [^self enableDebugButton value: false].
75
5c7e806f9062 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 71
diff changeset
   498
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   499
    self enableDebugButton value: true.
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   500
    self displayMode: 'Debugging'.
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   501
75
5c7e806f9062 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 71
diff changeset
   502
    "/ defect := nil.
5c7e806f9062 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 71
diff changeset
   503
99
d334e58369fa *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 98
diff changeset
   504
    self withWaitCursorDo:[
d334e58369fa *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 98
diff changeset
   505
        ((result isFailure: testCase) "or:[(result isError: testCase)]")    
d334e58369fa *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 98
diff changeset
   506
            ifTrue: [testCase debugAsFailure]
d334e58369fa *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 98
diff changeset
   507
            ifFalse: [testCase debug].
d334e58369fa *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 98
diff changeset
   508
    ].
75
5c7e806f9062 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 71
diff changeset
   509
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   510
    "Modified: / 21.6.2000 / 12:12:09 / Sames"
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
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   513
enableDebugButton
117
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   514
    
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   515
    |holder|
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   516
117
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   517
    (holder := builder bindingAt:#enableDebugButton) isNil ifTrue:[
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   518
        holder := false asValue.
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   519
        builder aspectAt:#enableDebugButton put:holder
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   520
    ].
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   521
    ^ holder
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   522
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   523
    "Created: / 21.6.2000 / 10:47:34 / Sames"
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   524
    "Modified: / 21.6.2000 / 10:51:07 / Sames"
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   525
!
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   526
117
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   527
enableDefects
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
    |holder|
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   530
117
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   531
    (holder := builder bindingAt:#enableDefects) isNil ifTrue:[
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   532
        holder := true asValue.
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   533
        builder aspectAt:#enableDefects put:holder.
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   534
    ].
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   535
    ^ holder.
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   536
!
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   537
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   538
enableRunButton
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   539
    "automatically generated by UIPainter ..."
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   540
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   541
    "*** the code below creates a default model when invoked."
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   542
    "*** (which may not be the one you wanted)"
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   543
    "*** Please change as required and accept it in the browser."
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   544
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   545
    |holder|
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   546
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   547
    (holder := builder bindingAt:#enableRunButton) isNil ifTrue:[
30
564780aca775 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 29
diff changeset
   548
	holder := true asValue.
564780aca775 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 29
diff changeset
   549
	builder aspectAt:#enableRunButton put:holder.
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   550
"/        holder addDependent:self.
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   551
    ].
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   552
    ^ holder.
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
    "Created: / 21.6.2000 / 10:47:34 / Sames"
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   555
!
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   556
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   557
refreshSuites
39
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   558
        self updateCategoryList.
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   559
        self updateSuitesList.
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   560
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   561
        self script value:nil.
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   562
        self tests selection: 0.
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   563
        self defects selection: 0.
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   564
        result := TestResult new.
64
ef347b158415 better passed info (name of last testCase in window)
james
parents: 61
diff changeset
   565
        lastTestCase := nil.
39
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   566
        self displayRefresh
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   567
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   568
    "Created: / 21.6.2000 / 10:58:34 / Sames"
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   569
    "Modified: / 21.6.2000 / 12:19:54 / Sames"
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   570
!
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   571
75
5c7e806f9062 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 71
diff changeset
   572
rerunSingleSelectedTestCase
5c7e806f9062 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 71
diff changeset
   573
    self debugTest:self defects contents
5c7e806f9062 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 71
diff changeset
   574
!
5c7e806f9062 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 71
diff changeset
   575
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   576
runAllTests
30
564780aca775 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 29
diff changeset
   577
	self runSuite: self allTestSuite
6
78bb1397e43d added rerun-defect tests; fixed button enable bug
Claus Gittinger <cg@exept.de>
parents: 5
diff changeset
   578
!
78bb1397e43d added rerun-defect tests; fixed button enable bug
Claus Gittinger <cg@exept.de>
parents: 5
diff changeset
   579
78bb1397e43d added rerun-defect tests; fixed button enable bug
Claus Gittinger <cg@exept.de>
parents: 5
diff changeset
   580
runDefectTests
30
564780aca775 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 29
diff changeset
   581
	| testSuite |
564780aca775 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 29
diff changeset
   582
	(testSuite := self defectTestSuite) notNil ifTrue:
564780aca775 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 29
diff changeset
   583
		[self runSuite: testSuite]
6
78bb1397e43d added rerun-defect tests; fixed button enable bug
Claus Gittinger <cg@exept.de>
parents: 5
diff changeset
   584
!
78bb1397e43d added rerun-defect tests; fixed button enable bug
Claus Gittinger <cg@exept.de>
parents: 5
diff changeset
   585
78bb1397e43d added rerun-defect tests; fixed button enable bug
Claus Gittinger <cg@exept.de>
parents: 5
diff changeset
   586
runDefects
78bb1397e43d added rerun-defect tests; fixed button enable bug
Claus Gittinger <cg@exept.de>
parents: 5
diff changeset
   587
    allDefects size > 0 ifTrue:[
30
564780aca775 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 29
diff changeset
   588
	^ self runDefectTests
6
78bb1397e43d added rerun-defect tests; fixed button enable bug
Claus Gittinger <cg@exept.de>
parents: 5
diff changeset
   589
    ].
78bb1397e43d added rerun-defect tests; fixed button enable bug
Claus Gittinger <cg@exept.de>
parents: 5
diff changeset
   590
    self runTests
78bb1397e43d added rerun-defect tests; fixed button enable bug
Claus Gittinger <cg@exept.de>
parents: 5
diff changeset
   591
!
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   592
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   593
runSuite: aTestSuite 
38
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   594
        |numTests|
19
5942ea175447 percentage display
Claus Gittinger <cg@exept.de>
parents: 17
diff changeset
   595
38
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   596
        "/ 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
   597
        numTests := 0.
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   598
        aTestSuite tests do:[:eachTestOrSubSuite |
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   599
            (eachTestOrSubSuite isKindOf:TestSuite) ifTrue:[
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   600
                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
   601
            ] ifFalse:[
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   602
                numTests := numTests + 1.
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   603
            ]
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   604
        ].
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   605
        numberOfTestsToRun := numTests.
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   606
        self percentageDone value:0.
19
5942ea175447 percentage display
Claus Gittinger <cg@exept.de>
parents: 17
diff changeset
   607
38
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   608
        Cursor 
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   609
            wait
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   610
                showWhile:[
39
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   611
                    |errorCountBefore failureCountBefore|
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
                    self displayRunning.
94
f692704fac60 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 91
diff changeset
   614
                    "/ self displayDetails: '...'.
38
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   615
                    aTestSuite addDependentToHierachy: self.
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   616
                    result := TestResult new.
64
ef347b158415 better passed info (name of last testCase in window)
james
parents: 61
diff changeset
   617
                    lastTestCase := aTestSuite.
38
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   618
                    self showPercentageIndicator.
25
ab09e4669864 change progressindicators color to red, when an error occurs.
Claus Gittinger <cg@exept.de>
parents: 24
diff changeset
   619
39
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   620
                    errorCountBefore :=  result errorCount.
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   621
                    failureCountBefore := result failureCount.
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   622
38
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   623
                    [
122
61e456491017 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 121
diff changeset
   624
                        |caseName|
61e456491017 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 121
diff changeset
   625
39
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   626
                        aTestSuite 
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   627
                            run:result 
122
61e456491017 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 121
diff changeset
   628
                            beforeEachDo:[:eachCase :eachResult |  
61e456491017 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 121
diff changeset
   629
                                caseName := eachCase testName.
39
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   630
                                caseName size == 0 ifTrue:[self halt].
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   631
61
b9204f5672ae show each cases selector as it is executed
Claus Gittinger <cg@exept.de>
parents: 60
diff changeset
   632
                                self displayDetails:(caseName , '...').
80
473ad00a8b9b rememberFailed/ok
Claus Gittinger <cg@exept.de>
parents: 79
diff changeset
   633
                                self testPassed:caseName
61
b9204f5672ae show each cases selector as it is executed
Claus Gittinger <cg@exept.de>
parents: 60
diff changeset
   634
                            ]
122
61e456491017 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 121
diff changeset
   635
                            afterEachDo:[:eachCase :eachResult |  
61e456491017 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 121
diff changeset
   636
                                |passed errorCountAfter failureCountAfter|
61
b9204f5672ae show each cases selector as it is executed
Claus Gittinger <cg@exept.de>
parents: 60
diff changeset
   637
39
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   638
                                errorCountAfter := result errorCount.
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   639
                                failureCountAfter := result failureCount.
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   640
                                passed := (errorCountAfter == errorCountBefore) 
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   641
                                          & (failureCountAfter == failureCountBefore).
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   642
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   643
                                passed == true ifTrue:[
70
2ff4508f476d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 68
diff changeset
   644
"/                                    testsWhichPassed add:caseName.
2ff4508f476d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 68
diff changeset
   645
"/                                    testsWhichFailed remove:caseName ifAbsent:nil.
39
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   646
                                ] ifFalse:[
87
24e88e7f5d88 remember individual failed cases.
Claus Gittinger <cg@exept.de>
parents: 86
diff changeset
   647
                                    self testFailed:caseName withResult:result
39
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   648
                                ].
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   649
                                errorCountBefore :=  errorCountAfter.
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   650
                                failureCountBefore := failureCountAfter
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   651
                            ]
38
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   652
                    ] ensure: [
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   653
                        aTestSuite removeDependentFromHierachy: self.
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   654
                        self hidePercentageIndicator.
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   655
                        self displayNormalColorInProgress.
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   656
                    ].
70
2ff4508f476d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 68
diff changeset
   657
38
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   658
                    self updateWindow
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   659
                ]
6
78bb1397e43d added rerun-defect tests; fixed button enable bug
Claus Gittinger <cg@exept.de>
parents: 5
diff changeset
   660
!
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   661
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   662
runTests
30
564780aca775 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 29
diff changeset
   663
	| testSuite |
564780aca775 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 29
diff changeset
   664
	(testSuite := self freshTestSuite) notNil ifTrue:
564780aca775 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 29
diff changeset
   665
		[self runSuite: testSuite]
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   666
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   667
    "Modified: / 2.4.2000 / 14:16:10 / Sames"
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   668
!
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   669
11
fd4882a6997f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 10
diff changeset
   670
scriptSelectionChanged
15
1c20b41c61a6 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 11
diff changeset
   671
    self enableRunButton value:(self script value notNil).
11
fd4882a6997f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 10
diff changeset
   672
!
fd4882a6997f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 10
diff changeset
   673
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   674
selection: aValue
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   675
117
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   676
    aValue = '' ifTrue:[
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   677
        defect := aValue.
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   678
    ] ifFalse:[
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   679
        self debugTest: aValue
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   680
    ].
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   681
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   682
    "Created: / 4.4.2000 / 18:54:09 / Sames"
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   683
    "Modified: / 4.4.2000 / 19:01:33 / Sames"
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   684
!
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   685
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   686
suiteSelectionChanged
8
fff4f606a2d1 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 6
diff changeset
   687
    |ok className description  cls|
6
78bb1397e43d added rerun-defect tests; fixed button enable bug
Claus Gittinger <cg@exept.de>
parents: 5
diff changeset
   688
121
491b0f280eb9 *** empty log message ***
penk
parents: 117
diff changeset
   689
    ok := self freshTestSuite notNil and:[self script value notNil].
491b0f280eb9 *** empty log message ***
penk
parents: 117
diff changeset
   690
    "/ self enableRunButton value:ok.
491b0f280eb9 *** empty log message ***
penk
parents: 117
diff changeset
   691
    self enableRunButton value:self script value notNil.
117
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   692
    self enableDefects value:(ok and:[allDefects size > 0]).
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   693
8
fff4f606a2d1 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 6
diff changeset
   694
    self script value notNil ifTrue:[
42
Claus Gittinger <cg@exept.de>
parents: 39
diff changeset
   695
        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
   696
        (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
   697
            cls := Smalltalk at:className.
65
019891d527b7 implements -> includesSelector
Claus Gittinger <cg@exept.de>
parents: 64
diff changeset
   698
            (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
   699
                description := cls description.
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   700
            ]
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   701
        ].
8
fff4f606a2d1 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 6
diff changeset
   702
    ].
17
7cadcf8bb19d checkin from browser
Claus Gittinger <cg@exept.de>
parents: 16
diff changeset
   703
    self displayDetails:nil.
7cadcf8bb19d checkin from browser
Claus Gittinger <cg@exept.de>
parents: 16
diff changeset
   704
    self displayMode: (description ? '').
7cadcf8bb19d checkin from browser
Claus Gittinger <cg@exept.de>
parents: 16
diff changeset
   705
    self displayGray.
8
fff4f606a2d1 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 6
diff changeset
   706
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   707
    "Created: / 21.6.2000 / 11:31:25 / Sames"
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   708
    "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
   709
!
0f897c4468c3 automatic update, when new testCase classes arrive,
Claus Gittinger <cg@exept.de>
parents: 23
diff changeset
   710
39
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   711
suitesInCategory
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   712
        |suites cat allCategories|
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   713
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   714
        cat := self category value.
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   715
        allCategories := (cat = '* all *').
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   716
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   717
        suites := TestCase allSubclasses 
84
bdbea68d8bc5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 83
diff changeset
   718
                        select:[:each | 
bdbea68d8bc5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 83
diff changeset
   719
                                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
   720
                                and:[each isAbstract not
df3c9d5e7295 hide abstract testCase classes in testCase-list;
Claus Gittinger <cg@exept.de>
parents: 89
diff changeset
   721
                                and:[allCategories or:[cat = each category]]]]
39
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   722
                        thenCollect: [:each | each name].
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   723
        suites sort.
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   724
        ^ suites 
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   725
!
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   726
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   727
updateCategoryList
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   728
        |categories|
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   729
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   730
        categories := (TestCase allSubclasses collect: [:each | each category]) asSet asOrderedCollection.
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   731
        categories sort.
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   732
        categories addFirst:'* all *'.
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   733
        self categoryList value:categories.
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   734
!
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   735
24
0f897c4468c3 automatic update, when new testCase classes arrive,
Claus Gittinger <cg@exept.de>
parents: 23
diff changeset
   736
updateSuitesList
38
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   737
        |suites|
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   738
39
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   739
        suites := self suitesInCategory.
38
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   740
        suites := suites 
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   741
                    collect:[:eachSuiteName |
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   742
                                (testsWhichFailed includes:eachSuiteName) ifTrue:[
42
Claus Gittinger <cg@exept.de>
parents: 39
diff changeset
   743
                                    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
   744
                                ] ifFalse:[     
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   745
                                    (testsWhichPassed includes:eachSuiteName) ifTrue:[
42
Claus Gittinger <cg@exept.de>
parents: 39
diff changeset
   746
                                        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
   747
                                    ] ifFalse:[
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   748
                                        eachSuiteName
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   749
                                    ]
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   750
                                ].
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   751
                            ].
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   752
        self scriptModel value: suites.
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   753
! !
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   754
68
9fd111438d60 category renames (lower case)
Claus Gittinger <cg@exept.de>
parents: 65
diff changeset
   755
!TestRunner methodsFor:'private'!
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   756
80
473ad00a8b9b rememberFailed/ok
Claus Gittinger <cg@exept.de>
parents: 79
diff changeset
   757
addToFailedTests:caseName
473ad00a8b9b rememberFailed/ok
Claus Gittinger <cg@exept.de>
parents: 79
diff changeset
   758
    testsWhichFailed add:caseName.
473ad00a8b9b rememberFailed/ok
Claus Gittinger <cg@exept.de>
parents: 79
diff changeset
   759
!
473ad00a8b9b rememberFailed/ok
Claus Gittinger <cg@exept.de>
parents: 79
diff changeset
   760
473ad00a8b9b rememberFailed/ok
Claus Gittinger <cg@exept.de>
parents: 79
diff changeset
   761
addToPassedTests:caseName
473ad00a8b9b rememberFailed/ok
Claus Gittinger <cg@exept.de>
parents: 79
diff changeset
   762
    testsWhichPassed add:caseName.
473ad00a8b9b rememberFailed/ok
Claus Gittinger <cg@exept.de>
parents: 79
diff changeset
   763
!
473ad00a8b9b rememberFailed/ok
Claus Gittinger <cg@exept.de>
parents: 79
diff changeset
   764
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   765
allTestSuite
38
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   766
        "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
   767
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   768
        | tokens stream suite|
39
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   769
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   770
        tokens := (self suitesInCategory
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   771
                          collect: [:eachName | eachName ", '*' " ])
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   772
                      copyWithout: 'SUnitTest* '.
38
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   773
        stream := WriteStream on: String new.
39
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
   774
        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
   775
        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
   776
        suite name:'all'.
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   777
        ^ suite
6
78bb1397e43d added rerun-defect tests; fixed button enable bug
Claus Gittinger <cg@exept.de>
parents: 5
diff changeset
   778
!
78bb1397e43d added rerun-defect tests; fixed button enable bug
Claus Gittinger <cg@exept.de>
parents: 5
diff changeset
   779
78bb1397e43d added rerun-defect tests; fixed button enable bug
Claus Gittinger <cg@exept.de>
parents: 5
diff changeset
   780
defectTestSuite
38
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   781
        |suite|
6
78bb1397e43d added rerun-defect tests; fixed button enable bug
Claus Gittinger <cg@exept.de>
parents: 5
diff changeset
   782
38
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   783
        suite := TestSuite new.
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   784
        suite name:'defects'.
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   785
        allDefects keysAndValuesDo:[:nm :test |
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   786
            suite addTest:test.
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   787
        ].
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   788
        ^suite
6
78bb1397e43d added rerun-defect tests; fixed button enable bug
Claus Gittinger <cg@exept.de>
parents: 5
diff changeset
   789
!
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   790
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   791
formatTime: aTime 
30
564780aca775 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 29
diff changeset
   792
	aTime hours > 0 ifTrue: [^aTime hours printString , 'h'].
564780aca775 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 29
diff changeset
   793
	aTime minutes > 0 ifTrue: [^aTime minutes printString , 'min'].
564780aca775 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 29
diff changeset
   794
	^aTime seconds printString , ' sec'
6
78bb1397e43d added rerun-defect tests; fixed button enable bug
Claus Gittinger <cg@exept.de>
parents: 5
diff changeset
   795
!
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   796
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   797
freshTestSuite
94
f692704fac60 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 91
diff changeset
   798
        |tests suite|
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   799
98
8c4fa665d95e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 94
diff changeset
   800
        tests := self tests contents.
59
fff692d1da57 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 55
diff changeset
   801
        tests isNil ifTrue:[ ^ nil].
98
8c4fa665d95e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 94
diff changeset
   802
        tests := tests string.
94
f692704fac60 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 91
diff changeset
   803
        suite := TestSuitesScripter run: tests.
f692704fac60 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 91
diff changeset
   804
        ^ suite
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   805
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   806
    "Modified: / 4.4.2000 / 20:13:41 / Sames"
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   807
!
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   808
38
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   809
initialize
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   810
    super initialize.
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   811
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   812
    testsWhichPassed := Set new.
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   813
    testsWhichFailed := Set new.
83
0985c728925d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 82
diff changeset
   814
0985c728925d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 82
diff changeset
   815
    TestCase allSubclassesDo:[:cls |
87
24e88e7f5d88 remember individual failed cases.
Claus Gittinger <cg@exept.de>
parents: 86
diff changeset
   816
        |lastResult className|
24e88e7f5d88 remember individual failed cases.
Claus Gittinger <cg@exept.de>
parents: 86
diff changeset
   817
89
9f4e3bddee97 care for abstract testCase classes
Claus Gittinger <cg@exept.de>
parents: 88
diff changeset
   818
        cls isAbstract ifFalse:[
9f4e3bddee97 care for abstract testCase classes
Claus Gittinger <cg@exept.de>
parents: 88
diff changeset
   819
            lastResult := cls lastTestRunResultOrNil.
9f4e3bddee97 care for abstract testCase classes
Claus Gittinger <cg@exept.de>
parents: 88
diff changeset
   820
            lastResult notNil ifTrue:[
9f4e3bddee97 care for abstract testCase classes
Claus Gittinger <cg@exept.de>
parents: 88
diff changeset
   821
                className := cls name.
9f4e3bddee97 care for abstract testCase classes
Claus Gittinger <cg@exept.de>
parents: 88
diff changeset
   822
                lastResult == true ifTrue:[
9f4e3bddee97 care for abstract testCase classes
Claus Gittinger <cg@exept.de>
parents: 88
diff changeset
   823
                    testsWhichPassed add:className
9f4e3bddee97 care for abstract testCase classes
Claus Gittinger <cg@exept.de>
parents: 88
diff changeset
   824
                ] ifFalse:[
9f4e3bddee97 care for abstract testCase classes
Claus Gittinger <cg@exept.de>
parents: 88
diff changeset
   825
                    testsWhichFailed add:className
9f4e3bddee97 care for abstract testCase classes
Claus Gittinger <cg@exept.de>
parents: 88
diff changeset
   826
                ]
83
0985c728925d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 82
diff changeset
   827
            ]
0985c728925d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 82
diff changeset
   828
        ]
0985c728925d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 82
diff changeset
   829
    ].
38
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   830
!
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   831
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   832
postOpenWith: aBuilder 
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   833
    "automatically generated by UIPainter ..."
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   834
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   835
    super postOpenWith: aBuilder.
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   836
    self tests defaultLabel: ''.
11
fd4882a6997f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 10
diff changeset
   837
    "/ self tests selection: 'ExampleSetTest'. self script value:1.
15
1c20b41c61a6 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 11
diff changeset
   838
1c20b41c61a6 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 11
diff changeset
   839
    self enableRunButton value: (self script value notNil).
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   840
    self enableDebugButton value: false.
117
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   841
    self enableDefects value: false.
24
0f897c4468c3 automatic update, when new testCase classes arrive,
Claus Gittinger <cg@exept.de>
parents: 23
diff changeset
   842
    self script onChangeSend: #suiteSelectionChanged to:self.
0f897c4468c3 automatic update, when new testCase classes arrive,
Claus Gittinger <cg@exept.de>
parents: 23
diff changeset
   843
0f897c4468c3 automatic update, when new testCase classes arrive,
Claus Gittinger <cg@exept.de>
parents: 23
diff changeset
   844
    Smalltalk addDependent:self.
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   845
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   846
    "Created: / 2.4.2000 / 14:44:32 / Sames"
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   847
    "Modified: / 21.6.2000 / 12:06:30 / Sames"
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   848
!
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   849
24
0f897c4468c3 automatic update, when new testCase classes arrive,
Claus Gittinger <cg@exept.de>
parents: 23
diff changeset
   850
release
0f897c4468c3 automatic update, when new testCase classes arrive,
Claus Gittinger <cg@exept.de>
parents: 23
diff changeset
   851
    Smalltalk removeDependent:self.
0f897c4468c3 automatic update, when new testCase classes arrive,
Claus Gittinger <cg@exept.de>
parents: 23
diff changeset
   852
    super release.
0f897c4468c3 automatic update, when new testCase classes arrive,
Claus Gittinger <cg@exept.de>
parents: 23
diff changeset
   853
!
0f897c4468c3 automatic update, when new testCase classes arrive,
Claus Gittinger <cg@exept.de>
parents: 23
diff changeset
   854
80
473ad00a8b9b rememberFailed/ok
Claus Gittinger <cg@exept.de>
parents: 79
diff changeset
   855
removeFromFailedTests:caseName
473ad00a8b9b rememberFailed/ok
Claus Gittinger <cg@exept.de>
parents: 79
diff changeset
   856
    testsWhichFailed remove:caseName ifAbsent:nil.
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
removeFromPassedTests:caseName
473ad00a8b9b rememberFailed/ok
Claus Gittinger <cg@exept.de>
parents: 79
diff changeset
   860
    testsWhichPassed remove:caseName ifAbsent:nil.
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
60
c22cbb44b137 initial category selection
Claus Gittinger <cg@exept.de>
parents: 59
diff changeset
   863
selectScriptNamed:aScriptName
c22cbb44b137 initial category selection
Claus Gittinger <cg@exept.de>
parents: 59
diff changeset
   864
    |idx scriptClass|
c22cbb44b137 initial category selection
Claus Gittinger <cg@exept.de>
parents: 59
diff changeset
   865
c22cbb44b137 initial category selection
Claus Gittinger <cg@exept.de>
parents: 59
diff changeset
   866
    idx := self scriptModel value indexOf:aScriptName.
c22cbb44b137 initial category selection
Claus Gittinger <cg@exept.de>
parents: 59
diff changeset
   867
    self script value:idx.
c22cbb44b137 initial category selection
Claus Gittinger <cg@exept.de>
parents: 59
diff changeset
   868
c22cbb44b137 initial category selection
Claus Gittinger <cg@exept.de>
parents: 59
diff changeset
   869
    self updateCategoryList.
c22cbb44b137 initial category selection
Claus Gittinger <cg@exept.de>
parents: 59
diff changeset
   870
c22cbb44b137 initial category selection
Claus Gittinger <cg@exept.de>
parents: 59
diff changeset
   871
    scriptClass := Smalltalk at:aScriptName asSymbol.
c22cbb44b137 initial category selection
Claus Gittinger <cg@exept.de>
parents: 59
diff changeset
   872
    scriptClass notNil ifTrue:[
c22cbb44b137 initial category selection
Claus Gittinger <cg@exept.de>
parents: 59
diff changeset
   873
        self category value:scriptClass category.
c22cbb44b137 initial category selection
Claus Gittinger <cg@exept.de>
parents: 59
diff changeset
   874
    ]
c22cbb44b137 initial category selection
Claus Gittinger <cg@exept.de>
parents: 59
diff changeset
   875
!
c22cbb44b137 initial category selection
Claus Gittinger <cg@exept.de>
parents: 59
diff changeset
   876
38
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   877
selectedScript
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   878
    |scriptIndex|
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   879
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   880
    scriptIndex := self script value.
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   881
    scriptIndex isNil ifTrue:[
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   882
        ^ ''
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   883
    ].
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   884
    ^ 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
   885
!
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
   886
87
24e88e7f5d88 remember individual failed cases.
Claus Gittinger <cg@exept.de>
parents: 86
diff changeset
   887
testFailed:caseName withResult:result
80
473ad00a8b9b rememberFailed/ok
Claus Gittinger <cg@exept.de>
parents: 79
diff changeset
   888
    |cls|
88
Claus Gittinger <cg@exept.de>
parents: 87
diff changeset
   889
80
473ad00a8b9b rememberFailed/ok
Claus Gittinger <cg@exept.de>
parents: 79
diff changeset
   890
    self removeFromPassedTests:caseName.
473ad00a8b9b rememberFailed/ok
Claus Gittinger <cg@exept.de>
parents: 79
diff changeset
   891
    self addToFailedTests:caseName.
473ad00a8b9b rememberFailed/ok
Claus Gittinger <cg@exept.de>
parents: 79
diff changeset
   892
473ad00a8b9b rememberFailed/ok
Claus Gittinger <cg@exept.de>
parents: 79
diff changeset
   893
    (cls := Smalltalk classNamed:caseName) notNil ifTrue:[
87
24e88e7f5d88 remember individual failed cases.
Claus Gittinger <cg@exept.de>
parents: 86
diff changeset
   894
        cls rememberFailedTestRunWithResult:result.
80
473ad00a8b9b rememberFailed/ok
Claus Gittinger <cg@exept.de>
parents: 79
diff changeset
   895
    ].
473ad00a8b9b rememberFailed/ok
Claus Gittinger <cg@exept.de>
parents: 79
diff changeset
   896
!
473ad00a8b9b rememberFailed/ok
Claus Gittinger <cg@exept.de>
parents: 79
diff changeset
   897
473ad00a8b9b rememberFailed/ok
Claus Gittinger <cg@exept.de>
parents: 79
diff changeset
   898
testPassed:caseName
473ad00a8b9b rememberFailed/ok
Claus Gittinger <cg@exept.de>
parents: 79
diff changeset
   899
    |cls|
473ad00a8b9b rememberFailed/ok
Claus Gittinger <cg@exept.de>
parents: 79
diff changeset
   900
473ad00a8b9b rememberFailed/ok
Claus Gittinger <cg@exept.de>
parents: 79
diff changeset
   901
    self removeFromFailedTests:caseName.
473ad00a8b9b rememberFailed/ok
Claus Gittinger <cg@exept.de>
parents: 79
diff changeset
   902
    self addToPassedTests:caseName.
473ad00a8b9b rememberFailed/ok
Claus Gittinger <cg@exept.de>
parents: 79
diff changeset
   903
85
5051fb7e4b93 debugPrint
Claus Gittinger <cg@exept.de>
parents: 84
diff changeset
   904
"/    Transcript show:'passed: '; showCR:caseName.
5051fb7e4b93 debugPrint
Claus Gittinger <cg@exept.de>
parents: 84
diff changeset
   905
"/    Transcript show:'passed: '; showCR:caseName className.
80
473ad00a8b9b rememberFailed/ok
Claus Gittinger <cg@exept.de>
parents: 79
diff changeset
   906
473ad00a8b9b rememberFailed/ok
Claus Gittinger <cg@exept.de>
parents: 79
diff changeset
   907
    (cls := Smalltalk classNamed:caseName) notNil ifTrue:[
473ad00a8b9b rememberFailed/ok
Claus Gittinger <cg@exept.de>
parents: 79
diff changeset
   908
        cls rememberPassedTestRun
473ad00a8b9b rememberFailed/ok
Claus Gittinger <cg@exept.de>
parents: 79
diff changeset
   909
    ].
473ad00a8b9b rememberFailed/ok
Claus Gittinger <cg@exept.de>
parents: 79
diff changeset
   910
!
473ad00a8b9b rememberFailed/ok
Claus Gittinger <cg@exept.de>
parents: 79
diff changeset
   911
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   912
timeSinceLastPassAsString
30
564780aca775 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 29
diff changeset
   913
	lastPass isNil ifTrue: [^''].
564780aca775 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 29
diff changeset
   914
	^', ' , (self formatTime: (Time now subtractTime: lastPass getSeconds)) , ' since last Pass'
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   915
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   916
    "Modified: / 3.4.2000 / 19:17:11 / Sames"
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   917
! !
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   918
68
9fd111438d60 category renames (lower case)
Claus Gittinger <cg@exept.de>
parents: 65
diff changeset
   919
!TestRunner methodsFor:'updating'!
0
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
displayColor: aColorValue
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   922
30
564780aca775 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 29
diff changeset
   923
	(builder componentAt: #mode) widget insideColor: aColorValue.
564780aca775 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 29
diff changeset
   924
	(builder componentAt: #details) widget insideColor: aColorValue.
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   925
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   926
    "Modified: / 2.4.2000 / 14:21:42 / Sames"
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   927
!
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   928
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   929
displayDefault
30
564780aca775 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 29
diff changeset
   930
	self displayColor: self tests backgroundColor
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   931
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   932
    "Created: / 21.6.2000 / 12:28:06 / Sames"
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   933
    "Modified: / 21.6.2000 / 12:35:09 / Sames"
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   934
!
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   935
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   936
displayDefects: aCollection 
117
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   937
    | failedTests|
6
78bb1397e43d added rerun-defect tests; fixed button enable bug
Claus Gittinger <cg@exept.de>
parents: 5
diff changeset
   938
    aCollection isEmpty ifTrue: [
117
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   939
        self selectionHolder value:''.
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   940
        self enableDefects value:false.
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   941
        self enableDebugButton value:false.
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   942
        ^ self
6
78bb1397e43d added rerun-defect tests; fixed button enable bug
Claus Gittinger <cg@exept.de>
parents: 5
diff changeset
   943
    ].
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   944
    allDefects := Dictionary new.
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   945
    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
   946
    failedTests := allDefects keys asOrderedCollection sort.
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   947
    self defectMenu value: failedTests.
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   948
"/    self selectionHolder value: failedTests first withoutNotifying:self.
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
   949
    self enableDefects value:true.
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   950
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   951
    "Modified: / 4.4.2000 / 20:11:06 / Sames"
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   952
!
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   953
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   954
displayDetails: aString 
94
f692704fac60 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 91
diff changeset
   955
    self details value: aString.
f692704fac60 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 91
diff changeset
   956
    self repairDamage.
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   957
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   958
    "Modified: / 21.6.2000 / 11:10:14 / Sames"
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   959
!
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   960
25
ab09e4669864 change progressindicators color to red, when an error occurs.
Claus Gittinger <cg@exept.de>
parents: 24
diff changeset
   961
displayErrorColorInProgress
ab09e4669864 change progressindicators color to red, when an error occurs.
Claus Gittinger <cg@exept.de>
parents: 24
diff changeset
   962
    (self builder componentAt:#ProgressIndicator1)
42
Claus Gittinger <cg@exept.de>
parents: 39
diff changeset
   963
      foregroundColor: (self class colorForFailedTests).
25
ab09e4669864 change progressindicators color to red, when an error occurs.
Claus Gittinger <cg@exept.de>
parents: 24
diff changeset
   964
ab09e4669864 change progressindicators color to red, when an error occurs.
Claus Gittinger <cg@exept.de>
parents: 24
diff changeset
   965
"/    (self builder componentAt:#ProgressIndicator1)
ab09e4669864 change progressindicators color to red, when an error occurs.
Claus Gittinger <cg@exept.de>
parents: 24
diff changeset
   966
"/      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
   967
!
ab09e4669864 change progressindicators color to red, when an error occurs.
Claus Gittinger <cg@exept.de>
parents: 24
diff changeset
   968
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   969
displayFail
30
564780aca775 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 29
diff changeset
   970
	self displayRed.
564780aca775 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 29
diff changeset
   971
	self displayMode: 'Fail'.
564780aca775 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 29
diff changeset
   972
	self displayDetails: result printString.
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
17
7cadcf8bb19d checkin from browser
Claus Gittinger <cg@exept.de>
parents: 16
diff changeset
   975
displayGray
30
564780aca775 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 29
diff changeset
   976
	self displayColor: (View defaultViewBackgroundColor)
17
7cadcf8bb19d checkin from browser
Claus Gittinger <cg@exept.de>
parents: 16
diff changeset
   977
!
7cadcf8bb19d checkin from browser
Claus Gittinger <cg@exept.de>
parents: 16
diff changeset
   978
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   979
displayGreen
30
564780aca775 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 29
diff changeset
   980
	self displayColor: ColorValue green
6
78bb1397e43d added rerun-defect tests; fixed button enable bug
Claus Gittinger <cg@exept.de>
parents: 5
diff changeset
   981
!
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   982
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   983
displayMode: aString 
51
5cc990c89e19 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 48
diff changeset
   984
        self mode value: aString.
5cc990c89e19 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 48
diff changeset
   985
        self repairDamage.
0
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
    "Modified: / 21.6.2000 / 11:14:19 / Sames"
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   988
!
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   989
25
ab09e4669864 change progressindicators color to red, when an error occurs.
Claus Gittinger <cg@exept.de>
parents: 24
diff changeset
   990
displayNormalColorInProgress
ab09e4669864 change progressindicators color to red, when an error occurs.
Claus Gittinger <cg@exept.de>
parents: 24
diff changeset
   991
    (self builder componentAt:#ProgressIndicator1)
ab09e4669864 change progressindicators color to red, when an error occurs.
Claus Gittinger <cg@exept.de>
parents: 24
diff changeset
   992
      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
   993
      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
   994
!
ab09e4669864 change progressindicators color to red, when an error occurs.
Claus Gittinger <cg@exept.de>
parents: 24
diff changeset
   995
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   996
displayPass
55
9d127479c584 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 51
diff changeset
   997
    self displayGreen.
64
ef347b158415 better passed info (name of last testCase in window)
james
parents: 61
diff changeset
   998
    (lastTestCase notNil 
ef347b158415 better passed info (name of last testCase in window)
james
parents: 61
diff changeset
   999
    and:[lastTestCase name notNil]) ifTrue:[
ef347b158415 better passed info (name of last testCase in window)
james
parents: 61
diff changeset
  1000
        self displayMode: 'Pass ' , lastTestCase name.
ef347b158415 better passed info (name of last testCase in window)
james
parents: 61
diff changeset
  1001
    ] ifFalse:[
ef347b158415 better passed info (name of last testCase in window)
james
parents: 61
diff changeset
  1002
        self displayMode: 'Pass'.
ef347b158415 better passed info (name of last testCase in window)
james
parents: 61
diff changeset
  1003
    ].
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1004
    self displayDetails: result runCount printString , ' run' , self timeSinceLastPassAsString.
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1005
    lastPass := Time now
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1006
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1007
    "Modified: / 21.6.2000 / 12:14:52 / Sames"
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1008
!
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1009
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1010
displayRed
30
564780aca775 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 29
diff changeset
  1011
	self displayColor: ColorValue red.
6
78bb1397e43d added rerun-defect tests; fixed button enable bug
Claus Gittinger <cg@exept.de>
parents: 5
diff changeset
  1012
!
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1013
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1014
displayRefresh
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1015
    self displayMode: 'N/A'.
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1016
    self displayDetails:'...'.
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1017
    self updateDefects.
79
a8743653e4bb dont disable trun button
Claus Gittinger <cg@exept.de>
parents: 78
diff changeset
  1018
    self enableRunButton value: (self script value notNil).
117
13bdbc0cefce Better handling of failed testcases.
Stefan Vogel <sv@exept.de>
parents: 115
diff changeset
  1019
    self enableDefects value: false.
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1020
    self enableDebugButton value: false.
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1021
    self displayDefault
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1022
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1023
    "Created: / 21.6.2000 / 12:14:11 / Sames"
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1024
    "Modified: / 21.6.2000 / 12:28:24 / Sames"
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1025
!
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1026
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1027
displayRunning
39
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
  1028
        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
  1029
!
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
  1030
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
  1031
displayRunning:scriptName
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
  1032
        self displayYellow.
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
  1033
        self displayMode:('running ' , scriptName allBold). 
61
b9204f5672ae show each cases selector as it is executed
Claus Gittinger <cg@exept.de>
parents: 60
diff changeset
  1034
"/        self displayDetails: '...'.
38
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
  1035
        self repairDamage.
6
78bb1397e43d added rerun-defect tests; fixed button enable bug
Claus Gittinger <cg@exept.de>
parents: 5
diff changeset
  1036
!
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1037
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1038
displayYellow
30
564780aca775 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 29
diff changeset
  1039
	self displayColor: ColorValue yellow
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
25
ab09e4669864 change progressindicators color to red, when an error occurs.
Claus Gittinger <cg@exept.de>
parents: 24
diff changeset
  1042
hidePercentageIndicator
ab09e4669864 change progressindicators color to red, when an error occurs.
Claus Gittinger <cg@exept.de>
parents: 24
diff changeset
  1043
    self percentageIndicatorVisible value:false.
ab09e4669864 change progressindicators color to red, when an error occurs.
Claus Gittinger <cg@exept.de>
parents: 24
diff changeset
  1044
!
24
0f897c4468c3 automatic update, when new testCase classes arrive,
Claus Gittinger <cg@exept.de>
parents: 23
diff changeset
  1045
38
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
  1046
repairDamage
82
e0e67a37e1ec *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 80
diff changeset
  1047
    |wg|
e0e67a37e1ec *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 80
diff changeset
  1048
e0e67a37e1ec *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 80
diff changeset
  1049
    (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
  1050
!
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
  1051
25
ab09e4669864 change progressindicators color to red, when an error occurs.
Claus Gittinger <cg@exept.de>
parents: 24
diff changeset
  1052
showPercentageIndicator
ab09e4669864 change progressindicators color to red, when an error occurs.
Claus Gittinger <cg@exept.de>
parents: 24
diff changeset
  1053
    self percentageIndicatorVisible value:true.
ab09e4669864 change progressindicators color to red, when an error occurs.
Claus Gittinger <cg@exept.de>
parents: 24
diff changeset
  1054
!
ab09e4669864 change progressindicators color to red, when an error occurs.
Claus Gittinger <cg@exept.de>
parents: 24
diff changeset
  1055
30
564780aca775 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 29
diff changeset
  1056
update:something with:aParameter from:changedObject
24
0f897c4468c3 automatic update, when new testCase classes arrive,
Claus Gittinger <cg@exept.de>
parents: 23
diff changeset
  1057
    changedObject == Smalltalk ifTrue:[
30
564780aca775 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 29
diff changeset
  1058
        (changedObject isBehavior and:[changedObject isSubclassOf:TestCase]) ifTrue:[
28
1a69b2a8a330 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 26
diff changeset
  1059
            self updateSuitesList
1a69b2a8a330 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 26
diff changeset
  1060
        ].
1a69b2a8a330 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 26
diff changeset
  1061
        ^ self
25
ab09e4669864 change progressindicators color to red, when an error occurs.
Claus Gittinger <cg@exept.de>
parents: 24
diff changeset
  1062
    ].
ab09e4669864 change progressindicators color to red, when an error occurs.
Claus Gittinger <cg@exept.de>
parents: 24
diff changeset
  1063
38
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
  1064
    (changedObject isKindOf: TestSuite) ifTrue: [
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
  1065
        self displayRunning:changedObject name.
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
  1066
        ^ self
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
  1067
    ].
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
  1068
30
564780aca775 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 29
diff changeset
  1069
    (changedObject isKindOf: TestCase) ifTrue: [
28
1a69b2a8a330 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 26
diff changeset
  1070
        (result errorCount + result failureCount) > 0 ifTrue:[
1a69b2a8a330 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 26
diff changeset
  1071
            self displayErrorColorInProgress.
1a69b2a8a330 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 26
diff changeset
  1072
        ].
1a69b2a8a330 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 26
diff changeset
  1073
        self percentageDone value:(result runCount / numberOfTestsToRun * 100) rounded.
30
564780aca775 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 29
diff changeset
  1074
        self displayDetails: changedObject printString.
28
1a69b2a8a330 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 26
diff changeset
  1075
        ^ self
25
ab09e4669864 change progressindicators color to red, when an error occurs.
Claus Gittinger <cg@exept.de>
parents: 24
diff changeset
  1076
    ].
ab09e4669864 change progressindicators color to red, when an error occurs.
Claus Gittinger <cg@exept.de>
parents: 24
diff changeset
  1077
30
564780aca775 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 29
diff changeset
  1078
    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
  1079
!
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1080
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1081
updateDefects
38
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
  1082
        |script|
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
  1083
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
  1084
        script := self selectedScript.
39
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
  1085
        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
  1086
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
  1087
        self displayDefects: result defects.
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
  1088
39
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
  1089
        script notNil ifTrue:[
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
  1090
            result hasPassed ifTrue:[
80
473ad00a8b9b rememberFailed/ok
Claus Gittinger <cg@exept.de>
parents: 79
diff changeset
  1091
                self testPassed:script
39
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
  1092
            ] ifFalse:[
87
24e88e7f5d88 remember individual failed cases.
Claus Gittinger <cg@exept.de>
parents: 86
diff changeset
  1093
                self testFailed:script withResult:result
39
08ee278b27cb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 38
diff changeset
  1094
            ].
38
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
  1095
        ].
6
78bb1397e43d added rerun-defect tests; fixed button enable bug
Claus Gittinger <cg@exept.de>
parents: 5
diff changeset
  1096
!
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1097
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1098
updateWindow
38
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
  1099
        result hasPassed
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
  1100
                ifTrue: [self displayPass]
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
  1101
                ifFalse: [self displayFail].
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
  1102
        self updateDefects.
5fb751a669eb better update (name) and mark failed/passed suites in list
Claus Gittinger <cg@exept.de>
parents: 30
diff changeset
  1103
        self updateSuitesList. "/ for colors
6
78bb1397e43d added rerun-defect tests; fixed button enable bug
Claus Gittinger <cg@exept.de>
parents: 5
diff changeset
  1104
! !
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1105
11
fd4882a6997f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 10
diff changeset
  1106
!TestRunner class methodsFor:'documentation'!
fd4882a6997f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 10
diff changeset
  1107
fd4882a6997f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 10
diff changeset
  1108
version
122
61e456491017 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 121
diff changeset
  1109
    ^ '$Header: /cvs/stx/stx/goodies/sunit/TestRunner.st,v 1.56 2005-08-18 11:44:32 cg Exp $'
11
fd4882a6997f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 10
diff changeset
  1110
! !