NSubstitute IEnumerable Returns
NSubstitute IEnumerable Returns
我有一个 class 有一个 IEnumerable<object>
属性:
interface ICore {
IEnumerable<object> enumerable { get; }
}
我需要替换此 IEnumerable<object>
的 return 值。我已经尝试使用 Returns
,但是,我收到一条消息,告诉我它在 IEnumerable
上不可用。
有什么想法吗?
NSubstitute 与 IEnumerable
界面完美配合。这是一个例子:
using System.Collections.Generic;
using System.Linq;
using NUnit.Framework;
namespace NSubstitute.Acceptance.Specs.FieldReports
{
[TestFixture]
public class SO_42159342
{
public interface ICore
{
IEnumerable<object> Enumerable { get; }
}
[Test]
public void Test()
{
var sub = Substitute.For<ICore>();
sub.Enumerable.Returns(Enumerable.Empty<object>());
sub.Enumerable.Returns(new List<object>());
sub.Enumerable.Returns(_ => new[] {new object()});
Assert.True(sub.Enumerable.Count() == 1);
}
}
}
我有一个 class 有一个 IEnumerable<object>
属性:
interface ICore {
IEnumerable<object> enumerable { get; }
}
我需要替换此 IEnumerable<object>
的 return 值。我已经尝试使用 Returns
,但是,我收到一条消息,告诉我它在 IEnumerable
上不可用。
有什么想法吗?
NSubstitute 与 IEnumerable
界面完美配合。这是一个例子:
using System.Collections.Generic;
using System.Linq;
using NUnit.Framework;
namespace NSubstitute.Acceptance.Specs.FieldReports
{
[TestFixture]
public class SO_42159342
{
public interface ICore
{
IEnumerable<object> Enumerable { get; }
}
[Test]
public void Test()
{
var sub = Substitute.For<ICore>();
sub.Enumerable.Returns(Enumerable.Empty<object>());
sub.Enumerable.Returns(new List<object>());
sub.Enumerable.Returns(_ => new[] {new object()});
Assert.True(sub.Enumerable.Count() == 1);
}
}
}