SUnit improvements easystart

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

SUnit improvements easystart

keith1y
To have a look at these SUnit improvements that I have been talking about execute the following in a workspace. (you will also get #split and #join as a bonus!).

(HTTPSocket httpGet: 'squeak.warwick.st/Installer.st') fileIn.
Installer installUrl: 'wiki.squeak.org/SUnit%20for%203.10'.

best regards

Keith


Try the all-new Yahoo! Mail . "The New Version is radically easier to use" – The Wall Street Journal

Reply | Threaded
Open this post in threaded view
|

RE: SUnit improvements easystart

J J-6
Does the split and join work the way you talked about before (i.e. double
dispatch)?


>From: Keith Hodges <[hidden email]>
>Reply-To: The general-purpose Squeak developers
>list<[hidden email]>
>To: [hidden email]
>Subject: SUnit improvements easystart
>Date: Fri, 15 Dec 2006 06:03:02 +0000 (GMT)
>
>To have a look at these SUnit improvements that I have been talking about
>execute the following in a workspace. (you will also get #split and #join
>as a bonus!).
>
>(HTTPSocket httpGet: 'squeak.warwick.st/Installer.st') fileIn.
>Installer installUrl: 'wiki.squeak.org/SUnit%20for%203.10'.
>
>best regards
>
>Keith
>
>
>
>
>
>___________________________________________________________
>To help you stay safe and secure online, we've developed the all new Yahoo!
>Security Centre. http://uk.security.yahoo.com


>

_________________________________________________________________
All-in-one security and maintenance for your PC.  Get a free 90-day trial!
http://clk.atdmt.com/MSN/go/msnnkwlo0050000002msn/direct/01/?href=http://clk.atdmt.com/MSN/go/msnnkwlo0050000001msn/direct/01/?href=http://www.windowsonecare.com/?sc_cid=msn_hotmail


Reply | Threaded
Open this post in threaded view
|

Re: SUnit improvements easystart

keith1y
 From mantis 4874

To install (with Installer):

Installer mantis bug: 4874 fix: 'Join.3.cs'.

Description:

Implements #joinUsing: and #splitOn: both using a double dispatch

$/ useToJoin: aSequencableCollection
aSequenceableCollection joinUsing: $/
aSequenceableCollection joinUsing: ', ' last: ' and'

aSequenceableCollection splitOn: splitter
where splitter can be any sequenceable collection, or a Block

cheers

Keith

               
___________________________________________________________
Try the all-new Yahoo! Mail. "The New Version is radically easier to use" – The Wall Street Journal
http://uk.docs.yahoo.com/nowyoucan.html

Reply | Threaded
Open this post in threaded view
|

Re: SUnit improvements easystart

J J-6
perfect.


>From: Keith Hodges <[hidden email]>
>Reply-To: The general-purpose Squeak developers
>list<[hidden email]>
>To: The general-purpose Squeak developers
>list<[hidden email]>
>Subject: Re: SUnit improvements easystart
>Date: Fri, 15 Dec 2006 17:00:27 +0000
>
>From mantis 4874
>
>To install (with Installer):
>
>Installer mantis bug: 4874 fix: 'Join.3.cs'.
>
>Description:
>
>Implements #joinUsing: and #splitOn: both using a double dispatch
>
>$/ useToJoin: aSequencableCollection
>aSequenceableCollection joinUsing: $/
>aSequenceableCollection joinUsing: ', ' last: ' and'
>
>aSequenceableCollection splitOn: splitter
>where splitter can be any sequenceable collection, or a Block
>
>cheers
>
>Keith
>
>
>___________________________________________________________ Try the all-new
>Yahoo! Mail. "The New Version is radically easier to use" – The Wall Street
>Journal http://uk.docs.yahoo.com/nowyoucan.html
>

_________________________________________________________________
Share your latest news with your friends with the Windows Live Spaces
friends module.
http://clk.atdmt.com/MSN/go/msnnkwsp0070000001msn/direct/01/?href=http://spaces.live.com/spacesapi.aspx?wx_action=create&wx_url=/friends.aspx&mk


Reply | Threaded
Open this post in threaded view
|

Re: SUnit improvements easystart

Klaus D. Witzel
On Fri, 15 Dec 2006 21:05:37 +0100, J J wrote:

> perfect.

Yes indeed. Not so much for the average pearl user, Smalltalk is :)

