Skip to content

Commit 9f52b9c

Browse files
authoredMar 1, 2025
CSHARP-5512: Convert LINQ-related tests to use fixtures. (#1627)
1 parent a5f4b50 commit 9f52b9c

File tree

89 files changed

+2087
-1667
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

89 files changed

+2087
-1667
lines changed
 

Diff for: ‎CSharpDriver.sln.DotSettings

+6-1
Original file line numberDiff line numberDiff line change
@@ -91,6 +91,10 @@ namespace $NAMESPACE$
9191
<s:String x:Key="/Default/PatternsAndTemplates/LiveTemplates/Template/=58D5EB70DF984241A0863E67D7E33F3D/Field/=CLASS/Expression/@EntryValue">getAlphaNumericFileNameWithoutExtension()</s:String>
9292
<s:Int64 x:Key="/Default/PatternsAndTemplates/LiveTemplates/Template/=58D5EB70DF984241A0863E67D7E33F3D/Field/=CLASS/InitialRange/@EntryValue">-1</s:Int64>
9393
<s:Int64 x:Key="/Default/PatternsAndTemplates/LiveTemplates/Template/=58D5EB70DF984241A0863E67D7E33F3D/Field/=CLASS/Order/@EntryValue">0</s:Int64>
94+
<s:Boolean x:Key="/Default/PatternsAndTemplates/LiveTemplates/Template/=58D5EB70DF984241A0863E67D7E33F3D/Field/=CLASS2/@KeyIndexDefined">True</s:Boolean>
95+
<s:String x:Key="/Default/PatternsAndTemplates/LiveTemplates/Template/=58D5EB70DF984241A0863E67D7E33F3D/Field/=CLASS2/Expression/@EntryValue">typeName()</s:String>
96+
<s:Int64 x:Key="/Default/PatternsAndTemplates/LiveTemplates/Template/=58D5EB70DF984241A0863E67D7E33F3D/Field/=CLASS2/InitialRange/@EntryValue">-1</s:Int64>
97+
<s:Int64 x:Key="/Default/PatternsAndTemplates/LiveTemplates/Template/=58D5EB70DF984241A0863E67D7E33F3D/Field/=CLASS2/Order/@EntryValue">2</s:Int64>
9498
<s:Boolean x:Key="/Default/PatternsAndTemplates/LiveTemplates/Template/=58D5EB70DF984241A0863E67D7E33F3D/Field/=NAMESPACE/@KeyIndexDefined">True</s:Boolean>
9599
<s:String x:Key="/Default/PatternsAndTemplates/LiveTemplates/Template/=58D5EB70DF984241A0863E67D7E33F3D/Field/=NAMESPACE/Expression/@EntryValue">fileDefaultNamespace()</s:String>
96100
<s:Int64 x:Key="/Default/PatternsAndTemplates/LiveTemplates/Template/=58D5EB70DF984241A0863E67D7E33F3D/Field/=NAMESPACE/InitialRange/@EntryValue">-1</s:Int64>
@@ -117,11 +121,12 @@ namespace $NAMESPACE$
117121

118122
using System.Collections.Generic;
119123
using MongoDB.Driver.TestHelpers;
124+
using FluentAssertions;
120125
using Xunit;
121126

122127
namespace $NAMESPACE$
123128
{
124-
public class $CLASS$ : LinqIntegrationTest&lt;$CLASS$.ClassFixture&gt;
129+
public class $CLASS$ : LinqIntegrationTest&lt;$CLASS2$.ClassFixture&gt;
125130
{
126131
public $CLASS$(ClassFixture fixture)
127132
: base(fixture)

Diff for: ‎tests/MongoDB.Driver.TestHelpers/MongoCollectionFixture.cs

+8-3
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,11 @@
1919

2020
namespace MongoDB.Driver.TestHelpers
2121
{
22-
public abstract class MongoCollectionFixture<TDocument> : MongoDatabaseFixture
22+
public abstract class MongoCollectionFixture<TDocument> : MongoCollectionFixture<TDocument, TDocument>
23+
{
24+
}
25+
26+
public abstract class MongoCollectionFixture<TDocument, TInitial> : MongoDatabaseFixture
2327
{
2428
private readonly Lazy<IMongoCollection<TDocument>> _collection;
2529
private bool _dataInitialized;
@@ -31,7 +35,7 @@ protected MongoCollectionFixture()
3135

3236
public IMongoCollection<TDocument> Collection => _collection.Value;
3337

34-
protected abstract IEnumerable<TDocument> InitialData { get; }
38+
protected abstract IEnumerable<TInitial> InitialData { get; }
3539

3640
public virtual bool InitializeDataBeforeEachTestCase => false;
3741

@@ -47,7 +51,8 @@ protected override void InitializeTestCase()
4751
}
4852
else
4953
{
50-
Collection.InsertMany(InitialData);
54+
var collection = Database.GetCollection<TInitial>(Collection.CollectionNamespace.CollectionName);
55+
collection.InsertMany(InitialData);
5156
}
5257

5358
_dataInitialized = true;

0 commit comments

Comments
 (0)