Skip to content

Commit 4686fda

Browse files
Merge pull request #112 from telerik/stoilov/fix-dot-net-core-30-failing-tests
Fix failing tests on .NET Core 3.0
2 parents 9351c13 + cf4d0de commit 4686fda

File tree

2 files changed

+7
-10
lines changed

2 files changed

+7
-10
lines changed

Telerik.JustMock.Tests/DynamicFixture.cs

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -245,7 +245,6 @@ public void ShouldArrangeNonPublicIndexerSetterViaDynaMock()
245245
Mock.Assert(mock);
246246
}
247247

248-
#if !NETCORE30
249248
[TestMethod, TestCategory("Lite"), TestCategory("NonPublic"), TestCategory("DynaMock")]
250249
public void ShouldArrangeNonPublicMemberRecursivelyViaDynaMock()
251250
{
@@ -274,7 +273,6 @@ public void ShouldAssertNonPublicMethodViaDynaMock()
274273
Mock.NonPublic.Assert(wrapper.Value = 123, Occurs.Once());
275274
Mock.NonPublic.Assert(wrapper.Value = ArgExpr.IsAny<int>(), Occurs.Once());
276275
}
277-
#endif
278276

279277
#if !COREFX
280278
[TestMethod, TestCategory("Lite"), TestCategory("NonPublic"), TestCategory("DynaMock")]

Telerik.JustMock/Expectations/DynaMock/ExpressionRecorder.cs

Lines changed: 7 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -34,10 +34,9 @@ public ExpressionRecorder(Expression expression, BindingRestrictions restriction
3434
: base(expression, restrictions, value)
3535
{ }
3636

37-
private static DynamicMetaObject CreateRecorder(Expression expression, Type returnType)
37+
private static DynamicMetaObject CreateRecorder(Expression expression, Type returnType, BindingRestrictions restrictions)
3838
{
39-
return new ExpressionRecorder(Expression.Constant(new ExpressionContainer(expression), returnType),
40-
BindingRestrictions.GetExpressionRestriction(Expression.Constant(true)));
39+
return new ExpressionRecorder(Expression.Constant(new ExpressionContainer(expression), returnType), restrictions);
4140
}
4241

4342
private static Expression FromArg(DynamicMetaObject arg)
@@ -85,7 +84,7 @@ private DynamicMetaObject DoBindGetMember(Type returnType, string memberName, bo
8584

8685
var memberExpr = Expression.Property(!wrapper.IsStatic ? valueExpr : null, property);
8786

88-
return CreateRecorder(memberExpr, returnType);
87+
return CreateRecorder(memberExpr, returnType, BindingRestrictions.GetInstanceRestriction(this.Expression, this.Value));
8988
}
9089

9190
public override DynamicMetaObject BindSetMember(SetMemberBinder binder, DynamicMetaObject value)
@@ -102,7 +101,7 @@ private DynamicMetaObject DoBindSetMember(ExpressionContainer wrapper, Type retu
102101

103102
var memberExpr = Expression.Assign(Expression.Property(!wrapper.IsStatic ? valueExpr : null, property), FromArg(value));
104103

105-
return CreateRecorder(memberExpr, returnType);
104+
return CreateRecorder(memberExpr, returnType, BindingRestrictions.GetInstanceRestriction(this.Expression, this.Value));
106105
}
107106

108107
public override DynamicMetaObject BindGetIndex(GetIndexBinder binder, DynamicMetaObject[] indexes)
@@ -115,7 +114,7 @@ public override DynamicMetaObject BindGetIndex(GetIndexBinder binder, DynamicMet
115114
ThrowMissingMemberException(valueExpr.Type, "Item");
116115

117116
var memberExpr = Expression.MakeIndex(!wrapper.IsStatic ? valueExpr : null, property, indexes.Select(FromArg));
118-
return CreateRecorder(memberExpr, binder.ReturnType);
117+
return CreateRecorder(memberExpr, binder.ReturnType, BindingRestrictions.GetInstanceRestriction(this.Expression, this.Value));
119118
}
120119

121120
public override DynamicMetaObject BindSetIndex(SetIndexBinder binder, DynamicMetaObject[] indexes, DynamicMetaObject value)
@@ -130,7 +129,7 @@ public override DynamicMetaObject BindSetIndex(SetIndexBinder binder, DynamicMet
130129
var memberExpr = Expression.Assign(
131130
Expression.MakeIndex(!wrapper.IsStatic ? valueExpr : null, property, indexes.Select(FromArg)),
132131
FromArg(value));
133-
return CreateRecorder(memberExpr, binder.ReturnType);
132+
return CreateRecorder(memberExpr, binder.ReturnType, BindingRestrictions.GetInstanceRestriction(this.Expression, this.Value));
134133
}
135134

136135
public override DynamicMetaObject BindInvokeMember(InvokeMemberBinder binder, DynamicMetaObject[] args)
@@ -188,7 +187,7 @@ public override DynamicMetaObject BindInvokeMember(InvokeMemberBinder binder, Dy
188187

189188
var memberExpr = Expression.Call(!wrapper.IsStatic ? valueExpr : null, method, args.Select(FromArg).ToArray());
190189

191-
return CreateRecorder(memberExpr, binder.ReturnType);
190+
return CreateRecorder(memberExpr, binder.ReturnType, BindingRestrictions.GetInstanceRestriction(this.Expression, this.Value));
192191
}
193192

194193
public override DynamicMetaObject BindBinaryOperation(BinaryOperationBinder binder, DynamicMetaObject arg)

0 commit comments

Comments
 (0)