Skip to content

Commit 260c67d

Browse files
committed
Merge pull request #20 from robdmoore/tweaks
Tweaks
2 parents a850c43 + dab73c9 commit 260c67d

File tree

3 files changed

+14
-7
lines changed

3 files changed

+14
-7
lines changed

NTestDataBuilder.Tests/EquivalenceClasses/PersonEquivalenceClassesTests.cs

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -38,12 +38,14 @@ public void WhenGettingAnyPersonData_ThenReturnRandomPersonDataWhichIsReasonably
3838
}
3939

4040
[Fact]
41-
public void WhenGettingUniqueEmail_ThenReturnUniqueEmails()
41+
public void WhenGettingUniqueEmail_ThenReturnUniqueEmailsAcrossFixtureInstances()
4242
{
4343
var source = new PersonEmailAddressSource();
4444
var generatedValues = new List<string>();
45+
var any2 = new AnonymousValueFixture();
4546

46-
for (var i = 0; i < source.Data.Count; i++)
47+
generatedValues.Add(any2.UniqueEmailAddress());
48+
for (var i = 0; i < source.Data.Count - 1; i++)
4749
{
4850
generatedValues.Add(Any.UniqueEmailAddress());
4951
}

NTestDataBuilder/EquivalenceClasses/Person/PersonEquivalenceClasses.cs

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ namespace NTestDataBuilder.EquivalenceClasses.Person
1010
public static class NameEquivalenceClasses
1111
{
1212
private static PersonEmailAddressSource _personEmailAddressSource;
13-
private static PersonEmailAddressSource _personUniqueEmailAddressSource;
13+
private static PersonEmailAddressSource _uniquePersonEmailAddressSource;
1414
private static PersonLanguageSource _personLanguageSource;
1515
private static PersonNameFirstFemaleSource _personNameFirstFemaleSource;
1616
private static PersonNameFirstSource _personNameFirstSource;
@@ -38,13 +38,14 @@ public static string EmailAddress(this AnonymousValueFixture fixture)
3838
/// <returns>The generated unique email</returns>
3939
public static string UniqueEmailAddress(this AnonymousValueFixture fixture)
4040
{
41-
if (fixture.Bag.UniqueEmailAddressSource == null)
41+
if (_uniquePersonEmailAddressSource == null)
4242
{
43+
if (_personEmailAddressSource == null) _personEmailAddressSource = new PersonEmailAddressSource();
4344
var generator = new SequentialGenerator(0, _personEmailAddressSource.Data.Count, listShouldBeUnique: true);
44-
fixture.Bag.UniqueEmailAddressSource = new PersonEmailAddressSource(generator);
45+
_uniquePersonEmailAddressSource = new PersonEmailAddressSource(generator);
4546
}
4647

47-
return fixture.Bag.UniqueEmailAddressSource.Next();
48+
return _uniquePersonEmailAddressSource.Next();
4849
}
4950

5051
/// <summary>

NTestDataBuilder/TestDataBuilder.cs

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,11 @@ public abstract class TestDataBuilder<TObject, TBuilder>
1616
{
1717
private readonly Dictionary<string, object> _properties = new Dictionary<string, object>();
1818
private ProxyBuilder<TObject> _proxyBuilder;
19-
internal ListBuilder<TObject, TBuilder> ListBuilder { get; set; }
19+
20+
/// <summary>
21+
/// The list builder instance (if this ia a list builder proxy).
22+
/// </summary>
23+
public ListBuilder<TObject, TBuilder> ListBuilder { get; internal set; }
2024

2125
/// <summary>
2226
/// Default Constructor.

0 commit comments

Comments
 (0)