It looks like you're trying to produce a list of Person objects to pass to
the tests.
Try this:
public class TestFixture
{
public IEnumerable<Person> CreatePersons()
{
yield return new Person("Mike");
yield return new Person("Jim");
}
[Test]
[Factory("CreatePersons")]
public void Test1(Person p)
{
Assert.AreEqual("Max", p.Name);
}
[Test]
[Factory("CreatePersons")]
public void Test2(Person p)
{
Assert.AreEqual("Max", p.Name);
}
}
Here the output will look like:
- Test1({Mike})
- Test1({Jim})
- Test2({Mike})
- Test2({Jim})
It should also be possible to combine data sources with suites like this. I
haven't tried it yet...
[DynamicTestFactory]
[Factory("CreatePersons")]
public IEnumerable<Test> Suite(Person p)
{
yield return new TestCase("Test1", () => {
// do something with p.
});
}
Jeff.
On Tue, Jan 20, 2009 at 12:52 PM, max2256 <[email protected]> wrote:
>
> Hi,
>
> I'm new to MbUnit. I would like to know if there is a way of doing the
> following with MbUnit V3 or any MbUnit version. (mixture of TestSuite
> and DataDriven testing) :
>
> [TestFixture]
> public class TestFixture
> {
> [Row(typeof(Person), new Person("Max"))]
> [Row(typeof(Person), new Person("Mike"))]
> [Row(typeof(Person), new Person("Frank"))]
> [TestSuite]
> public TestSuite GetSuite(Person p)
> {
> // add tests to TestSuite
> }
>
> [Test]
> public void Test1(Person p)
> {
> Assert.AreEqual("Max", p.Name);
> }
>
> [Test]
> public void Test2(Person p)
> {
> Assert.AreEqual("Frank", p.Name);
> }
> }
>
> The report generated would look like this:
>
> -Person("Max")
> -- Test1
> -- Test2
> -Person("Mike")
> -- Test1
> -- Test2
> -Person("Frank")
> -- Test1
> -- Test2
>
> Any suggestions?
>
> Thanx!
>
>
>
>
>
>
> >
>
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups
"MbUnit.User" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/MbUnitUser?hl=en
-~----------~----~----~----~------~----~------~--~---