summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTodd Kennedy <toddke@google.com>2011-07-01 14:19:03 -0700
committerTodd Kennedy <toddke@google.com>2011-07-19 10:33:41 -0700
commit783123f79de3210d27ef2aab103bac7737b64caf (patch)
tree4b432479dc1d2cf3c17d747fec85f194f2ea87f7
parentba6e855453f055d358beead9cb50f3232a9e34e3 (diff)
downloadframeworks_base-783123f79de3210d27ef2aab103bac7737b64caf.zip
frameworks_base-783123f79de3210d27ef2aab103bac7737b64caf.tar.gz
frameworks_base-783123f79de3210d27ef2aab103bac7737b64caf.tar.bz2
Add getBlob() to MatrixCursor
Change-Id: I1abfd2fd117a2a31f99e77bd0b395c4ad0cfc6d2
-rw-r--r--core/java/android/database/MatrixCursor.java6
-rw-r--r--core/tests/coretests/src/android/database/MatrixCursorTest.java24
2 files changed, 22 insertions, 8 deletions
diff --git a/core/java/android/database/MatrixCursor.java b/core/java/android/database/MatrixCursor.java
index 5c1b968..6e68b6b 100644
--- a/core/java/android/database/MatrixCursor.java
+++ b/core/java/android/database/MatrixCursor.java
@@ -272,6 +272,12 @@ public class MatrixCursor extends AbstractCursor {
}
@Override
+ public byte[] getBlob(int column) {
+ Object value = get(column);
+ return (byte[]) value;
+ }
+
+ @Override
public int getType(int column) {
return DatabaseUtils.getTypeOfObject(get(column));
}
diff --git a/core/tests/coretests/src/android/database/MatrixCursorTest.java b/core/tests/coretests/src/android/database/MatrixCursorTest.java
index cddc6c4..cdab638 100644
--- a/core/tests/coretests/src/android/database/MatrixCursorTest.java
+++ b/core/tests/coretests/src/android/database/MatrixCursorTest.java
@@ -16,6 +16,8 @@
package android.database;
+import android.test.MoreAsserts;
+
import junit.framework.TestCase;
import java.util.*;
@@ -33,6 +35,7 @@ public class MatrixCursorTest extends TestCase {
cursor.moveToNext();
assertTrue(cursor.isNull(0));
assertNull(cursor.getString(0));
+ assertNull(cursor.getBlob(0));
assertEquals(0, cursor.getShort(0));
assertEquals(0, cursor.getInt(0));
assertEquals(0L, cursor.getLong(0));
@@ -49,7 +52,8 @@ public class MatrixCursorTest extends TestCase {
.add(2)
.add(3)
.add(4)
- .add(5);
+ .add(5)
+ .add(new byte[] {(byte) 0xaa, (byte) 0x55});
cursor.moveToNext();
@@ -61,7 +65,8 @@ public class MatrixCursorTest extends TestCase {
.add("2")
.add("3")
.add("4")
- .add("5");
+ .add("5")
+ .add(new byte[] {(byte) 0xaa, (byte) 0x55});
cursor.moveToNext();
checkValues(cursor);
@@ -73,7 +78,7 @@ public class MatrixCursorTest extends TestCase {
public void testAddArray() {
MatrixCursor cursor = newMatrixCursor();
- cursor.addRow(new Object[] { "a", 1, 2, 3, 4, 5 });
+ cursor.addRow(new Object[] { "a", 1, 2, 3, 4, 5, new byte[] {(byte) 0xaa, (byte) 0x55} });
cursor.moveToNext();
checkValues(cursor);
@@ -86,7 +91,7 @@ public class MatrixCursorTest extends TestCase {
public void testAddIterable() {
MatrixCursor cursor = newMatrixCursor();
- cursor.addRow(Arrays.asList("a", 1, 2, 3, 4, 5));
+ cursor.addRow(Arrays.asList("a", 1, 2, 3, 4, 5, new byte[] {(byte) 0xaa, (byte) 0x55}));
cursor.moveToNext();
checkValues(cursor);
@@ -96,7 +101,8 @@ public class MatrixCursorTest extends TestCase {
} catch (IllegalArgumentException e) { /* expected */ }
try {
- cursor.addRow(Arrays.asList("a", 1, 2, 3, 4, 5, "Too many!"));
+ cursor.addRow(Arrays.asList("a", 1, 2, 3, 4, 5,
+ new byte[] {(byte) 0xaa, (byte) 0x55}, "Too many!"));
fail();
} catch (IllegalArgumentException e) { /* expected */ }
}
@@ -105,7 +111,7 @@ public class MatrixCursorTest extends TestCase {
MatrixCursor cursor = newMatrixCursor();
cursor.addRow(new NonIterableArrayList<Object>(
- Arrays.asList("a", 1, 2, 3, 4, 5)));
+ Arrays.asList("a", 1, 2, 3, 4, 5, new byte[] {(byte) 0xaa, (byte) 0x55})));
cursor.moveToNext();
checkValues(cursor);
@@ -116,7 +122,8 @@ public class MatrixCursorTest extends TestCase {
try {
cursor.addRow(new NonIterableArrayList<Object>(
- Arrays.asList("a", 1, 2, 3, 4, 5, "Too many!")));
+ Arrays.asList("a", 1, 2, 3, 4, 5,
+ new byte[] {(byte) 0xaa, (byte) 0x55}, "Too many!")));
fail();
} catch (IllegalArgumentException e) { /* expected */ }
}
@@ -137,7 +144,7 @@ public class MatrixCursorTest extends TestCase {
private MatrixCursor newMatrixCursor() {
return new MatrixCursor(new String[] {
- "string", "short", "int", "long", "float", "double" });
+ "string", "short", "int", "long", "float", "double", "blob" });
}
private void checkValues(MatrixCursor cursor) {
@@ -147,6 +154,7 @@ public class MatrixCursorTest extends TestCase {
assertEquals(3, cursor.getLong(3));
assertEquals(4.0f, cursor.getFloat(4));
assertEquals(5.0D, cursor.getDouble(5));
+ MoreAsserts.assertEquals(new byte[] {(byte) 0xaa, (byte) 0x55}, cursor.getBlob(6));
}
}