visible true

技術的なメモを書く

Robolectric

Robolectricで複数のLocaleをテストしたい時はEnclosedで頑張るしかないのか

RobolectricでLocaleを指定するには@Config(qualifiers)を使う テストで特定のLocaleで実行したいときってありますよね。Robolectric*1だと@Config(qualifiers)*2を使うことでテストのLocaleを指定できます。 @RunWith(RobolectricTestRunner::class) @Confi…

robolectric3でShadowクラスを作るメモ

robolectric3のドキュメント通りにShadowクラスを書いてもうまく動かず、結局robolectric自身のソースを読んで理解してめんどくさかったのでメモしておきます。 Shadowクラスを定義する Shadowクラスは以下の手順で宣言します。 クラス宣言に@Implementsアノ…

Retrolambda+Robolectricでテストを動かす為にtask.name ==~ /compileTest.*Java/をフックしているのにcom.sun.tools.javac.code.Symbol$CompletionFailure: java.lang.invoke.MethodTypeが見つからずエラーになる問題

タイトル長いな。 問題 Retrolambda+Robolectricでテストを動かす為に以下の様なコードをbuild.gradleに書く必要があります。正規表現で一致するタスクの時にビルドパスをretrolambdaに向けたり、コンパイラをJava8に変更するコードです。 参考 : Android - …