Skip to content

Commit 1193aab

Browse files
committed
updated uses of random number generation in tests so that we log the seed used for later investigation
1 parent 0a23c07 commit 1193aab

File tree

9 files changed

+63
-12
lines changed

9 files changed

+63
-12
lines changed

test/E2ETest/Microsoft.Test.E2E.AspNet.OData/Formatter/CollectionPropertyTests.cs

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@
88
using System;
99
using System.Collections.Generic;
1010
using System.Collections.ObjectModel;
11+
using System.Diagnostics;
1112
using System.Linq;
1213
using System.Threading.Tasks;
1314
using Microsoft.OData.Client;
@@ -69,7 +70,10 @@ public async Task SupportPostCollectionPropertyByEntityPayload()
6970
// clear respository
7071
await this.ClearRepositoryAsync("CollectionProperty_Entity");
7172

72-
var rand = new Random(RandomSeedGenerator.GetRandomSeed());
73+
var seed = RandomSeedGenerator.GetRandomSeed();
74+
Trace.WriteLine($"Generated seed for random number generator: {seed}");
75+
76+
var rand = new Random(seed);
7377

7478
// post new entity to repository
7579
var baseline = InstanceCreator.CreateInstanceOf<CollectionProperty_Entity>(rand, settings);

test/E2ETest/Microsoft.Test.E2E.AspNet.OData/Formatter/ComplexTypeTests.cs

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77

88
using System;
99
using System.Collections.Generic;
10+
using System.Diagnostics;
1011
using System.Linq;
1112
using System.Threading.Tasks;
1213
using Microsoft.OData.Client;
@@ -66,7 +67,10 @@ public async Task ShouldSupportDerivedComplexTypeAsync()
6667
// clear respository
6768
await this.ClearRepositoryAsync("ComplexTypeTests_Entity");
6869

69-
var rand = new Random(RandomSeedGenerator.GetRandomSeed());
70+
var seed = RandomSeedGenerator.GetRandomSeed();
71+
Trace.WriteLine($"Generated seed for random number generator: {seed}");
72+
73+
var rand = new Random(seed);
7074

7175
// post new entity to repository
7276
var baseline = InstanceCreator.CreateInstanceOf<ComplexTypeTests_Entity>(rand, settings);

test/E2ETest/Microsoft.Test.E2E.AspNet.OData/Formatter/DeltaTests.cs

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,7 @@
3333
#else
3434
using System;
3535
using System.Collections.Generic;
36+
using System.Diagnostics;
3637
using System.ComponentModel;
3738
using System.Dynamic;
3839
using System.Linq;
@@ -222,7 +223,10 @@ public async Task TestApplyPatchOnIndividualProperty()
222223

223224
await this.Client.GetStringAsync(this.BaseAddress + "/$metadata");
224225

225-
Random r = new Random(RandomSeedGenerator.GetRandomSeed());
226+
var seed = RandomSeedGenerator.GetRandomSeed();
227+
Trace.WriteLine($"Generated seed for random number generator: {seed}");
228+
229+
var r = new Random(seed);
226230

227231
var s = new CreatorSettings()
228232
{

test/E2ETest/Microsoft.Test.E2E.AspNet.OData/Formatter/InheritanceTests.cs

Lines changed: 17 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77

88
using System;
99
using System.Collections.Generic;
10+
using System.Diagnostics;
1011
using System.Linq;
1112
using System.Net;
1213
using System.Threading.Tasks;
@@ -271,7 +272,10 @@ public async Task PostGetUpdateAndDelete(Type entityType, string entitySetNam)
271272
.FirstOrDefault();
272273

273274
var concreteTestMethod = testMethod.MakeGenericMethod(entityType);
274-
var rand = new Random(RandomSeedGenerator.GetRandomSeed());
275+
var seed = RandomSeedGenerator.GetRandomSeed();
276+
Trace.WriteLine($"Generated seed for random number generator: {seed}");
277+
278+
var rand = new Random(seed);
275279

276280
await (Task)concreteTestMethod.Invoke(this, new object[] { entitySetNam, rand });
277281
}
@@ -387,7 +391,10 @@ public virtual async Task AddAndRemoveBaseNavigationPropertyInDerivedType()
387391
// clear respository
388392
await this.ClearRepositoryAsync("InheritanceTests_Cars");
389393

390-
Random r = new Random(RandomSeedGenerator.GetRandomSeed());
394+
var seed = RandomSeedGenerator.GetRandomSeed();
395+
Trace.WriteLine($"Generated seed for random number generator: {seed}");
396+
397+
var r = new Random(seed);
391398

392399
// post new entity to repository
393400
CreatorSettings creatorSettings = new CreatorSettings()
@@ -429,7 +436,10 @@ public virtual async Task AddAndRemoveDerivedNavigationPropertyInDerivedType()
429436
// clear respository
430437
await this.ClearRepositoryAsync("InheritanceTests_Cars");
431438

432-
Random r = new Random(RandomSeedGenerator.GetRandomSeed());
439+
var seed = RandomSeedGenerator.GetRandomSeed();
440+
Trace.WriteLine($"Generated seed for random number generator: {seed}");
441+
442+
var r = new Random(seed);
433443

434444
// post new entity to repository
435445
CreatorSettings creatorSettings = new CreatorSettings()
@@ -471,7 +481,10 @@ public virtual async Task CreateAndDeleteLinkToDerivedNavigationPropertyOnBaseEn
471481
// clear respository
472482
await this.ClearRepositoryAsync("InheritanceTests_Vehicles");
473483

474-
Random r = new Random(RandomSeedGenerator.GetRandomSeed());
484+
var seed = RandomSeedGenerator.GetRandomSeed();
485+
Trace.WriteLine($"Generated seed for random number generator: {seed}");
486+
487+
var r = new Random(seed);
475488

