From c0edaf9a5ea7629ebfcf2250cf5684370120bb17 Mon Sep 17 00:00:00 2001 From: Vincent Breitmoser Date: Fri, 1 Aug 2014 16:49:41 +0200 Subject: make FileImportCache generic, iterable, and add unit test --- .../keychain/util/FileImportCacheTest.java | 54 ++++++++++++++++++++++ 1 file changed, 54 insertions(+) create mode 100644 OpenKeychain-Test/src/test/java/org/sufficientlysecure/keychain/util/FileImportCacheTest.java (limited to 'OpenKeychain-Test/src/test/java') diff --git a/OpenKeychain-Test/src/test/java/org/sufficientlysecure/keychain/util/FileImportCacheTest.java b/OpenKeychain-Test/src/test/java/org/sufficientlysecure/keychain/util/FileImportCacheTest.java new file mode 100644 index 000000000..b5708b46f --- /dev/null +++ b/OpenKeychain-Test/src/test/java/org/sufficientlysecure/keychain/util/FileImportCacheTest.java @@ -0,0 +1,54 @@ +package org.sufficientlysecure.keychain.util; + +import android.os.Bundle; + +import org.junit.Assert; +import org.junit.Before; +import org.junit.Test; +import org.junit.runner.RunWith; +import org.robolectric.Robolectric; +import org.robolectric.RobolectricTestRunner; +import org.robolectric.shadows.ShadowLog; + +import java.util.ArrayList; +import java.util.List; + +@RunWith(RobolectricTestRunner.class) +@org.robolectric.annotation.Config(emulateSdk = 18) // Robolectric doesn't yet support 19 +public class FileImportCacheTest { + + @Before + public void setUp() throws Exception { + ShadowLog.stream = System.out; + } + + @Test + public void testInputOutput() throws Exception { + + FileImportCache cache = new FileImportCache(Robolectric.application); + + ArrayList list = new ArrayList(); + + for (int i = 0; i < 50; i++) { + Bundle b = new Bundle(); + b.putInt("key1", i); + b.putString("key2", Integer.toString(i)); + list.add(b); + } + + // write to cache file + cache.writeCache(list); + + // read back + List last = cache.readCacheIntoList(); + + for (int i = 0; i < list.size(); i++) { + Assert.assertEquals("input values should be equal to output values", + list.get(i).getInt("key1"), last.get(i).getInt("key1")); + Assert.assertEquals("input values should be equal to output values", + list.get(i).getString("key2"), last.get(i).getString("key2")); + } + + } + +} -- cgit v1.2.3