Just to be clear, the example given is not from the docs, as it seems from reading the bug description. The behavior still seems odd though.
Charlie On Mon, Jan 10, 2011 at 6:27 PM, Isaac Devine <[email protected]> wrote: > Public bug reported: > > Using Nunit 2.5.9 GUI Runner & 2.5.9 framework. > > TestFixutre attributes on derived classes should replace any declared on > superclasses, which is what is described in the documentation: > > http://nunit.org/index.php?p=testFixture&r=2.5.9 > ---------------------------------------------------------------- > Inheritance > > The TestFixtureAttribute may be applied to a base class and is inherited > by any derived classes. This includes any abstract base class, so the > well-known Abstract Fixture pattern may be implemented if desired. > > In order to facilitate use of generic and/or parameterized classes, where the > derived class may require a different number of arguments (or type arguments) > from the base class, any TestFixture attribute on a derived class causes > those on the base classes to be ignored. This allows use of code like the > following: > ----------------------------------------------------------------- > > Example: > ------------------------------------------------------------- > [TestFixture(typeof(TagClassDefault))] > public abstract class AbstractBase<T> > { > [Test] > public void TestMethod() > { > } > } > > > [TestFixture(typeof(TagClassCustom))] > public class ConcreteClass<T> : AbstractBase<T> > { > } > > > public class TagClassDefault > { > } > > public class TagClassCustom > { > } > > ----------------------------------- > > Expected Behaviour: > ConcreteClass is constructed with the TagClassCustom type parameter only > > Actual Behaviour: > ConcreateClass is constructed twice, once with TagClassCustom, the other > with TagClassDefault > > ** Affects: nunitv2 > Importance: Undecided > Status: New > > -- > You received this bug notification because you are a member of NUnit > Developers, which is subscribed to NUnit V2. > https://bugs.launchpad.net/bugs/701331 > > Title: > TestFixture attributes on base classes are not ignored > -- You received this bug notification because you are a member of NUnit Developers, which is subscribed to NUnit V2. https://bugs.launchpad.net/bugs/701331 Title: TestFixture attributes on base classes are not ignored Status in NUnit V2 Test Framework: New Bug description: Using Nunit 2.5.9 GUI Runner & 2.5.9 framework. TestFixutre attributes on derived classes should replace any declared on superclasses, which is what is described in the documentation: http://nunit.org/index.php?p=testFixture&r=2.5.9 ---------------------------------------------------------------- Inheritance The TestFixtureAttribute may be applied to a base class and is inherited by any derived classes. This includes any abstract base class, so the well-known Abstract Fixture pattern may be implemented if desired. In order to facilitate use of generic and/or parameterized classes, where the derived class may require a different number of arguments (or type arguments) from the base class, any TestFixture attribute on a derived class causes those on the base classes to be ignored. This allows use of code like the following: ----------------------------------------------------------------- Example: ------------------------------------------------------------- [TestFixture(typeof(TagClassDefault))] public abstract class AbstractBase<T> { [Test] public void TestMethod() { } } [TestFixture(typeof(TagClassCustom))] public class ConcreteClass<T> : AbstractBase<T> { } public class TagClassDefault { } public class TagClassCustom { } ----------------------------------- Expected Behaviour: ConcreteClass is constructed with the TagClassCustom type parameter only Actual Behaviour: ConcreateClass is constructed twice, once with TagClassCustom, the other with TagClassDefault _______________________________________________ Mailing list: https://launchpad.net/~nunit-core Post to : [email protected] Unsubscribe : https://launchpad.net/~nunit-core More help : https://help.launchpad.net/ListHelp

