← Back to team overview

nunit-core team mailing list archive

[Bug 629661] Re: Theory and Datapoints

 

I thougt after reading the manual that theory is the general test not depends on special data. But the programmer only can give the borders and data, which might be a problem.
By the way, what I have missed in the manual: Assume is for precondition, Assert for postcondition and it can be used for programming by contract.

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