Skip to content

Commit bb625a9

Browse files
committed
Added TranslateMember tests
1 parent e70386a commit bb625a9

File tree

1 file changed

+35
-0
lines changed

1 file changed

+35
-0
lines changed

tests/MongoFramework.Tests/Infrastructure/Querying/ExpressionTranslationTests.cs

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -281,5 +281,40 @@ public void TranslateInstantiation_InvalidExpression()
281281
var expression = GetTransform(e => e.SingleNumber);
282282
ExpressionTranslation.TranslateInstantiation(expression);
283283
}
284+
285+
[TestMethod]
286+
public void TranslateMember_SingleLevelMember()
287+
{
288+
var expression = GetTransform(e => e.SingleString);
289+
var result = ExpressionTranslation.TranslateMember(expression);
290+
var expected = new BsonString("SingleString");
291+
Assert.AreEqual(expected, result);
292+
}
293+
294+
[TestMethod]
295+
public void TranslateMember_MultiLevelMember()
296+
{
297+
var expression = GetTransform(e => e.SingleModel.SingleNumber);
298+
var result = ExpressionTranslation.TranslateMember(expression);
299+
var expected = new BsonString("SingleModel.SingleNumber");
300+
Assert.AreEqual(expected, result);
301+
}
302+
303+
[TestMethod]
304+
public void TranslateMember_MemberWithArrayIndex_AtStart()
305+
{
306+
var expression = GetTransform(e => e.ArrayOfModels[3].SingleNumber);
307+
var result = ExpressionTranslation.TranslateMember(expression);
308+
var expected = new BsonString("ArrayOfModels.3.SingleNumber");
309+
Assert.AreEqual(expected, result);
310+
}
311+
[TestMethod]
312+
public void TranslateMember_MemberWithArrayIndex_AtEnd()
313+
{
314+
var expression = GetTransform(e => e.SingleModel.ArrayOfModels[2]);
315+
var result = ExpressionTranslation.TranslateMember(expression);
316+
var expected = new BsonString("SingleModel.ArrayOfModels.2");
317+
Assert.AreEqual(expected, result);
318+
}
284319
}
285320
}

0 commit comments

Comments
 (0)