nunit-core team mailing list archive
-
nunit-core team
-
Mailing list archive
-
Message #00988
Re: [Bug 629661] [NEW] Theory and Datapoints
Hi,
You should be aware that Theories are somewhat experimental and underdeveloped
right now with significant changes planned for 3.0. The basic idea of
theories is that
the developer does _not_ control what test cases will be generated.
In the current NUnit implementation, I allowed use of the standard
data parameters
to supplement any data generated by NUnit, thereby guaranteeing that some
particular test cases will be used. Such test cases will probably be treated
differently in the future.
I'm moving this feature request to the 3.0 project so it can serve as a reminder
of the issues you are raising there.
Charlie
On Fri, Sep 3, 2010 at 9:59 AM, Rechenelf <629661@xxxxxxxxxxxxxxxxxx> wrote:
> Public bug reported:
>
> We should avoid usinge the mechanism for parameterized test in theories.
> The following example has "exploding" combinatorical parameters. To
> avoid this, we must use ValueSource.
>
> [Datapoints]
> public double[] as = new double[] { 0.0, 1.0, -1.0, 42.0 };
> public double[] bs = new double[] { 0.0, 1.0, 100.0 };
>
> [Theory]
> public void Add(double num1, double num2)
> {
> Assert.That(num1 + num2 == num2 + num1);
> }
>
>
> But it might be nicer if we really can avoid it using a new attribut Use:
> [Theory]
> public void Add([Use(as)] double num1, [Use(bs)] double num2)
> {
> Assert.That(num1 + num2 == num2 + num1);
> }
>
> ** Affects: nunitv2
> Importance: Undecided
> Status: New
>
>
> ** Tags: attribute datapoint feauture theory use
>
> --
> Theory and Datapoints
> https://bugs.launchpad.net/bugs/629661
> You received this bug notification because you are a member of NUnit
> Developers, which is subscribed to NUnit V2.
>
--
Theory and Datapoints
https://bugs.launchpad.net/bugs/629661
You received this bug notification because you are a member of NUnit
Core Developers, which is the registrant for NUnit Framework.
Status in NUnit Test Framework: New
Bug description:
We should avoid usinge the mechanism for parameterized test in theories. The following example has "exploding" combinatorical parameters. To avoid this, we must use ValueSource.
[Datapoints]
public double[] as = new double[] { 0.0, 1.0, -1.0, 42.0 };
public double[] bs = new double[] { 0.0, 1.0, 100.0 };
[Theory]
public void Add(double num1, double num2)
{
Assert.That(num1 + num2 == num2 + num1);
}
But it might be nicer if we really can avoid it using a new attribut Use:
[Theory]
public void Add([Use(as)] double num1, [Use(bs)] double num2)
{
Assert.That(num1 + num2 == num2 + num1);
}
References