Thanx for the fast reply!
Concerning the combination of data sources with suites, I was
wondering if it was possible to call a method and pass a parameter
like the following:
[DynamicTestFactory]
[Factory("CreatePersons")]
public IEnumerable<Test> Suite(Person p)
{
yield return new TestCase("Test1", Test1(p));
}
public void Test1(Person p)
{
// do something with p
}
Max
On Jan 20, 4:46 pm, Jeff Brown <[email protected]> wrote:
> 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!- Hide quoted text -
>
> - Show quoted text -
--~--~---------~--~----~------------~-------~--~----~
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
-~----------~----~----~----~------~----~------~--~---