0

Android コンテンツ プロバイダーをテストしようとしています。ここで与えられたのと同様のコードを書いて、データベースに挿入してからデータベースにクエリを実行していますが、常にではなく、返されるカーソルの行が0になることがあります。何が問題なのですか?

public class MyProviderTestCase extends ProviderTestCase2<MyProvider> {

private MockContentResolver mMockResolver;
    ....
public MyProviderTestCase() {
    super(MyProvider.class, "com.example.MyProvider");
}

protected void setUp() throws Exception {
    super.setUp();
    mMockResolver = getMockContentResolver();
}

protected void tearDown() throws Exception {
    super.tearDown();
}

@SmallTest
public void testInsertAndUpdate() {
    ...
    SomeObject someObject = ...;
    Uri insertedUri = mMockResolver.insert(MyrProvider.URI, someObject.createContentValues());

    assertNotNull(insertedUri);
    Log.d("test insert and update and delete:inserteduri", insertedUri+"");

    Cursor c = mMockResolver.query(MyProvider.URI, null, null, null, null);
    assertNotNull(c);

    assertTrue(c.moveToFirst());// This assertion fails sometimes
}

}

4

0 に答える 0