site/xunit.analyzers/rules/xUnit9007.md
A violation of this rule occurs when a test class is decorated with IConnectionFixture<>.
Collection fixtures may only be declared on collection definition classes.
The two most common scenarios for this to occur are:
IClassFixture<>To fix a violation of this rule, either replace ICollectionFixture<> with IClassFixture<>, or separate the collection definition into its own class.
using Xunit;
public class xUnit9007 : ICollectionFixture<object>
{
[Fact]
public void TestMethod()
{ }
}
using Xunit;
[CollectionDefinition]
[Collection(typeof(xUnit9007))]
public class xUnit9007 : ICollectionFixture<object>
{
[Fact]
public void TestMethod()
{ }
}
using Xunit;
public class xUnit9007 : IClassFixture<object>
{
[Fact]
public void TestMethod()
{ }
}
using Xunit;
[CollectionDefinition]
public class xUnit9007Collection : ICollectionFixture<object>
{ }
[Collection(typeof(xUnit9007Collection))]
public class xUnit9007
{
[Fact]
public void TestMethod()
{ }
}