が呼び出されたときに PowerMockito がFoo
s の空の配列リストを返すようにしたいのですnew ArrayList<Foo>()
が、ステートメントを作成する方法がわかりません。new ArrayList<AnyOtherType>()
具体的には、通常どおり新しいリストを作成したいと考えています。
ArrayList<Foo> fooList = new ArrayList<Foo>();
PowerMockito.whenNew(ArrayList.class).withParameterTypes(Foo.class).thenReturn(fooList);
^ これは基本的に私が持っているものですが.withParameterTypes(Foo.class)
、.thenReturn()
. 私の唯一のオプションはwithArguments(firstArgument, additionalArguments)
です。
これは PowerMock で可能ですか? もしそうなら、どうすればそれを構築できますか?
編集:
OK、根本的な問題は、テストしようとしているメソッドの結果を取得する必要があることですが、リクエストをモックする必要があり、テストしようとしているメソッドの最後にリストがリクエストに配置されています.
inspectionAction.viewInspectionDetailsAjax(mapping, form, request, response);
このメソッドは、モックされたリクエストからいくつかのパラメータを取得します ( Mockito.mock(HttpServletRequest.class);
)。通常、私たちのアプリでは、セッション レベルの変数にデータを配置します。ただし、このメソッドは一度に複数回呼び出され、結果がページに ajax されるため、代わりに各データがリクエストに格納されます。
request.setAttribute("inspectionAjaxDetails", details);
したがって、がモックdetails
されたときに、型付きの ArrayList であるを取得する方法が必要です。request