小编use*_*693的帖子

Moq中的设置方法,模糊调用

我正在尝试使用Moq来模拟界面:

public interface IMatchSetupRepository
{
    IEnumerable<MatchSetup> GetAll();
}
Run Code Online (Sandbox Code Playgroud)

我在做:

var matchSetupRepository = new Mock<IMatchSetupRepository>();
matchSetupRepository
    .Setup(ms => ms.GetAll())
    .Returns(null);
Run Code Online (Sandbox Code Playgroud)

但由于错误,它甚至无法编译:

错误CS0121:以下方法或属性之间的调用不明确:'Moq.Language.IReturns <Data.Contract.IMatchSetupRepository,System.Collections.Generic.IEnumerable <Data.Model.MatchSetup >>.返回(System.Collections.Generic .IEnumerable <Data.Model.MatchSetup>)'和'Moq.Language.IReturns <Data.Contract.IMatchSetupRepository,System.Collections.Generic.IEnumerable <Data.Model.MatchSetup >>.返回(System.Func <System.Collections .Generic.IEnumerable <Data.Model.MatchSetup >>)"

我正在使用:

Moq.dll,v4.0.20926

c# tdd moq

23
推荐指数
1
解决办法
5957
查看次数

为什么这个特定的测试可能有用?

我最近加入了一家他们使用TDD的公司,但我仍然不清楚,例如,我们有一个测试:

[TestMethod]
public void ShouldReturnGameIsRunning()
{
    var game = new Mock<IGame>();
    game.Setup(g => g.IsRunning).Returns(true);
    Assert.IsTrue(game.Object.IsRunning);
}
Run Code Online (Sandbox Code Playgroud)

它的目的是什么?据我了解,这不测试任何东西!我之所以这么说是因为它嘲笑一个界面,并说,对于IsRunning,它返回true,它永远不会返回一个不同的值......

我可能错了,因为每个人都说这是一个很好的做法等等......或者这个测试是错的?

c# tdd

6
推荐指数
2
解决办法
142
查看次数

如何唯一标识没有主键的表中的行

我从没有主键集的旧数据库/表导入超过600.000.000行,此表位于sql server 2005数据库中.我创建了一个工具,将这些数据导入到一个结构非常不同的新数据库中.问题是我想从任何原因恢复它停止的过程,如错误或网络错误.由于此表没有主键,我无法检查该行是否已导入.有谁知道如何识别每一行,以便我可以检查它是否已经导入?这个表有重复的行,我已经尝试计算所有列的哈希值,但是由于重复的行而无法正常工作...

谢谢!

sql-server

5
推荐指数
1
解决办法
6400
查看次数

标签 统计

c# ×2

tdd ×2

moq ×1

sql-server ×1