diff options
author | San Mehat <san@google.com> | 2010-02-18 11:43:03 -0800 |
---|---|---|
committer | San Mehat <san@google.com> | 2010-02-18 11:48:48 -0800 |
commit | d970998b0d489774ad1c5b94b47d233912f00214 (patch) | |
tree | e319422620d535a0c7172fe8616e67cc27cf86b5 /tests/AndroidTests/src/com | |
parent | 154f7a1cc2d4f0468a7cc8dfa36e837c84cd9f7e (diff) | |
download | frameworks_base-d970998b0d489774ad1c5b94b47d233912f00214.zip frameworks_base-d970998b0d489774ad1c5b94b47d233912f00214.tar.gz frameworks_base-d970998b0d489774ad1c5b94b47d233912f00214.tar.bz2 |
framework: storage: Add 'force' option to unmount/destroy storage apis, and update callsites.
Also adds additional storage unit tests
Signed-off-by: San Mehat <san@google.com>
Diffstat (limited to 'tests/AndroidTests/src/com')
-rwxr-xr-x | tests/AndroidTests/src/com/android/unit_tests/AsecTests.java | 94 | ||||
-rwxr-xr-x | tests/AndroidTests/src/com/android/unit_tests/PackageManagerTests.java | 2 |
2 files changed, 86 insertions, 10 deletions
diff --git a/tests/AndroidTests/src/com/android/unit_tests/AsecTests.java b/tests/AndroidTests/src/com/android/unit_tests/AsecTests.java index 7569d7a..bdf397c 100755 --- a/tests/AndroidTests/src/com/android/unit_tests/AsecTests.java +++ b/tests/AndroidTests/src/com/android/unit_tests/AsecTests.java @@ -73,7 +73,7 @@ public class AsecTests extends AndroidTestCase { for (int i = 0; i < containers.length; i++) { if (containers[i].startsWith("com.android.unittests.AsecTests.")) { - ms.destroySecureContainer(containers[i]); + ms.destroySecureContainer(containers[i], true); } } } @@ -103,7 +103,32 @@ public class AsecTests extends AndroidTestCase { Assert.assertTrue(isMediaMounted()); IMountService ms = getMs(); try { - int rc = ms.createSecureContainer("com.android.unittests.AsecTests.testCreateContainer", 4, "fat", "none", 1000); + int rc = ms.createSecureContainer("com.android.unittests.AsecTests.testCreateContainer", + 4, "fat", "none", android.os.Process.myUid()); + Assert.assertEquals(StorageResultCode.OperationSucceeded, rc); + } catch (Exception e) { + failStr(e); + } + } + + public void testCreateZeroSizeContainer() { + Assert.assertTrue(isMediaMounted()); + IMountService ms = getMs(); + try { + int rc = ms.createSecureContainer("com.android.unittests.AsecTests.testCreateZeroSizeContainer", + 0, "fat", "none", android.os.Process.myUid()); + Assert.assertEquals(StorageResultCode.OperationFailedInternalError, rc); + } catch (Exception e) { + failStr(e); + } + } + + public void testCreateMinSizeContainer() { + Assert.assertTrue(isMediaMounted()); + IMountService ms = getMs(); + try { + int rc = ms.createSecureContainer("com.android.unittests.AsecTests.testCreateMinSizeContainer", + 1, "fat", "none", android.os.Process.myUid()); Assert.assertEquals(StorageResultCode.OperationSucceeded, rc); } catch (Exception e) { failStr(e); @@ -114,9 +139,10 @@ public class AsecTests extends AndroidTestCase { Assert.assertTrue(isMediaMounted()); IMountService ms = getMs(); try { - int rc = ms.createSecureContainer("com.android.unittests.AsecTests.testDestroyContainer", 4, "fat", "none", 1000); + int rc = ms.createSecureContainer("com.android.unittests.AsecTests.testDestroyContainer", + 4, "fat", "none", android.os.Process.myUid()); Assert.assertEquals(StorageResultCode.OperationSucceeded, rc); - rc = ms.destroySecureContainer("com.android.unittests.AsecTests.testDestroyContainer"); + rc = ms.destroySecureContainer("com.android.unittests.AsecTests.testDestroyContainer", true); Assert.assertEquals(StorageResultCode.OperationSucceeded, rc); } catch (Exception e) { failStr(e); @@ -128,13 +154,15 @@ public class AsecTests extends AndroidTestCase { IMountService ms = getMs(); try { int rc = ms.createSecureContainer( - "com.android.unittests.AsecTests.testMountContainer", 4, "fat", "none", 1000); + "com.android.unittests.AsecTests.testMountContainer", + 4, "fat", "none", android.os.Process.myUid()); Assert.assertEquals(StorageResultCode.OperationSucceeded, rc); - rc = ms.unmountSecureContainer("com.android.unittests.AsecTests.testMountContainer"); + rc = ms.unmountSecureContainer("com.android.unittests.AsecTests.testMountContainer", false); Assert.assertEquals(StorageResultCode.OperationSucceeded, rc); - rc = ms.mountSecureContainer("com.android.unittests.AsecTests.testMountContainer", "none", 1000); + rc = ms.mountSecureContainer("com.android.unittests.AsecTests.testMountContainer", "none", + android.os.Process.myUid()); Assert.assertEquals(StorageResultCode.OperationSucceeded, rc); } catch (Exception e) { failStr(e); @@ -147,10 +175,10 @@ public class AsecTests extends AndroidTestCase { try { int rc = ms.createSecureContainer( "com.android.unittests.AsecTests.testMountBadKey", 4, "fat", - "00000000000000000000000000000000", 1000); + "00000000000000000000000000000000", android.os.Process.myUid()); Assert.assertEquals(StorageResultCode.OperationSucceeded, rc); - rc = ms.unmountSecureContainer("com.android.unittests.AsecTests.testMountBadKey"); + rc = ms.unmountSecureContainer("com.android.unittests.AsecTests.testMountBadKey", false); Assert.assertEquals(StorageResultCode.OperationSucceeded, rc); rc = ms.mountSecureContainer( @@ -165,4 +193,52 @@ public class AsecTests extends AndroidTestCase { failStr(e); } } + + public void testUnmountBusyContainer() { + Assert.assertTrue(isMediaMounted()); + IMountService ms = getMs(); + try { + int rc = ms.createSecureContainer("com.android.unittests.AsecTests.testUnmountBusyContainer", + 4, "fat", "none", android.os.Process.myUid()); + Assert.assertEquals(StorageResultCode.OperationSucceeded, rc); + + String path = ms.getSecureContainerPath("com.android.unittests.AsecTests.testUnmountBusyContainer"); + Context con = super.getContext(); + + File f = new File(path, "reference"); + FileOutputStream fos = new FileOutputStream(f); + rc = ms.unmountSecureContainer("com.android.unittests.AsecTests.testUnmountBusyContainer", false); + Assert.assertEquals(StorageResultCode.OperationFailedStorageBusy, rc); + fos.close(); + + rc = ms.unmountSecureContainer("com.android.unittests.AsecTests.testUnmountBusyContainer", false); + Assert.assertEquals(StorageResultCode.OperationSucceeded, rc); + } catch (Exception e) { + failStr(e); + } + } + + public void testDestroyBusyContainer() { + Assert.assertTrue(isMediaMounted()); + IMountService ms = getMs(); + try { + int rc = ms.createSecureContainer("com.android.unittests.AsecTests.testUnmountBusyContainer", + 4, "fat", "none", android.os.Process.myUid()); + Assert.assertEquals(StorageResultCode.OperationSucceeded, rc); + + String path = ms.getSecureContainerPath("com.android.unittests.AsecTests.testUnmountBusyContainer"); + Context con = super.getContext(); + + File f = new File(path, "reference"); + FileOutputStream fos = new FileOutputStream(f); + rc = ms.destroySecureContainer("com.android.unittests.AsecTests.testUnmountBusyContainer", false); + Assert.assertEquals(StorageResultCode.OperationFailedStorageBusy, rc); + fos.close(); + + rc = ms.destroySecureContainer("com.android.unittests.AsecTests.testUnmountBusyContainer", false); + Assert.assertEquals(StorageResultCode.OperationSucceeded, rc); + } catch (Exception e) { + failStr(e); + } + } } diff --git a/tests/AndroidTests/src/com/android/unit_tests/PackageManagerTests.java b/tests/AndroidTests/src/com/android/unit_tests/PackageManagerTests.java index 8f4d0a1..be9571c 100755 --- a/tests/AndroidTests/src/com/android/unit_tests/PackageManagerTests.java +++ b/tests/AndroidTests/src/com/android/unit_tests/PackageManagerTests.java @@ -716,7 +716,7 @@ public class PackageManagerTests extends AndroidTestCase { } try { String mPath = Environment.getExternalStorageDirectory().toString(); - int ret = getMs().unmountVolume(mPath); + int ret = getMs().unmountVolume(mPath, false); return ret == StorageResultCode.OperationSucceeded; } catch (RemoteException e) { return true; |