/Klaus

>
>> From: Keith Hodges <[hidden email]>
>> Reply-To: The general-purpose Squeak developers  
>> list<[hidden email]>
>> To: The general-purpose Squeak developers  
>> list<[hidden email]>
>> Subject: Re: SUnit improvements easystart
>> Date: Fri, 15 Dec 2006 17:00:27 +0000
>>
>> From mantis 4874
>>
>> To install (with Installer):
>>
>> Installer mantis bug: 4874 fix: 'Join.3.cs'.
>>
>> Description:
>>
>> Implements #joinUsing: and #splitOn: both using a double dispatch
>>
>> $/ useToJoin: aSequencableCollection
>> aSequenceableCollection joinUsing: $/
>> aSequenceableCollection joinUsing: ', ' last: ' and'
>>
>> aSequenceableCollection splitOn: splitter
>> where splitter can be any sequenceable collection, or a Block
>>
>> cheers
>>
>> Keith
>>
>>
>> ___________________________________________________________ Try the  
>> all-new Yahoo! Mail. "The New Version is radically easier to use" – The  
>> Wall Street Journal http://uk.docs.yahoo.com/nowyoucan.html
>>
>
> _________________________________________________________________
> Share your latest news with your friends with the Windows Live Spaces  
> friends module.  
> http://clk.atdmt.com/MSN/go/msnnkwsp0070000001msn/direct/01/?href=http://spaces.live.com/spacesapi.aspx?wx_action=create&wx_url=/friends.aspx&mk
>
>
>



Reply | Threaded
Open this post in threaded view
|

Re: SUnit improvements easystart

keith1y
To obtain an updates SUnit and SUnit GUI with the latest Installer Execute:

Installer bugFix: 5639.

I am pleased to announce that after a major UI shakedown following my
previous email, the enhancements to SUnit may now be ready to use.

I have separated 'suites' from 'suite filters' though they work in very
similar ways they are able to handle orthogonal ideas.

On my machine the list is displayed as follows.

Suites:

AllStandardTests
MyProject
YourProject

Filters:

Bug Fixes
Expected Failures
Long Tests
Non Squeak36 Vm Tests
Non Squeak39 Tests
Non Win32 Tests

---
Tutorial

1. Select 'All Standard Tests', select all in the categories and
classes. Run the entire test suite (it takes a while).
2. In the SuitesAndFiltersMenu, you can browse all of the tests. Notice
how the presentation of methods in the method list has been customised
for this task. Individual test timings are displayed here.
3. Select the 'define long...' menu option and set long to be 1000,
milliseconds.
4. Select the Categorise Long Methods menu option. On my machine that
marks approximately 195 tests as being long.
5. Now if you select the Long Tests Filter and run the tests again, you
will only have the short tests to run.
6. If you select the "Filters Select Tests" option, then Browse Chosen
Methods, you will see all of the Long Tests. Running this time will run
'only' the Long Methods.

- using the other filters depends upon the test writer
tagging/categorising specific tests usefully.

I note that using 3.9 final I still have around 20
as always feedback is very welcome.

Keith

p.s. I hope to include some pragma support when I understand them.
Send instant messages to your online friends http://uk.messenger.yahoo.com 

Reply | Threaded
Open this post in threaded view
|

Re: SUnit improvements easystart

keith1y
In reply to this post by Klaus D. Witzel
To obtain an updates SUnit and SUnit GUI with the latest Installer Execute:

(fixed typo)
Installer fixBug: 5639.

I am pleased to announce that after a major UI shakedown following my
previous email, the enhancements to SUnit may now be ready to use.

I have separated 'suites' from 'suite filters' though they work in very
similar ways they are able to handle orthogonal ideas.

On my machine the list is displayed as follows.

Suites:

AllStandardTests
MyProject
YourProject

Filters:

Bug Fixes
Expected Failures
Long Tests
Non Squeak36 Vm Tests
Non Squeak39 Tests
Non Win32 Tests

