Skip to content

Commit 541c7ef

Browse files
committed
For comparison I tried properties on a partial class rather than extension methods
1 parent b2bca5f commit 541c7ef

File tree

9 files changed

+64
-58
lines changed

9 files changed

+64
-58
lines changed

TestStack.Dossier.Tests/EquivalenceClasses/AddressAusEquivalenceTests.cs

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -22,24 +22,24 @@ protected override List<object[]> GetData()
2222
return new List<object[]>
2323
{
2424
new object[]
25-
{new Words(FromDictionary.AddressAusCity), GenerateTestCasesForSut(Any.AddressAus().City)},
25+
{new Words(FromDictionary.AddressAusCity), GenerateTestCasesForSut(Any.AddressAus.City)},
2626
new object[]
27-
{new Words(FromDictionary.AddressAusCompany), GenerateTestCasesForSut(Any.AddressAus().Company)},
27+
{new Words(FromDictionary.AddressAusCompany), GenerateTestCasesForSut(Any.AddressAus.Company)},
2828
new object[]
29-
{new Words(FromDictionary.AddressAusPhone), GenerateTestCasesForSut(Any.AddressAus().Phone)},
29+
{new Words(FromDictionary.AddressAusPhone), GenerateTestCasesForSut(Any.AddressAus.Phone)},
3030
new object[]
31-
{new Words(FromDictionary.AddressAusPostCode), GenerateTestCasesForSut(Any.AddressAus().PostCode)},
31+
{new Words(FromDictionary.AddressAusPostCode), GenerateTestCasesForSut(Any.AddressAus.PostCode)},
3232
new object[]
33-
{new Words(FromDictionary.AddressAusState), GenerateTestCasesForSut(Any.AddressAus().State)},
33+
{new Words(FromDictionary.AddressAusState), GenerateTestCasesForSut(Any.AddressAus.State)},
3434
new object[]
3535
{
3636
new Words(FromDictionary.AddressAusStateAbbreviation),
37-
GenerateTestCasesForSut(Any.AddressAus().StateAbbreviation)
37+
GenerateTestCasesForSut(Any.AddressAus.StateAbbreviation)
3838
},
3939
new object[]
40-
{new Words(FromDictionary.AddressAusStreet), GenerateTestCasesForSut(Any.AddressAus().Street)},
40+
{new Words(FromDictionary.AddressAusStreet), GenerateTestCasesForSut(Any.AddressAus.Street)},
4141
new object[]
42-
{new Words(FromDictionary.AddressAusWebsite), GenerateTestCasesForSut(Any.AddressAus().Website)},
42+
{new Words(FromDictionary.AddressAusWebsite), GenerateTestCasesForSut(Any.AddressAus.Website)},
4343
};
4444
}
4545
}

TestStack.Dossier.Tests/EquivalenceClasses/AddressUkEquivalenceTests.cs

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -22,19 +22,19 @@ protected override List<object[]> GetData()
2222
return new List<object[]>
2323
{
2424
new object[]
25-
{new Words(FromDictionary.AddressUkCounty), GenerateTestCasesForSut(Any.AddressUk().County)},
25+
{new Words(FromDictionary.AddressUkCounty), GenerateTestCasesForSut(Any.AddressUk.County)},
2626
new object[]
27-
{new Words(FromDictionary.AddressUkCity), GenerateTestCasesForSut(Any.AddressUk().City)},
27+
{new Words(FromDictionary.AddressUkCity), GenerateTestCasesForSut(Any.AddressUk.City)},
2828
new object[]
29-
{new Words(FromDictionary.AddressUkCompany), GenerateTestCasesForSut(Any.AddressUk().Company)},
29+
{new Words(FromDictionary.AddressUkCompany), GenerateTestCasesForSut(Any.AddressUk.Company)},
3030
new object[]
31-
{new Words(FromDictionary.AddressUkPhone), GenerateTestCasesForSut(Any.AddressUk().Phone)},
31+
{new Words(FromDictionary.AddressUkPhone), GenerateTestCasesForSut(Any.AddressUk.Phone)},
3232
new object[]
33-
{new Words(FromDictionary.AddressUkPostCode), GenerateTestCasesForSut(Any.AddressUk().PostCode)},
33+
{new Words(FromDictionary.AddressUkPostCode), GenerateTestCasesForSut(Any.AddressUk.PostCode)},
3434
new object[]
35-
{new Words(FromDictionary.AddressUkStreet), GenerateTestCasesForSut(Any.AddressUk().Street)},
35+
{new Words(FromDictionary.AddressUkStreet), GenerateTestCasesForSut(Any.AddressUk.Street)},
3636
new object[]
37-
{new Words(FromDictionary.AddressUkWebsite), GenerateTestCasesForSut(Any.AddressUk().Website)},
37+
{new Words(FromDictionary.AddressUkWebsite), GenerateTestCasesForSut(Any.AddressUk.Website)},
3838
};
3939
}
4040
}

