Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit beac2184 authored by Daichi Hirono's avatar Daichi Hirono
Browse files

Extract common initialization of MtpDocumentsProviderTest into setUp method.

BUG=20274999
Change-Id: Ib8e6907b17d89842bac85e9850bfad301bf51fe6
parent 09109567
Loading
Loading
Loading
Loading
+49 −51
Original line number Diff line number Diff line
@@ -28,61 +28,62 @@ import java.io.IOException;

@SmallTest
public class MtpDocumentsProviderTest extends AndroidTestCase {
    public void testOpenAndCloseDevice() throws Exception {
        final ContentResolver resolver = new ContentResolver();
        final MtpDocumentsProvider provider = new MtpDocumentsProvider();
        final MtpManagerMock mtpManager = new MtpManagerMock(getContext());
        mtpManager.addValidDevice(0);
        provider.onCreateForTesting(mtpManager, resolver);
    private ContentResolver mResolver;
    private MtpDocumentsProvider mProvider;
    private MtpManagerMock mMtpManager;

        assertEquals(0, resolver.changeCount);
    @Override
    public void setUp() {
        mResolver = new ContentResolver();
        mMtpManager = new MtpManagerMock(getContext());
        mProvider = new MtpDocumentsProvider();
        mProvider.onCreateForTesting(mMtpManager, mResolver);
    }

    public void testOpenAndCloseDevice() throws Exception {
        mMtpManager.addValidDevice(0);
        assertEquals(0, mResolver.changeCount);

        provider.openDevice(0);
        assertEquals(1, resolver.changeCount);
        mProvider.openDevice(0);
        assertEquals(1, mResolver.changeCount);

        provider.closeDevice(0);
        assertEquals(2, resolver.changeCount);
        mProvider.closeDevice(0);
        assertEquals(2, mResolver.changeCount);

        int exceptionCounter = 0;
        try {
            provider.openDevice(1);
            mProvider.openDevice(1);
        } catch (IOException error) {
            exceptionCounter++;
        }
        assertEquals(2, resolver.changeCount);
        assertEquals(2, mResolver.changeCount);
        try {
            provider.closeDevice(1);
            mProvider.closeDevice(1);
        } catch (IOException error) {
            exceptionCounter++;
        }
        assertEquals(2, resolver.changeCount);
        assertEquals(2, mResolver.changeCount);
        assertEquals(2, exceptionCounter);
    }

    public void testCloseAllDevices() throws IOException {
        final ContentResolver resolver = new ContentResolver();
        final MtpDocumentsProvider provider = new MtpDocumentsProvider();
        final MtpManagerMock mtpManager = new MtpManagerMock(getContext());
        mtpManager.addValidDevice(0);
        provider.onCreateForTesting(mtpManager, resolver);
        mMtpManager.addValidDevice(0);
        mProvider.onCreateForTesting(mMtpManager, mResolver);

        provider.closeAllDevices();
        assertEquals(0, resolver.changeCount);
        mProvider.closeAllDevices();
        assertEquals(0, mResolver.changeCount);

        provider.openDevice(0);
        assertEquals(1, resolver.changeCount);
        mProvider.openDevice(0);
        assertEquals(1, mResolver.changeCount);

        provider.closeAllDevices();
        assertEquals(2, resolver.changeCount);
        mProvider.closeAllDevices();
        assertEquals(2, mResolver.changeCount);
    }

    public void testQueryRoots() throws Exception {
        final ContentResolver resolver = new ContentResolver();
        final MtpDocumentsProvider provider = new MtpDocumentsProvider();
        final MtpManagerMock mtpManager = new MtpManagerMock(getContext());
        mtpManager.addValidDevice(0);
        mtpManager.addValidDevice(1);
        mtpManager.setRoots(0, new MtpRoot[] {
        mMtpManager.addValidDevice(0);
        mMtpManager.addValidDevice(1);
        mMtpManager.setRoots(0, new MtpRoot[] {
                new MtpRoot(
                        1 /* storageId */,
                        "Storage A" /* volume description */,
@@ -90,7 +91,7 @@ public class MtpDocumentsProviderTest extends AndroidTestCase {
                        2048 /* total space */,
                        "" /* no volume identifier */)
        });
        mtpManager.setRoots(1, new MtpRoot[] {
        mMtpManager.setRoots(1, new MtpRoot[] {
                new MtpRoot(
                        1 /* storageId */,
                        "Storage B" /* volume description */,
@@ -98,12 +99,12 @@ public class MtpDocumentsProviderTest extends AndroidTestCase {
                        4096 /* total space */,
                        "Identifier B" /* no volume identifier */)
        });
        provider.onCreateForTesting(mtpManager, resolver);
        assertEquals(0, provider.queryRoots(null).getCount());
        mProvider.onCreateForTesting(mMtpManager, mResolver);
        assertEquals(0, mProvider.queryRoots(null).getCount());

        {
            provider.openDevice(0);
            final Cursor cursor = provider.queryRoots(null);
            mProvider.openDevice(0);
            final Cursor cursor = mProvider.queryRoots(null);
            assertEquals(1, cursor.getCount());
            cursor.moveToNext();
            assertEquals("0:1", cursor.getString(0));
@@ -116,8 +117,8 @@ public class MtpDocumentsProviderTest extends AndroidTestCase {
        }

        {
            provider.openDevice(1);
            final Cursor cursor = provider.queryRoots(null);
            mProvider.openDevice(1);
            final Cursor cursor = mProvider.queryRoots(null);
            assertEquals(2, cursor.getCount());
            cursor.moveToNext();
            cursor.moveToNext();
@@ -131,20 +132,17 @@ public class MtpDocumentsProviderTest extends AndroidTestCase {
        }

        {
            provider.closeAllDevices();
            final Cursor cursor = provider.queryRoots(null);
            mProvider.closeAllDevices();
            final Cursor cursor = mProvider.queryRoots(null);
            assertEquals(0, cursor.getCount());
        }
    }

    public void testQueryRoots_error() throws IOException {
        final ContentResolver resolver = new ContentResolver();
        final MtpDocumentsProvider provider = new MtpDocumentsProvider();
        final MtpManagerMock mtpManager = new MtpManagerMock(getContext());
        mtpManager.addValidDevice(0);
        mtpManager.addValidDevice(1);
        mMtpManager.addValidDevice(0);
        mMtpManager.addValidDevice(1);
        // Not set roots for device 0 so that MtpManagerMock#getRoots throws IOException.
        mtpManager.setRoots(1, new MtpRoot[] {
        mMtpManager.setRoots(1, new MtpRoot[] {
                new MtpRoot(
                        1 /* storageId */,
                        "Storage B" /* volume description */,
@@ -152,11 +150,11 @@ public class MtpDocumentsProviderTest extends AndroidTestCase {
                        4096 /* total space */,
                        "Identifier B" /* no volume identifier */)
        });
        provider.onCreateForTesting(mtpManager, resolver);
        mProvider.onCreateForTesting(mMtpManager, mResolver);
        {
            provider.openDevice(0);
            provider.openDevice(1);
            final Cursor cursor = provider.queryRoots(null);
            mProvider.openDevice(0);
            mProvider.openDevice(1);
            final Cursor cursor = mProvider.queryRoots(null);
            assertEquals(1, cursor.getCount());
            cursor.moveToNext();
            assertEquals("1:1", cursor.getString(0));