Jasmine
.spyOn()
特定のパラメータが特定の値である場合にのみ基づいて、を使用してメソッドをモックすることは可能ですか? 基本的に、それが渡された場合はテストユーザーを送信し、それ以外の場合は null を送信するGetUser
ようにモックしたいメソッドがあるとします。username = 'test'
いくつかのテスト偽コードは次のようになります。
spyOn(userService, "getUser('test')").and.returnValue(testUser);
これは、次のように C# / Moq と同等です。
mockUserService.Setup(x => x.getUser("test")).Returns(testuser);
を使用したカスタム コーディングでこれを実行できることはわかっていますがand.callFake
、かなり面倒です。実際に動作するテスト コードは次のようになります。
spyOn(userService, "getUser").and.callFake(function (username)
{
if (username == "test")
return testuser;
return null
});