← Back to team overview

nunit-core team mailing list archive

[Bug 629661] Re: Theory and Datapoints

 

Assume is only similar to a precondition - it is not an error if an assume fails and the test case is simply not used.
If all test cases fail the assumptions then the theory fails. If any test cases fail the Asserts then the theory fails.

For a more general discussion about this, if you would like it, please
ask on the nunit-discuss list.

-- 
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