Moq和DataContext

时间:2009-11-18 12:01:38

标签: linq-to-sql moq

我是Moq的新手,需要知道我是否正确行事。

在AccountController.cs中我有这个:

      int id = _userRepository.GetProfileFromUserName(userName).ProfileID;

UserRepository是模拟的,但是ProfileID来自DataContext,所以我在我的中做了这个 AccountControllerTests.cs:

      mockUserReposository.Setup(gp => gp.GetProfileFromUserName(userName)).Returns(new Profile { ProfileID = 1 });

这样我将id变量等于1,并确保在AccountController.cs中调用时,ProfileID不使用DataContext中的那个

这是正确的方法吗?或者我是否需要模拟我从Linq到SQL的整个Profile表?

1 个答案:

答案 0 :(得分:1)

取决于您正在测试的内容。如果您希望伪造GetProfileFromUserName以便粘贴在所需的配置文件中,它看起来很好。

您可以编辑更多的测试内容,以便人们可以提供更完整的见解 - 根据您所说的内容,唯一的答案是它取决于:D