<br><br><div class="gmail_quote">On Thu, Mar 26, 2009 at 1:22 AM, Andreas Raab <span dir="ltr"><<a href="mailto:andreas.raab@gmx.de">andreas.raab@gmx.de</a>></span> wrote:<br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
SUnit will only use inherited test selectors if the superclass is declared as abstract. I find this horribly annoying but that's the way it is. You'll have to implement something like:<br>
<br>
SuperTest class>>isAbstract<br>
^self == SuperTest "NOT ^true since this makes subclasses abstract too"<br>
<br>
See ToolBuilderTests and its subclasses for an example.<br>
</blockquote><div><br>It doesn't work :( I tried it with my class and also with MVCToolBuilderTests. In both cases I get this wallback:<br><br>any ideas?<br><br>thanks for the help.<br><br>mariano<br><br><br><br>MessageNotUnderstood: DBXMainBackendTestPostgresql class>>allSelectorsBelow:<br>
26 March 2009 1:28:40 am<br><br>VM: unix - a SmalltalkImage<br>Image: Squeak3.10.2 [latest update: #7179]<br><br>SecurityManager state:<br>Restricted: false<br>FileAccess: true<br>SocketAccess: true<br>Working Dir /home/mariano/squeak/imagenes<br>
Trusted Dir /home/mariano/squeak/imagenes/secure<br>Untrusted Dir /home/mariano/squeak/imagenes/My Squeak<br><br>DBXMainBackendTestPostgresql class(Object)>>doesNotUnderstand: #allSelectorsBelow:<br> Receiver: DBXMainBackendTestPostgresql<br>
Arguments and temporary variables: <br> aMessage: allSelectorsBelow: TestCase<br> Receiver's instance variables: <br> superclass: DBXMainBackendTest<br> methodDict: a MethodDictionary(#facilityToTest->a CompiledMethod (1970) )<br>
format: 132<br> instanceVariables: nil<br> organization: ('facility' facilityToTest)<br><br> subclasses: nil<br> name: #DBXMainBackendTestPostgresql<br> classPool: nil<br>
sharedPools: nil<br> environment: a SystemDictionary(lots of globals)<br> category: #'OpenDBX-Core-Tests'<br> traitComposition: nil<br> localSelectors: nil<br>
<br>DBXMainBackendTestPostgresql class(TestCase class)>>withInheritedSelectors<br> Receiver: DBXMainBackendTestPostgresql<br> Arguments and temporary variables: <br><br> Receiver's instance variables: <br>
superclass: DBXMainBackendTest<br> methodDict: a MethodDictionary(#facilityToTest->a CompiledMethod (1970) )<br> format: 132<br> instanceVariables: nil<br> organization: ('facility' facilityToTest)<br>
<br> subclasses: nil<br> name: #DBXMainBackendTestPostgresql<br> classPool: nil<br> sharedPools: nil<br> environment: a SystemDictionary(lots of globals)<br> category: #'OpenDBX-Core-Tests'<br>
traitComposition: nil<br> localSelectors: nil<br><br>DBXMainBackendTestPostgresql class(TestCase class)>>testsSelect:<br> Receiver: DBXMainBackendTestPostgresql<br> Arguments and temporary variables: <br>
aBlock: [] in DBXMainBackendTestPostgresql class(TestCase class)>>suiteWithSele...etc...<br> selector: nil<br> s: nil<br> Receiver's instance variables: <br> superclass: DBXMainBackendTest<br>
methodDict: a MethodDictionary(#facilityToTest->a CompiledMethod (1970) )<br> format: 132<br> instanceVariables: nil<br> organization: ('facility' facilityToTest)<br>
<br> subclasses: nil<br> name: #DBXMainBackendTestPostgresql<br> classPool: nil<br> sharedPools: nil<br> environment: a SystemDictionary(lots of globals)<br> category: #'OpenDBX-Core-Tests'<br>
traitComposition: nil<br> localSelectors: nil<br><br>[] in DBXMainBackendTestPostgresql class(TestCase class)>>suiteWithSelectorsMatching: {[:testClass | suite addTests: (testClass testsSelect: [:sel | pattern ...]}<br>
Arguments and temporary variables: <br> pattern: 'test*'<br> suite: a TestSuite<br> testClass: DBXMainBackendTestPostgresql<br> sel: nil<br><br><br>--- The full stack ---<br>
DBXMainBackendTestPostgresql class(Object)>>doesNotUnderstand: #allSelectorsBelow:<br>DBXMainBackendTestPostgresql class(TestCase class)>>withInheritedSelectors<br>DBXMainBackendTestPostgresql class(TestCase class)>>testsSelect:<br>
[] in DBXMainBackendTestPostgresql class(TestCase class)>>suiteWithSelectorsMatching: {[:testClass | suite addTests: (testClass testsSelect: [:sel | pattern ...]}<br> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -<br>
Array(SequenceableCollection)>>do:<br>[] in DBXMainBackendTestPostgresql class(TestCase class)>>suiteWithSelectorsMatching: {[:suite | self theClasses do: [:testClass | suite addTests: (testClass...]}<br>
TestSuite(Object)>>in:<br>TestSuite class>>define:<br>DBXMainBackendTestPostgresql class(TestCase class)>>suiteWithSelectorsMatching:<br>DBXMainBackendTestPostgresql class(TestCase class)>>allStandardTests<br>
DBXMainBackendTestPostgresql class(TestCase class)>>suite:<br>[] in TestSuite>>fromClasses:suites:select:reject: {[:suite | self addTests: (testClass suite: suite) tests]}<br>Set>>do:<br>[] in TestSuite>>fromClasses:suites:select:reject: {[:testClass | suites do: [:suite | self addTests: (testClass suite: suite...]}<br>
Set>>do:<br>TestSuite>>fromClasses:suites:select:reject:<br>TestSuite class>>classes:suites:select:reject:<br>TestRunner>>suiteAll<br>TestRunner>>runAll<br>PluggableButtonMorphPlus(PluggableButtonMorph)>>performAction<br>
PluggableButtonMorphPlus>>performAction<br>[] in PluggableButtonMorphPlus(PluggableButtonMorph)>>mouseUp: {[:m | (m containsPoint: evt cursorPoint) ifTrue: [m performAction]]}<br>Array(SequenceableCollection)>>do:<br>
PluggableButtonMorphPlus(PluggableButtonMorph)>>mouseUp:<br>PluggableButtonMorphPlus>>mouseUp:<br>...etc...<br><br> </div><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<br>
Cheers,<br>
- Andreas<br>
<br>
Mariano Martinez Peck wrote:<br>
<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;"><div><div></div><div class="h5">
Hi everybody:<br>
<br>
I am having a problem with Sunit on Squeak. I have a class called A and has a testXXX method (method that should be executed by sunit). I have class B that inherits from A and has no test method (method that should be run by sunit). When I want to run the tests of B (from Test Runner) I notice that testXXX is not run. I mean, zero runs for class B. I think this is incorrect. Am I ok ? Should testXXX be executed in this case ?<br>
<br>
Thanks for the help.<br>
<br>
Mariano<br>
<br>
<br></div></div>
------------------------------------------------------------------------<br>
<br>
<br>
</blockquote>
<br>
<br>
</blockquote></div><br>