Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Combinatorial data in xUnit.NET?

I'm migrating from MbUnit to xUnit, and I'm trying to locate the equivalent attributes (or approach) to MbUnit's [CombinatorialJoin] and [Column].

For example, when testing common behavior of a function with multiple boolean parameters, [Column] makes it very easy to test the permutations:

public void TestMethodWithTooManyOptions([Column(true, false)] bool dispose,
                                        [Column(true, false)] bool useDestinationStream,
                                        [Column(true, false)] bool useCorruptedSource,
                                        [Column(true, false)] bool loadTwice,
                                        [Column(true, false)] bool useSourceStream) {

[CombinatorialJoin], [SequentialJoin], [PairwiseJoin] affect how columns (or rows) are permuted.

like image 427
Lilith River Avatar asked Sep 10 '14 14:09

Lilith River


2 Answers

This is perhaps a correct response...

https://github.com/AArnott/Xunit.Combinatorial

like image 164
George Avatar answered Oct 19 '22 21:10

George


If you use ApprovalTests, you can create an xUnit.net Fact and the CombinationApprovals.VerifyAllCombinations method to run combinatorial tests.

It's not the same as using an attribute, but it's the best solution I have found in xUnit.

like image 1
kevinpo Avatar answered Oct 19 '22 21:10

kevinpo