---
Tutorial

1. Select 'All Standard Tests', select all in the categories and
classes. Run the entire test suite (it takes a while).
2. In the SuitesAndFiltersMenu, you can browse all of the tests. Notice
how the presentation of methods in the method list has been customised
for this task. Individual test timings are displayed here.
3. Select the 'define long...' menu option and set long to be 1000,
milliseconds.
4. Select the Categorise Long Methods menu option. On my machine that
marks approximately 195 tests as being long.
5. Now if you select the Long Tests Filter and run the tests again, you
will only have the short tests to run.
6. If you select the "Filters Select Tests" option, then Browse Chosen
Methods, you will see all of the Long Tests. Running this time will run
'only' the Long Methods.

- using the other filters depends upon the test writer
tagging/categorising specific tests usefully.

I note that using 3.9 final I still have around 20
as always feedback is very welcome.

Keith

p.s. I hope to include some pragma support when I understand them.
Send instant messages to your online friends http://uk.messenger.yahoo.com



               
___________________________________________________________
All New Yahoo! Mail � Tired of Vi@gr@! come-ons? Let our SpamGuard protect you. http://uk.docs.yahoo.com/nowyoucan.html

Reply | Threaded
Open this post in threaded view
|

Re: SUnit improvements easystart

keith1y

> To obtain an updates SUnit and SUnit GUI with the latest Installer
> Execute:
>  
> Installer fixBug: 5639.
>

I have added menu items for marking tests. So far marks  (fail), (error)
(expected) (long) are supported.

Marks are added to the test method's category and so provides a means to
feedback your test results to your browsing tools, which is quite useful.

Marks can be easily removed.

Now I am looking to automatically assess (and hence provide the option
of  marking) whether a test has used any internet/socket/external
resources. Can anyone suggest a means to achieve this non-obtrusively?

Keith

Send instant messages to your online friends http://uk.messenger.yahoo.com 

Reply | Threaded
Open this post in threaded view
|

Re: SUnit improvements easystart

Klaus D. Witzel
Hi Keith,

if I need to know such non-obtrusively I often try SomeThing someInstance  
(and friends, like instanceCount before/after). Or perhaps ask #setUp,  
like it is used in ArbitraryObjectSocketTestCase, if it uses Socket.

HTH.

/Klaus

On Thu, 21 Dec 2006 07:12:22 +0100, Keith Hodges wrote:

>
>> To obtain an updates SUnit and SUnit GUI with the latest Installer  
>> Execute:
>>  Installer fixBug: 5639.
>>
>
> I have added menu items for marking tests. So far marks  (fail), (error)  
> (expected) (long) are supported. Marks are added to the test method's  
> category and so provides a means to feedback your test results to your  
> browsing tools, which is quite useful.
>
> Marks can be easily removed.
>
> Now I am looking to automatically assess (and hence provide the option  
> of  marking) whether a test has used any internet/socket/external  
> resources. Can anyone suggest a means to achieve this non-obtrusively?
>
> Keith
>
> Send instant messages to your online friends  
> http://uk.messenger.yahoo.com



Reply | Threaded
Open this post in threaded view
|

Re: SUnit improvements easystart

keith1y
Klaus D. Witzel wrote:

> Hi Keith,
>
> if I need to know such non-obtrusively I often try SomeThing
> someInstance (and friends, like instanceCount before/after). Or
> perhaps ask #setUp, like it is used in ArbitraryObjectSocketTestCase,
> if it uses Socket.
>
> HTH.
>
> /Klaus
Thanks Klaus,

rather than using instanceCount, I used the approach within instance
count.  I keep track of the last of the instances such that (last
someInstance == nil). After the test I check to see whether (last
someInstance == nil) is still true. If so then that class was
instanciated in the meantime.

So suffice to say now that I can tell whether a test has used a Network
class, the TestRunner can now show you which tests used the network and
can mark those tests for later filtering etc.

Keith



               
___________________________________________________________
Copy addresses and emails from any email account to Yahoo! Mail - quick, easy and free. http://uk.docs.yahoo.com/trueswitch2.html