TestStack.Dossier.Tests/EquivalenceClasses/AddressUsEquivalenceTests.cs

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -22,26 +22,26 @@ protected override List<object[]> GetData()
2222
return new List<object[]>
2323
{
2424
new object[]
25-
{new Words(FromDictionary.AddressUsCity), GenerateTestCasesForSut(Any.AddressUs().City)},
25+
{new Words(FromDictionary.AddressUsCity), GenerateTestCasesForSut(Any.AddressUs.City)},
2626
new object[]
27-
{new Words(FromDictionary.AddressUsCompany), GenerateTestCasesForSut(Any.AddressUs().Company)},
27+
{new Words(FromDictionary.AddressUsCompany), GenerateTestCasesForSut(Any.AddressUs.Company)},
2828
new object[]
29-
{new Words(FromDictionary.AddressUsPhone), GenerateTestCasesForSut(Any.AddressUs().Phone)},
29+
{new Words(FromDictionary.AddressUsPhone), GenerateTestCasesForSut(Any.AddressUs.Phone)},
3030
new object[]
31-
{new Words(FromDictionary.AddressUsSocialSecurityNumber), GenerateTestCasesForSut(Any.AddressUs().SocialSecurityNumber)},
31+
{new Words(FromDictionary.AddressUsSocialSecurityNumber), GenerateTestCasesForSut(Any.AddressUs.SocialSecurityNumber)},
3232
new object[]
33-
{new Words(FromDictionary.AddressUsState), GenerateTestCasesForSut(Any.AddressUs().State)},
33+
{new Words(FromDictionary.AddressUsState), GenerateTestCasesForSut(Any.AddressUs.State)},
3434
new object[]
3535
{
3636
new Words(FromDictionary.AddressUsStateAbbreviation),
37-
GenerateTestCasesForSut(Any.AddressUs().StateAbbreviation)
37+
GenerateTestCasesForSut(Any.AddressUs.StateAbbreviation)
3838
},
3939
new object[]
40-
{new Words(FromDictionary.AddressUsStreet), GenerateTestCasesForSut(Any.AddressUs().Street)},
40+
{new Words(FromDictionary.AddressUsStreet), GenerateTestCasesForSut(Any.AddressUs.Street)},
4141
new object[]
42-
{new Words(FromDictionary.AddressUsWebsite), GenerateTestCasesForSut(Any.AddressUs().Website)},
42+
{new Words(FromDictionary.AddressUsWebsite), GenerateTestCasesForSut(Any.AddressUs.Website)},
4343
new object[]
44-
{new Words(FromDictionary.AddressUsZipCode), GenerateTestCasesForSut(Any.AddressUs().ZipCode)}
44+
{new Words(FromDictionary.AddressUsZipCode), GenerateTestCasesForSut(Any.AddressUs.ZipCode)}
4545
};
4646
}
4747
}

