package com.philosophicalhacker.philhackernews;
import android.content.Context;
import android.database.sqlite.SQLiteDatabase;
import com.google.gson.Gson;
import com.philosophicalhacker.philhackernews.data.cache.HackerNewsDatabaseOpenHelper;
import com.philosophicalhacker.philhackernews.data.remote.HackerNewsRestAdapter;
import java.io.File;
import dagger.Module;
import dagger.Provides;
/**
* Overrides the HackerNewsRestAdapter with an adapter that loads a JSON string from memory.
*
* Created by MattDupree on 7/16/15.
*/
@Module(overrides = true,
library = true,
complete = false,
injects = {MainActivityTests.class,
CachingTests.class}
)
public class TestsModule {
@Provides
HackerNewsRestAdapter provideHackerNewsRestAdapter() {
final Gson gson = new Gson();
return new MockHackerNewsRestAdapter(gson);
}
@Provides
HackerNewsDatabaseOpenHelper provideHackerNewsDatabaseOpenHelper(Context context) {
return new HackerNewsDatabaseOpenHelper(context, "test_hackernewsdata.db", null, 1);
}
@Provides
File provideHackerNewsDatabaseFile(SQLiteDatabase sqLiteDatabase) {
return new File(sqLiteDatabase.getPath());
}
}