Re: NUnit 2.5: What's In It Now

"Charlie Poole" <[email protected]> Sun, 6 Apr 2008 21:20:53 -0700
Newsgroups gmane.comp.windows.dotnet.nunit.devel
Message-ID <003601c89866$cb3f2b60$6401a8c0@ferrari>
Hi Kelly, 

> I'm going to assume that you looked at my implementation of Assume.
> That is, it was exactly like Assert, except that it threw a 
> different exception. How that exception gets handled by the 
> framework is an independent question.

I didn't, but it works as I figured it would work. The implementation
part is pretty straightforward.

I guess I'm not able to separate the /intention/ of the feature from
the implementation as easily as you are. Simply saying that it's
a different exception and the framework can do whatever it wants
with it begs the question of what you intend to be done with it.

It seems to me that the natural meaning of Assume.That only
makes sense in the context of a Theory implementation where
the programmer does not directly control the inputs. If the
programmer controls the inputs, then Assume makes no sense
except as a different kind of error - you gave me bad data.
  
> Would your implementation of Assume be different than that?

No - but what I do with the exception may differ.
 
> Or, are you simply saying that you don't want to release 
> Assume without also releasing Theory. Do they need to be tied 
> together to be useful?

That's my view. And we aren't talking about years here, so 
I don't see the sense of rushing into it.

> 
> I guess I just don't understand if you didn't like the way I 
> implemented Assume, or if you just have difficulty with doing 
> it without some fuller approach to Theory first.

I think that it's a bad idea to implement Assume as an
independent feature. I'm not stopping you from implementing
it, since you do think it's a good idea, but you seem to
be trying to convince me to do it.
 
> I'm not trying to be confrontational, I just really don't 
> understand the sense in which you are objecting to putting 
> Assume in earlier rather than later...

Separately rather than "as a part of" would be my terms.

> Consider this use case of a data test  (which is real, I did 
> it Thursday)... I want to iterate over all the files in a 
> directory, and validate things about the files if they are 
> the right type and version. I could do this with your 
> proposed 2.5 like this:

<snipped long example/>

Your example works fine without Assume - just substitute
"if" for "Assume.That" 


> >  2) As I mentionned in the earlier note, it's not hard  for 
> someone to 
> > implement Theory as an extension using  the existing 
> extension points. 
> > Gary has done that, in fact.
> 
> I'm not really talking about Theory, I'm talking about 
> Assume. It's great what Gary has done, but without Assume, 
> it's only half the story.

So modify it. Or write your own. Or write something else
that incorporates Assume. It will need some kind of test that
interprets the exception - just as only NUnitTestMethods 
know what an AssertionException means.
 
> >  3) What you were proposing in earlier discussions came  
> across to me 
> > - perhaps wrongly - as a sort of Potemkin  Theory implementation. 
> > That's what I reacted to, not  to the notion of you or 
> anyone creating 
> > a true Theory  implementation as an addin. Go to it if you 
> like. It's  
> > just not in /my/ workplan for 2.5.
> 
> Yes, that's what I understood.
> 
> >  4) Earlier, in reacting to what I perceive as your  trying to push 
> > more and more into 2.5, at the expense  of getting started 
> with 3.0, I 
> > reacted strongly.
> >  Unfortunately, that reaction was taken by others as  discouraging 
> > their efforts. Nothing could be farther  from my intent.
> 
> I understand the tension between putting more stuff in 2.5 
> and getting on with 3.0, I do.
> 
> >  I don't want to discourage you - not even, :-) - from  doing stuff 
> > either. In fact I encourage it. Have you  tried out Gary's Theory 
> > extension? Does it work for you?
> >  Does it need something? Can you contribute whatever  that is? ... 
> > See, I'm encouraging you. :-)
> 
> I have not yet tried Gary's extension, but I intend to do so 
> as soon as I have a chance. Things have been a bit busy lately.

Well that's one thing we have in common. :-)

Charlie

> -Kelly
> 
> --------------------------------------------------------------
> -----------
> This SF.net email is sponsored by the 2008 JavaOne(SM) 
> Conference Register now and save $200. Hurry, offer ends at 
> 11:59 p.m., Monday, April 7! Use priority code J8TLD2. 
> http://ad.doubleclick.net/clk;198757673;13503038;p?http://java
> .sun.com/javaone
> _______________________________________________
> nunit-developer mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/nunit-developer
> 



-------------------------------------------------------------------------
This SF.net email is sponsored by the 2008 JavaOne(SM) Conference 
Register now and save $200. Hurry, offer ends at 11:59 p.m., 
Monday, April 7! Use priority code J8TLD2. 
http://ad.doubleclick.net/clk;198757673;13503038;p?http://java.sun.com/javaone