TestStack.Dossier.Tests/EquivalenceClasses/ColourEquivalenceTests.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -22,9 +22,9 @@ protected override List<object[]> GetData()
2222
return new List<object[]>
2323
{
2424
new object[]
25-
{new Words(FromDictionary.ColourHex), GenerateTestCasesForSut(Any.Colour().Hex)},
25+
{new Words(FromDictionary.ColourHex), GenerateTestCasesForSut(Any.Colour.Hex)},
2626
new object[]
27-
{new Words(FromDictionary.ColourName), GenerateTestCasesForSut(Any.Colour().Name)}
27+
{new Words(FromDictionary.ColourName), GenerateTestCasesForSut(Any.Colour.Name)}
2828
};
2929
}
3030
}

TestStack.Dossier.Tests/EquivalenceClasses/CompanyEquivalenceTests.cs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -22,13 +22,13 @@ protected override List<object[]> GetData()
2222
return new List<object[]>
2323
{
2424
new object[]
25-
{new Words(FromDictionary.CompanyName), GenerateTestCasesForSut(Any.Company().Name)},
25+
{new Words(FromDictionary.CompanyName), GenerateTestCasesForSut(Any.Company.Name)},
2626
new object[]
27-
{new Words(FromDictionary.CompanyIndustry), GenerateTestCasesForSut(Any.Company().Industry)},
27+
{new Words(FromDictionary.CompanyIndustry), GenerateTestCasesForSut(Any.Company.Industry)},
2828
new object[]
29-
{new Words(FromDictionary.CompanyJobTitle), GenerateTestCasesForSut(Any.Company().JobTitle)},
29+
{new Words(FromDictionary.CompanyJobTitle), GenerateTestCasesForSut(Any.Company.JobTitle)},
3030
new object[]
31-
{new Words(FromDictionary.CompanyLocation), GenerateTestCasesForSut(Any.Company().Location)}
31+
{new Words(FromDictionary.CompanyLocation), GenerateTestCasesForSut(Any.Company.Location)}
3232
};
3333
}
3434
}

TestStack.Dossier.Tests/EquivalenceClasses/FinanceEquivalenceTests.cs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -22,13 +22,13 @@ protected override List<object[]> GetData()
2222
return new List<object[]>
2323
{
2424
new object[]
25-
{new Words(FromDictionary.FinanceCreditCardNumber), GenerateTestCasesForSut(Any.Finance().CreditCardNumber)},
25+
{new Words(FromDictionary.FinanceCreditCardNumber), GenerateTestCasesForSut(Any.Finance.CreditCardNumber)},
2626
new object[]
27-
{new Words(FromDictionary.FinanceCreditCardType), GenerateTestCasesForSut(Any.Finance().CreditCardType)},
27+
{new Words(FromDictionary.FinanceCreditCardType), GenerateTestCasesForSut(Any.Finance.CreditCardType)},
2828
new object[]
29-
{new Words(FromDictionary.FinanceCurrency), GenerateTestCasesForSut(Any.Finance().Currency)},
29+
{new Words(FromDictionary.FinanceCurrency), GenerateTestCasesForSut(Any.Finance.Currency)},
3030
new object[]
31-
{new Words(FromDictionary.FinanceCurrencyCode), GenerateTestCasesForSut(Any.Finance().CurrencyCode)}
31+
{new Words(FromDictionary.FinanceCurrencyCode), GenerateTestCasesForSut(Any.Finance.CurrencyCode)}
3232
};
3333
}
3434
}

TestStack.Dossier.Tests/EquivalenceClasses/FrequencyEquivalenceTests.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ protected override List<object[]> GetData()
2222
return new List<object[]>
2323
{
2424
new object[]
25-
{new Words(FromDictionary.Frequency), GenerateTestCasesForSut(Any.Frequency)}
25+
{new Words(FromDictionary.Frequency), GenerateTestCasesForSut(Any.Frequency.Frequency)}
2626
};
2727
}
2828
}

