首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Moq SetupProperty不工作

Moq SetupProperty不工作
EN

Stack Overflow用户
提问于 2009-07-30 03:17:28
回答 1查看 4.2K关注 0票数 0

谁能告诉我,在下面的代码中,当moq.SetupProperty失败时,下面的代码为什么会失败:

代码语言:javascript
复制
[TestMethod]
public void SimulatorService_Returns_HighScores()
{
    IScoreService scoreService = new ScoreService(MockScoreRepository.GetMockScoreRepository());
    Assert.IsNotNull(scoreService);
    var highScores = scoreService.GetHighScores();
    Assert.IsTrue(highScores.Count > 0);
}


public static class MockScoreRepository
{

    public static ScoreEntry GetMockScoreEntry(int seed)
    {
        var moq = new Mock<ScoreEntry>();

        moq.SetupProperty(s => s.UserID, seed);
        moq.SetupProperty(s => s.Score, 10 * seed);
        moq.SetupProperty(s => s.EntryDate, DateTime.Now);

        return moq.Object;
    }

    public static IScoreRepository GetMockScoreRepository()
    {
        var scores = new List<ScoreEntry>();
        for (var i = 0; i < 20; i++)
        {
            scores.Add(GetMockScoreEntry(i));
        }

        var repository = new Mock<IScoreRepository>();
        repository.Setup(r => r.GetScores()).Returns(scores.AsQueryable());

        return repository.Object;
    }
}
EN

回答 1

Stack Overflow用户

发布于 2009-07-30 03:34:16

我要检查的第一件事是确保您正在设置的ScoreEntry的属性具有可访问的setter。换句话说,请确保您的setter具有公共访问权限,或者至少为您尝试通过moq设置的每个属性都有一个setter。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1204284

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档