The Trunk: SUnitGUI-mt.73.mcz

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
5 messages Options
Reply | Threaded
Open this post in threaded view
|

The Trunk: SUnitGUI-mt.73.mcz

commits-2
Marcel Taeumel uploaded a new version of SUnitGUI to project The Trunk:
http://source.squeak.org/trunk/SUnitGUI-mt.73.mcz

==================== Summary ====================

Name: SUnitGUI-mt.73
Author: mt
Time: 4 September 2019, 5:28:26.809072 pm
UUID: 56e5b083-0108-450e-92d4-9bea9160a539
Ancestors: SUnitGUI-mt.72

Show durations in test runner.

=============== Diff against SUnitGUI-mt.72 ===============

Item was changed:
  ----- Method: TestRunner>>classList (in category 'accessing-classes') -----
  classList
 
  | helper |
  classes isEmpty ifTrue: [ ^ classes ].
 
  helper := Browser new.
  ^ helper
  flattenHierarchyTree: (helper createHierarchyTreeOf: classes)
  on: OrderedCollection new
  indent: ''
  by: '  '
  format: [:class | class isAbstract
  ifTrue: [class name asText addAttribute: TextEmphasis italic; yourself]
+ ifFalse: [
+ (class history notNil and: [class history includesKey: #duration])
+ ifFalse: ['{1} ({2} tests)' format: {class name. class allTestSelectors size}]
+ ifTrue: [
+ | duration |
+ duration := (class history at: #duration).
+ '{1} ({2} tests, {3})' format: {
+ class name.
+ class allTestSelectors size.
+ duration = 0 ifTrue: ['< 1 ms'] ifFalse: [
+ duration < 1000 ifTrue: [duration asString, ' ms'] ifFalse: [
+ (duration / 1000) rounded asString, ' secs']]}]]] !
- ifFalse: ['{1} ({2})' format: {class name. class allTestSelectors size}]]!

Item was changed:
  ----- Method: TestRunner>>saveResultInHistory (in category 'history saving') -----
  saveResultInHistory
+ result dispatchResultsIntoHistory.
+ self changed: #classList.!
- result dispatchResultsIntoHistory!

Item was changed:
  ----- Method: TestRunner>>updateResults (in category 'updating') -----
  updateResults
  "<lint: #expect rule: #guardingClause>"
  "<lint: #expect rule: #longMethods>"
 
  self updateStatus: false.
  failedList size = result failures size ifFalse: [
  failedList := result failures asArray
  sort: [ :a :b | a printString <= b printString ].
  failedSelected := nil.
  self
  changed: #failedList;
  changed: #failedSelected;
  changed: #hasFailures;
  changed: #hasProgress  ].
  errorList size = result errors size ifFalse: [
  errorList := result errors asArray
  sort: [ :a :b | a printString <= b printString ].
  errorSelected := nil.
  self
  changed: #errorList;
  changed: #errorSelected;
  changed: #hasErrors;
+ changed: #hasProgress;
+ changed: #classList ].!
- changed: #hasProgress ].!


Reply | Threaded
Open this post in threaded view
|

Re: The Trunk: SUnitGUI-mt.73.mcz

Nicolas Cellier
Note that this change makes filtering by keyboard inoperant...

Le mer. 4 sept. 2019 à 17:28, <[hidden email]> a écrit :
Marcel Taeumel uploaded a new version of SUnitGUI to project The Trunk:
http://source.squeak.org/trunk/SUnitGUI-mt.73.mcz

==================== Summary ====================

Name: SUnitGUI-mt.73
Author: mt
Time: 4 September 2019, 5:28:26.809072 pm
UUID: 56e5b083-0108-450e-92d4-9bea9160a539
Ancestors: SUnitGUI-mt.72

Show durations in test runner.

=============== Diff against SUnitGUI-mt.72 ===============

Item was changed:
  ----- Method: TestRunner>>classList (in category 'accessing-classes') -----
  classList

        | helper |
        classes isEmpty ifTrue: [ ^ classes ].

        helper := Browser new.
        ^ helper
                flattenHierarchyTree: (helper createHierarchyTreeOf: classes)
                on: OrderedCollection new
                indent: ''
                by: '  '
                format: [:class | class isAbstract
                                                        ifTrue: [class name asText addAttribute: TextEmphasis italic; yourself]
+                                                       ifFalse: [
+                                                               (class history notNil and: [class history includesKey: #duration])
+                                                                       ifFalse: ['{1} ({2} tests)' format: {class name. class allTestSelectors size}]
+                                                                       ifTrue: [
+                                                                               | duration |
+                                                                               duration := (class history at: #duration).
+                                                                               '{1} ({2} tests, {3})' format: {
+                                                                                       class name.
+                                                                                       class allTestSelectors size.
+                                                                                       duration = 0 ifTrue: ['< 1 ms'] ifFalse: [
+                                                                                               duration < 1000 ifTrue: [duration asString, ' ms'] ifFalse: [
+                                                                                                       (duration / 1000) rounded asString, ' secs']]}]]] !
-                                                       ifFalse: ['{1} ({2})' format: {class name. class allTestSelectors size}]]!

Item was changed:
  ----- Method: TestRunner>>saveResultInHistory (in category 'history saving') -----
  saveResultInHistory
+       result dispatchResultsIntoHistory.
+       self changed: #classList.!
-       result dispatchResultsIntoHistory!

Item was changed:
  ----- Method: TestRunner>>updateResults (in category 'updating') -----
  updateResults
        "<lint: #expect rule: #guardingClause>"
        "<lint: #expect rule: #longMethods>"

        self updateStatus: false.
        failedList size = result failures size ifFalse: [
                failedList := result failures asArray
                        sort: [ :a :b | a printString <= b printString ].
                failedSelected := nil.
                self
                        changed: #failedList;
                        changed: #failedSelected;
                        changed: #hasFailures;
                        changed: #hasProgress  ].
        errorList size = result errors size ifFalse: [
                errorList := result errors asArray
                        sort: [ :a :b | a printString <= b printString ].
                errorSelected := nil.
                self
                        changed: #errorList;
                        changed: #errorSelected;
                        changed: #hasErrors;
+                       changed: #hasProgress;
+                       changed: #classList ].!
-                       changed: #hasProgress ].!




Reply | Threaded
Open this post in threaded view
|

Re: The Trunk: SUnitGUI-mt.73.mcz

marcel.taeumel
It makes it embarrasingly slow. :-| Let me look into that.

Am 29.09.2019 22:59:48 schrieb Nicolas Cellier <[hidden email]>:

Note that this change makes filtering by keyboard inoperant...

Le mer. 4 sept. 2019 à 17:28, <[hidden email]> a écrit :
Marcel Taeumel uploaded a new version of SUnitGUI to project The Trunk:
http://source.squeak.org/trunk/SUnitGUI-mt.73.mcz

==================== Summary ====================

Name: SUnitGUI-mt.73
Author: mt
Time: 4 September 2019, 5:28:26.809072 pm
UUID: 56e5b083-0108-450e-92d4-9bea9160a539
Ancestors: SUnitGUI-mt.72

Show durations in test runner.

=============== Diff against SUnitGUI-mt.72 ===============

Item was changed:
  ----- Method: TestRunner>>classList (in category 'accessing-classes') -----
  classList

        | helper |
        classes isEmpty ifTrue: [ ^ classes ].

        helper := Browser new.
        ^ helper
                flattenHierarchyTree: (helper createHierarchyTreeOf: classes)
                on: OrderedCollection new
                indent: ''
                by: '  '
                format: [:class | class isAbstract
                                                        ifTrue: [class name asText addAttribute: TextEmphasis italic; yourself]
+                                                       ifFalse: [
+                                                               (class history notNil and: [class history includesKey: #duration])
+                                                                       ifFalse: ['{1} ({2} tests)' format: {class name. class allTestSelectors size}]
+                                                                       ifTrue: [
+                                                                               | duration |
+                                                                               duration := (class history at: #duration).
+                                                                               '{1} ({2} tests, {3})' format: {
+                                                                                       class name.
+                                                                                       class allTestSelectors size.
+                                                                                       duration = 0 ifTrue: ['< 1 ms'] ifFalse: [
+                                                                                               duration < 1000 ifTrue: [duration asString, ' ms'] ifFalse: [
+                                                                                                       (duration / 1000) rounded asString, ' secs']]}]]] !
-                                                       ifFalse: ['{1} ({2})' format: {class name. class allTestSelectors size}]]!

Item was changed:
  ----- Method: TestRunner>>saveResultInHistory (in category 'history saving') -----
  saveResultInHistory
+       result dispatchResultsIntoHistory.
+       self changed: #classList.!
-       result dispatchResultsIntoHistory!

Item was changed:
  ----- Method: TestRunner>>updateResults (in category 'updating') -----
  updateResults
        "<lint: #expect rule: #guardingClause>"
        "<lint: #expect rule: #longMethods>"

        self updateStatus: false.
        failedList size = result failures size ifFalse: [
                failedList := result failures asArray
                        sort: [ :a :b | a printString <= b printString ].
                failedSelected := nil.
                self
                        changed: #failedList;
                        changed: #failedSelected;
                        changed: #hasFailures;
                        changed: #hasProgress  ].
        errorList size = result errors size ifFalse: [
                errorList := result errors asArray
                        sort: [ :a :b | a printString <= b printString ].
                errorSelected := nil.
                self
                        changed: #errorList;
                        changed: #errorSelected;
                        changed: #hasErrors;
+                       changed: #hasProgress;
+                       changed: #classList ].!
-                       changed: #hasProgress ].!




Reply | Threaded
Open this post in threaded view
|

Re: The Trunk: SUnitGUI-mt.73.mcz

marcel.taeumel
Should be fast again in Trunk. Please update. :-)

Best,
Marcel

Am 30.09.2019 08:41:19 schrieb Marcel Taeumel <[hidden email]>:

It makes it embarrasingly slow. :-| Let me look into that.

Am 29.09.2019 22:59:48 schrieb Nicolas Cellier <[hidden email]>:

Note that this change makes filtering by keyboard inoperant...

Le mer. 4 sept. 2019 à 17:28, <[hidden email]> a écrit :
Marcel Taeumel uploaded a new version of SUnitGUI to project The Trunk:
http://source.squeak.org/trunk/SUnitGUI-mt.73.mcz

==================== Summary ====================

Name: SUnitGUI-mt.73
Author: mt
Time: 4 September 2019, 5:28:26.809072 pm
UUID: 56e5b083-0108-450e-92d4-9bea9160a539
Ancestors: SUnitGUI-mt.72

Show durations in test runner.

=============== Diff against SUnitGUI-mt.72 ===============

Item was changed:
  ----- Method: TestRunner>>classList (in category 'accessing-classes') -----
  classList

        | helper |
        classes isEmpty ifTrue: [ ^ classes ].

        helper := Browser new.
        ^ helper
                flattenHierarchyTree: (helper createHierarchyTreeOf: classes)
                on: OrderedCollection new
                indent: ''
                by: '  '
                format: [:class | class isAbstract
                                                        ifTrue: [class name asText addAttribute: TextEmphasis italic; yourself]
+                                                       ifFalse: [
+                                                               (class history notNil and: [class history includesKey: #duration])
+                                                                       ifFalse: ['{1} ({2} tests)' format: {class name. class allTestSelectors size}]
+                                                                       ifTrue: [
+                                                                               | duration |
+                                                                               duration := (class history at: #duration).
+                                                                               '{1} ({2} tests, {3})' format: {
+                                                                                       class name.
+                                                                                       class allTestSelectors size.
+                                                                                       duration = 0 ifTrue: ['< 1 ms'] ifFalse: [
+                                                                                               duration < 1000 ifTrue: [duration asString, ' ms'] ifFalse: [
+                                                                                                       (duration / 1000) rounded asString, ' secs']]}]]] !
-                                                       ifFalse: ['{1} ({2})' format: {class name. class allTestSelectors size}]]!

Item was changed:
  ----- Method: TestRunner>>saveResultInHistory (in category 'history saving') -----
  saveResultInHistory
+       result dispatchResultsIntoHistory.
+       self changed: #classList.!
-       result dispatchResultsIntoHistory!

Item was changed:
  ----- Method: TestRunner>>updateResults (in category 'updating') -----
  updateResults
        "<lint: #expect rule: #guardingClause>"
        "<lint: #expect rule: #longMethods>"

        self updateStatus: false.
        failedList size = result failures size ifFalse: [
                failedList := result failures asArray
                        sort: [ :a :b | a printString <= b printString ].
                failedSelected := nil.
                self
                        changed: #failedList;
                        changed: #failedSelected;
                        changed: #hasFailures;
                        changed: #hasProgress  ].
        errorList size = result errors size ifFalse: [
                errorList := result errors asArray
                        sort: [ :a :b | a printString <= b printString ].
                errorSelected := nil.
                self
                        changed: #errorList;
                        changed: #errorSelected;
                        changed: #hasErrors;
+                       changed: #hasProgress;
+                       changed: #classList ].!
-                       changed: #hasProgress ].!




Reply | Threaded
Open this post in threaded view
|

Re: The Trunk: SUnitGUI-mt.73.mcz

Nicolas Cellier
Hi Marcel,
probably even faster than originally!
big thanks

Le lun. 30 sept. 2019 à 13:36, Marcel Taeumel <[hidden email]> a écrit :
Should be fast again in Trunk. Please update. :-)

Best,
Marcel

Am 30.09.2019 08:41:19 schrieb Marcel Taeumel <[hidden email]>:

It makes it embarrasingly slow. :-| Let me look into that.

Am 29.09.2019 22:59:48 schrieb Nicolas Cellier <[hidden email]>:

Note that this change makes filtering by keyboard inoperant...

Le mer. 4 sept. 2019 à 17:28, <[hidden email]> a écrit :
Marcel Taeumel uploaded a new version of SUnitGUI to project The Trunk:
http://source.squeak.org/trunk/SUnitGUI-mt.73.mcz

==================== Summary ====================

Name: SUnitGUI-mt.73
Author: mt
Time: 4 September 2019, 5:28:26.809072 pm
UUID: 56e5b083-0108-450e-92d4-9bea9160a539
Ancestors: SUnitGUI-mt.72

Show durations in test runner.

=============== Diff against SUnitGUI-mt.72 ===============

Item was changed:
  ----- Method: TestRunner>>classList (in category 'accessing-classes') -----
  classList

        | helper |
        classes isEmpty ifTrue: [ ^ classes ].

        helper := Browser new.
        ^ helper
                flattenHierarchyTree: (helper createHierarchyTreeOf: classes)
                on: OrderedCollection new
                indent: ''
                by: '  '
                format: [:class | class isAbstract
                                                        ifTrue: [class name asText addAttribute: TextEmphasis italic; yourself]
+                                                       ifFalse: [
+                                                               (class history notNil and: [class history includesKey: #duration])
+                                                                       ifFalse: ['{1} ({2} tests)' format: {class name. class allTestSelectors size}]
+                                                                       ifTrue: [
+                                                                               | duration |
+                                                                               duration := (class history at: #duration).
+                                                                               '{1} ({2} tests, {3})' format: {
+                                                                                       class name.
+                                                                                       class allTestSelectors size.
+                                                                                       duration = 0 ifTrue: ['< 1 ms'] ifFalse: [
+                                                                                               duration < 1000 ifTrue: [duration asString, ' ms'] ifFalse: [
+                                                                                                       (duration / 1000) rounded asString, ' secs']]}]]] !
-                                                       ifFalse: ['{1} ({2})' format: {class name. class allTestSelectors size}]]!

Item was changed:
  ----- Method: TestRunner>>saveResultInHistory (in category 'history saving') -----
  saveResultInHistory
+       result dispatchResultsIntoHistory.
+       self changed: #classList.!
-       result dispatchResultsIntoHistory!

Item was changed:
  ----- Method: TestRunner>>updateResults (in category 'updating') -----
  updateResults
        "<lint: #expect rule: #guardingClause>"
        "<lint: #expect rule: #longMethods>"

        self updateStatus: false.
        failedList size = result failures size ifFalse: [
                failedList := result failures asArray
                        sort: [ :a :b | a printString <= b printString ].
                failedSelected := nil.
                self
                        changed: #failedList;
                        changed: #failedSelected;
                        changed: #hasFailures;
                        changed: #hasProgress  ].
        errorList size = result errors size ifFalse: [
                errorList := result errors asArray
                        sort: [ :a :b | a printString <= b printString ].
                errorSelected := nil.
                self
                        changed: #errorList;
                        changed: #errorSelected;
                        changed: #hasErrors;
+                       changed: #hasProgress;
+                       changed: #classList ].!
-                       changed: #hasProgress ].!