TestStack.Dossier/AnonymousValueFixture.cs

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,7 @@
11
using System;
2-
using System.Collections.Concurrent;
32
using System.Collections.Generic;
43
using System.Linq;
54
using System.Linq.Expressions;
6-
using System.Text;
75
using Ploeh.AutoFixture;
86
using TestStack.Dossier.DataSources.Dictionaries;
97
using TestStack.Dossier.Suppliers;
@@ -14,7 +12,7 @@ namespace TestStack.Dossier
1412
/// Allows you to create extension methods to generate anonymous values and to set up
1513
/// conventions for automatic generation of anonymous values based on property expressions.
1614
/// </summary>
17-
public class AnonymousValueFixture
15+
public partial class AnonymousValueFixture
1816
{
1917
static AnonymousValueFixture()
2018
{

TestStack.Dossier/EquivalenceClasses/Equivalence.cs

Lines changed: 28 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -2,56 +2,64 @@
22
namespace TestStack.Dossier
33
{
44
/// <summary>
5-
/// Extension methods that describe equivalence classes for generating anonymous values.
5+
/// Equivalence classes for generating anonymous values.
66
/// </summary>
7-
public static class Equivalence
7+
public partial class AnonymousValueFixture
88
{
99
/// <summary>
10-
/// Extension methods that describe equivalence classes for generating anonymous Australian address-related values.
10+
/// Equivalence classes for generating anonymous Australian address-related values.
1111
/// </summary>
12-
public static AddressAusEquivalence AddressAus(this AnonymousValueFixture fixture)
12+
public AddressAusEquivalence AddressAus
1313
{
14-
return new AddressAusEquivalence(fixture);
14+
get { return new AddressAusEquivalence(this); }
1515
}
1616

1717
/// <summary>
18-
/// Extension methods that describe equivalence classes for generating anonymous United Kingdom address-related values.
18+
/// Equivalence classes for generating anonymous United Kingdom address-related values.
1919
/// </summary>
20-
public static AddressUkEquivalence AddressUk(this AnonymousValueFixture fixture)
20+
public AddressUkEquivalence AddressUk
2121
{
22-
return new AddressUkEquivalence(fixture);
22+
get { return new AddressUkEquivalence(this);}
2323
}
2424

2525
/// <summary>
26-
/// Extension methods that describe equivalence classes for generating anonymous United States address-related values.
26+
/// Equivalence classes for generating anonymous United States address-related values.
2727
/// </summary>
28-
public static AddressUsEquivalence AddressUs(this AnonymousValueFixture fixture)
28+
public AddressUsEquivalence AddressUs
2929
{
30-
return new AddressUsEquivalence(fixture);
30+
get { return new AddressUsEquivalence(this); }
3131
}
3232

3333
/// <summary>
34-
/// Extension methods that describe equivalence classes for generating anonymous colour-related values.
34+
/// Equivalence classes for generating anonymous colour-related values.
3535
/// </summary>
36-
public static ColourEquivalence Colour(this AnonymousValueFixture fixture)
36+
public ColourEquivalence Colour
3737
{
38-
return new ColourEquivalence(fixture);
38+
get { return new ColourEquivalence(this); }
3939
}
4040

4141
/// <summary>
42-
/// Extension methods that describe equivalence classes for generating anonymous company-related values.
42+
/// Equivalence classes for generating anonymous company-related values.
4343
/// </summary>
44-
public static CompanyEquivalence Company(this AnonymousValueFixture fixture)
44+
public CompanyEquivalence Company
4545
{
46-
return new CompanyEquivalence(fixture);
46+
get { return new CompanyEquivalence(this); }
4747
}
4848

4949
/// <summary>
50-
/// Extension methods that describe equivalence classes for generating anonymous finance-related values.
50+
/// Equivalence classes for generating anonymous finance-related values.
5151
/// </summary>
52-
public static FinanceEquivalence Finance(this AnonymousValueFixture fixture)
52+
public FinanceEquivalence Finance
5353
{
54-
return new FinanceEquivalence(fixture);
54+
get { return new FinanceEquivalence(this); }
55+
}
56+
57+
/// <summary>
58+
/// Equivalence classes for generating anonymous frequency-related values.
59+
/// </summary>
60+
public FrequencyEquivalence Frequency
61+
{
62+
get { return new FrequencyEquivalence(this); }
5563
}
5664
}
5765
}

0 commit comments

Comments
 (0)