476489
// post new entity to repository
477490
CreatorSettings creatorSettings = new CreatorSettings()

test/E2ETest/Microsoft.Test.E2E.AspNet.OData/Formatter/JsonLight/Metadata/MetadataTestHelpers.cs

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66
//------------------------------------------------------------------------------
77

88
using System;
9+
using System.Diagnostics;
910
using System.Net.Http;
1011
using System.Net.Http.Headers;
1112
using Microsoft.Test.E2E.AspNet.OData.Common.Instancing;
@@ -22,7 +23,12 @@ public static void SetAcceptHeader(this HttpRequestMessage message, string accep
2223

2324
public static T CreateInstances<T>()
2425
{
25-
var results = InstanceCreator.CreateInstanceOf<T>(new Random(RandomSeedGenerator.GetRandomSeed()), new CreatorSettings { NullValueProbability = 0, AllowEmptyCollection = false });
26+
var seed = RandomSeedGenerator.GetRandomSeed();
27+
Trace.WriteLine($"Generated seed for random number generator: {seed}");
28+
29+
var random = new Random(seed);
30+
31+
var results = InstanceCreator.CreateInstanceOf<T>(random, new CreatorSettings { NullValueProbability = 0, AllowEmptyCollection = false });
2632

2733
return results;
2834
}

test/E2ETest/Microsoft.Test.E2E.AspNet.OData/Formatter/RandomModelTests.cs

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77

88
using System;
99
using System.Collections.Generic;
10+
using System.Diagnostics;
1011
using System.Linq;
1112
using System.Reflection;
1213
using System.Threading.Tasks;
@@ -36,7 +37,11 @@ public static ODataModelTypeCreator Creator
3637
if (creator == null)
3738
{
3839
creator = new ODataModelTypeCreator();
39-
creator.CreateTypes(50, new Random(RandomSeedGenerator.GetRandomSeed()));
40+
var seed = RandomSeedGenerator.GetRandomSeed();
41+
Trace.WriteLine($"Generated seed for random number generator: {seed}");
42+
43+
var random = new Random(seed);
44+
creator.CreateTypes(50, random);
4045
}
4146
return creator;
4247
}
@@ -77,7 +82,10 @@ public async Task TestRandomEntityTypesAsync<T>(string entitySetName)
7782
await this.ClearRepositoryAsync(entitySetName);
7883

7984
// TODO: Get ride of random generator in test codes. It's bad idea to introduce random factors in functional test
80-
var rand = new Random(RandomSeedGenerator.GetRandomSeed());
85+
var seed = RandomSeedGenerator.GetRandomSeed();
86+
Trace.WriteLine($"Generated seed for random number generator: {seed}");
87+
88+
var rand = new Random(seed);
8189

8290
T entityBaseline = await PostNewEntityAsync<T>(entitySetName, rand);
8391

test/E2ETest/Microsoft.Test.E2E.AspNet.OData/ODataPathHandler/UnicodeRouteTests.cs

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77

88
using System;
99
using System.Collections.Generic;
10+
using System.Diagnostics;
1011
using System.Linq;
1112
using System.Threading.Tasks;
1213
using Microsoft.OData.Client;
@@ -72,7 +73,10 @@ protected static IEdmModel GetEdmModel(WebRouteConfiguration configuration)
7273
[Fact]
7374
public async Task CRUDEntitySetShouldWork()
7475
{
75-
var rand = new Random(RandomSeedGenerator.GetRandomSeed());
76+
var seed = RandomSeedGenerator.GetRandomSeed();
77+
Trace.WriteLine($"Generated seed for random number generator: {seed}");
78+
79+
var rand = new Random(seed);
7680
var entitySetName = "UnicodeRouteTests_Todoü";
7781
var uri = new Uri(this.BaseAddress + "/odataü");
7882
var context = new DataServiceContext(uri, ODataProtocolVersion.V4);

test/E2ETest/Microsoft.Test.E2E.AspNet.OData/QueryComposition/QueryFuzzingTests.cs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,8 @@ public static TheoryDataSet<string> FuzzingQueries
3232
{
3333
var data = new TheoryDataSet<string>();
3434
int seed = RandomSeedGenerator.GetRandomSeed();
35+
Trace.WriteLine($"Generated seed for random number generator: {seed}");
36+
3537
var ranGen = new Random(seed);
3638

3739
for (int i = 5; i <= 10; i += 5)

test/E2ETest/Microsoft.Test.E2E.AspNet.OData/QueryComposition/ServerTypeTests.cs

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,11 @@ public static ODataModelTypeCreator Creator
5454
if (creator == null)
5555
{
5656
creator = new ODataModelTypeCreator();
57-
creator.CreateTypes(100, new Random(RandomSeedGenerator.GetRandomSeed()));
57+
var seed = RandomSeedGenerator.GetRandomSeed();
58+
Trace.WriteLine($"Generated seed for random number generator: {seed}");
59+
60+
var random = new Random(seed);
61+
creator.CreateTypes(100, random);
5862
}
5963
return creator;
6064
}
@@ -221,6 +225,8 @@ private static string BuildFilterString(Type type)
221225
public void RunQueryableOnAllPossibleTypes(Type type, string queryString)
222226
{
223227
int seed = RandomSeedGenerator.GetRandomSeed();
228+
Trace.WriteLine($"Generated seed for random number generator: {seed}");
229+
224230
Random r = new Random(seed);
225231
Type generic = typeof(IEnumerable<>);
226232
var collectionType = generic.MakeGenericType(type);

0 commit comments

Comments
 (0)