зеркало из https://github.com/mozilla/gecko-dev.git
Bug 949208 - Don't use reflection to get database name in robocop tests. r=wesj
This commit is contained in:
Родитель
510a841271
Коммит
18780423ab
|
@ -21,7 +21,6 @@ import org.mozilla.gecko.db.BrowserContract.Thumbnails;
|
|||
import org.mozilla.gecko.db.BrowserContract.URLColumns;
|
||||
import org.mozilla.gecko.db.PerProfileDatabases.DatabaseHelperFactory;
|
||||
import org.mozilla.gecko.gfx.BitmapUtils;
|
||||
import org.mozilla.gecko.mozglue.RobocopTarget;
|
||||
import org.mozilla.gecko.sync.Utils;
|
||||
import org.mozilla.gecko.util.GeckoJarReader;
|
||||
import org.mozilla.gecko.util.ThreadUtils;
|
||||
|
@ -1954,11 +1953,6 @@ public class BrowserProvider extends ContentProvider {
|
|||
}
|
||||
}
|
||||
|
||||
@RobocopTarget
|
||||
public String getDatabasePath(String profile, boolean isTest) {
|
||||
return mDatabases.getDatabasePathForProfile(profile, isTest);
|
||||
}
|
||||
|
||||
private SQLiteDatabase getReadableDatabase(Uri uri) {
|
||||
trace("Getting readable database for URI: " + uri);
|
||||
|
||||
|
|
|
@ -35,14 +35,6 @@ public class PerProfileDatabases<T extends SQLiteOpenHelper> {
|
|||
}
|
||||
|
||||
public String getDatabasePathForProfile(String profile) {
|
||||
return getDatabasePathForProfile(profile, false);
|
||||
}
|
||||
|
||||
public String getDatabasePathForProfile(String profile, boolean isTest) {
|
||||
if (isTest) {
|
||||
return mDatabaseName;
|
||||
}
|
||||
|
||||
final File profileDir = GeckoProfile.get(mContext, profile).getDir();
|
||||
if (profileDir == null) {
|
||||
return null;
|
||||
|
@ -66,7 +58,7 @@ public class PerProfileDatabases<T extends SQLiteOpenHelper> {
|
|||
return mStorages.get(profile);
|
||||
}
|
||||
|
||||
final String databasePath = getDatabasePathForProfile(profile, isTest);
|
||||
final String databasePath = isTest ? mDatabaseName : getDatabasePathForProfile(profile);
|
||||
if (databasePath == null) {
|
||||
throw new IllegalStateException("Database path is null for profile: " + profile);
|
||||
}
|
||||
|
|
|
@ -13,7 +13,6 @@ import org.mozilla.gecko.GeckoProfile;
|
|||
import org.mozilla.gecko.db.BrowserContract.Clients;
|
||||
import org.mozilla.gecko.db.BrowserContract.Tabs;
|
||||
import org.mozilla.gecko.db.PerProfileDatabases.DatabaseHelperFactory;
|
||||
import org.mozilla.gecko.mozglue.RobocopTarget;
|
||||
|
||||
import android.content.ContentProvider;
|
||||
import android.content.ContentUris;
|
||||
|
@ -208,11 +207,6 @@ public class TabsProvider extends ContentProvider {
|
|||
}
|
||||
}
|
||||
|
||||
@RobocopTarget
|
||||
private String getDatabasePath(String profile) {
|
||||
return mDatabases.getDatabasePathForProfile(profile);
|
||||
}
|
||||
|
||||
private SQLiteDatabase getReadableDatabase(Uri uri) {
|
||||
trace("Getting readable database for URI: " + uri);
|
||||
|
||||
|
|
|
@ -47,6 +47,7 @@ abstract class ContentProviderTest extends BaseTest {
|
|||
protected ChangeRecordingMockContentResolver mResolver;
|
||||
protected ClassLoader mClassLoader;
|
||||
protected ArrayList<Runnable> mTests;
|
||||
protected String mDatabaseName;
|
||||
protected Class mProviderClass;
|
||||
protected Class mProviderContract;
|
||||
protected String mProviderAuthority;
|
||||
|
@ -228,15 +229,16 @@ abstract class ContentProviderTest extends BaseTest {
|
|||
|
||||
@Override
|
||||
public void setUp() throws Exception {
|
||||
throw new Exception("You should call setUp(providerClassName, authorityUriField) instead");
|
||||
throw new Exception("You should call setUp(providerClassName, authorityUriField, databaseName) instead");
|
||||
}
|
||||
|
||||
// TODO: Take the actual class as an arg.
|
||||
public void setUp(String providerClassName, String authorityUriField) throws Exception {
|
||||
public void setUp(String providerClassName, String authorityUriField, String databaseName) throws Exception {
|
||||
super.setUp();
|
||||
|
||||
mClassLoader = getInstrumentation().getContext().getClassLoader();
|
||||
mTests = new ArrayList<Runnable>();
|
||||
mDatabaseName = databaseName;
|
||||
|
||||
setUpProviderClassAndAuthority(providerClassName, authorityUriField);
|
||||
setUpContentProvider();
|
||||
|
@ -248,16 +250,9 @@ abstract class ContentProviderTest extends BaseTest {
|
|||
mProvider.shutdown();
|
||||
}
|
||||
|
||||
String databaseName = null;
|
||||
Method getDatabasePath =
|
||||
mProviderClass.getDeclaredMethod("getDatabasePath", String.class, boolean.class);
|
||||
|
||||
String defaultProfile = "default";
|
||||
ContentProvider targetProvider = (ContentProvider) mProviderClass.newInstance();
|
||||
databaseName = (String) getDatabasePath.invoke(targetProvider, defaultProfile, true /* is test */);
|
||||
|
||||
if (databaseName != null)
|
||||
mProviderContext.deleteDatabase(databaseName);
|
||||
if (mDatabaseName != null) {
|
||||
mProviderContext.deleteDatabase(mDatabaseName);
|
||||
}
|
||||
|
||||
super.tearDown();
|
||||
}
|
||||
|
|
|
@ -323,7 +323,7 @@ public class testBrowserProvider extends ContentProviderTest {
|
|||
|
||||
@Override
|
||||
public void setUp() throws Exception {
|
||||
super.setUp("org.mozilla.gecko.db.BrowserProvider", "AUTHORITY");
|
||||
super.setUp("org.mozilla.gecko.db.BrowserProvider", "AUTHORITY", "browser.db");
|
||||
loadContractInfo();
|
||||
|
||||
mTests.add(new TestSpecialFolders());
|
||||
|
|
|
@ -233,7 +233,7 @@ public class testBrowserProviderPerf extends ContentProviderTest {
|
|||
|
||||
@Override
|
||||
public void setUp() throws Exception {
|
||||
super.setUp("org.mozilla.gecko.db.BrowserProvider", "AUTHORITY");
|
||||
super.setUp("org.mozilla.gecko.db.BrowserProvider", "AUTHORITY", "browser.db");
|
||||
|
||||
mGenerator = new Random(19580427);
|
||||
|
||||
|
|
|
@ -303,7 +303,7 @@ public class testDistribution extends ContentProviderTest {
|
|||
@Override
|
||||
public void setUp() throws Exception {
|
||||
// TODO: Set up the content provider after setting the distribution.
|
||||
super.setUp("org.mozilla.gecko.db.BrowserProvider", "AUTHORITY");
|
||||
super.setUp("org.mozilla.gecko.db.BrowserProvider", "AUTHORITY", "browser.db");
|
||||
}
|
||||
|
||||
private void delete(File file) throws Exception {
|
||||
|
|
Загрузка…
Ссылка в новой задаче