Spy クラス
Jasmine.Spy は スタブ、スパイ、フェイク、またはモックとして動作するテストの代役です。
Spy は expect より前のスペック処理中に生成してください。 これにより、Jasmine標準 expectation 構文中での利用状況を調べることができます。 Spy は該当する関数が呼ばれたかどうか、また、どのようなパラメータで呼ばれたかを調べます。
Spy はすべてのスペックが終了時に破棄されます。
注意: new jasmine.Spy() を直接呼び出さないでください。 Spy は spyOn、jasmine.createSpy または jasmine.createSpyObj を用いて生成してください。
<public> |
Spyクラスのインスタンスを初期化します
|
---|
<private> |
identity : string
指定されていた場合、Spyに名前を設定。指定がない場合は 'unknown'。
|
---|---|
<private> |
isSpy : boolean
このオブジェクトが Spy であるかどうか。
|
<private> |
baseObj : object
このオブジェクトがラップする元オブジェクト。
|
<private> |
methodName : string
このオブジェクトがラップする関数名。
|
<private> |
originalValue : function
このオブジェクトがラップする関数。baseObj[methodName]と同じ。
|
<private> |
plan : function
このオブジェクトが呼ばれたとき実行される関数。
|
<private> |
mostRecentCall : object
このオブジェクトを最も呼び出したオブジェクトのトラッキング
|
<private> |
argsForCall : array
このオブジェクトを呼び出したときの引数を呼び出した回数順に保持する。
|
<private> |
calls : array
|
<public> |
Spy が呼ばれたとき実実装を呼び出すよう設定します。
|
---|---|
<public> |
Spy が呼ばれたときの戻り値を設定します。
|
<public> |
Spy が呼ばれたとき発生させる例外を設定します。
|
<public> |
Spy が呼ばれたとき代わりに実行される関数を設定します。
|
<public> |
Spy を再利用するため、トラッキング変数を初期化します。
|
Spy コンストラクタ
Spy クラスの新しいインスタンスを初期化します。
function Spy ( {string} [name] )
- {string}[name]
- 一意に特定する名前。デフォルトは"unknown"。
andCallThrough() メソッド
Spy が呼ばれたとき、実実装を呼び出すよう設定します。
public {jasmine.Spy} andCallThrough ( )
- なし。
- {jasmine.Spy}
- jasmine.Spy オブジェクト。
1 2 3 4 5 6 7 8 | var foo = { bar: function () { // 何か処理。 } }; // 既に存在するプロパティ foo.bar に対して Spy を設定します。 spyOn(foo, 'bar' ).andCallThrough(); |
andReturn(value) メソッド
Spy が呼ばれたとき、指定された値が必ず返されるよう設定されます。
public {jasmine.Spy} andReturn ( {object} value )
- {object}value
- Spy が実行されたときの戻り値。
- {jasmine.Spy}
- jasmine.Spy オブジェクト。
1 2 3 4 5 6 7 8 | var foo = { bar: function () { // 何か処理。 } }; // 既に存在するプロパティ foo.bar に対して Spy を設定します。 spyOn(foo, 'bar' ).andReturn( 'baz' ); |
andThrow(exceptionMsg) メソッド
Spy が呼ばれたとき、必ず指定されたメッセージの例外が発生するよう設定します。
public {jasmine.Spy} andThrow ( {string} exceptionMsg )
- {string}exceptionMsg
- 発生させる例外のメッセージ。
- {jasmine.Spy}
- jasmine.Spy オブジェクト。
1 2 3 4 5 6 7 8 | var foo = { bar: function () { // 何か処理。 } }; // 既に存在するプロパティ foo.bar に対して Spy を設定します。 spyOn(foo, 'bar' ).andThrow( 'baz' ); |
andCallFake(fakeFunc) メソッド
Spy が呼ばれたとき、必ず指定された代替関数が実行されるよう設定します。
public {jasmine.Spy} andCallFake ( {function} exceptionMsg )
- {string}exceptionMsg
- 代わりに実行される関数。
- {jasmine.Spy}
- jasmine.Spy オブジェクト。
reset() メソッド
Spy を再利用するため、トラッキング変数を初期化します。
public {void} reset ( )
- なし。
- なし。
最後に… このブログに興味を持っていただけた方は、 ぜひ 「Facebookページ に いいね!」または 「Twitter の フォロー」 お願いします!!