2017-11-07 5 views
1

Dagger 2.0.2からDagger 2.12に移行し、dagger.android APIを使用する予定です。Dagger 2.12に移行し、テストモジュールを上書きする

私の質問は、テストコードの移行についてです。現在、私はAppModuleTestAppModuleを持っており、それを拡張し、@Override注釈を使っていくつかの依存関係を無効にしています。ここでは一例です:ダガー2.12と今

@Module 
public class TestAppModule extends AppModule { 

    @Override 
    public UserDao provideUserDao() { 
     return mock(UserDao.class); 
    } 
} 

私は TestAppModuleに依存関係をオーバーライドしようとすると、エラーがスローされます。error: @Provides methods may not be overridden in modules.

は何オーバーライドの推奨される方法ですとの一部をからかっTestModuleに置き換え、残りの依存関係をAppModuleでそのまま使用していますか?

人々が必要と思ったら、私のダガー設定の削除バージョンを投稿できます。

答えて

1

私は単にTestAppModule@Moduleと注釈を付けないことで解決しました。これは部分的な嘲笑を達成する。

public class TestAppModule extends AppModule { 

    @Override 
    public UserDao provideUserDao() { 
     return mock(UserDao.class); 
    } 
} 
+0

ありがとうございます –

関連する問題