1

I do not understand what exactly should I do in order to get a clean and a different db from the one that the app uses. This is my test class:

public class SQLTest extends ProviderTestCase2{

    private static String testDbPrefix = "unitTest_";

    public SQLTest (){
        super(MyContentProvider.class, MyContract.CONTENT_AUTHORITY);
    }

    @Override
    @Before
    public void setUp() throws Exception {
        //setContext(InstrumentationRegistry.getTargetContext());
        RenamingDelegatingContext context = new RenamingDelegatingContext(InstrumentationRegistry.getTargetContext(), testDbPrefix);
        setContext(context);
        super.setUp();
    }


    @Test
    public void test1(){
      //test logic
    }
}

I noticed that it always runs on the db that the app uses, even though I'm using a both ProviderTestCase2 and RenamingDelegatingContext, which are supposed to ensure I'm running with a clean db. Can anyone explain please what am I missing???

Thanks in advance!

Anorflame
  • 376
  • 3
  • 12

0 Answers0