summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorBob Potter <bobby.potter@gmail.com>2014-08-08 21:59:28 -0500
committerWouter van Oortmerssen <wvo@google.com>2014-08-12 15:12:51 -0700
commit39d4b7e2bfb521850f28f4e42183a2f420aacdb6 (patch)
tree56e38c14a650afb7a15e7c0eebaba25de72c3f98 /tests
parent5da7bda826a98fa92eb1356907afa631bfa9c1b1 (diff)
downloadflatbuffers-39d4b7e2bfb521850f28f4e42183a2f420aacdb6.tar.gz
flatbuffers-39d4b7e2bfb521850f28f4e42183a2f420aacdb6.tar.bz2
flatbuffers-39d4b7e2bfb521850f28f4e42183a2f420aacdb6.zip
Fix vector of strings for Java
Change-Id: If032b450230b15224b2661836c8a740398d207c5
Diffstat (limited to 'tests')
-rwxr-xr-xtests/JavaTest.java12
-rwxr-xr-xtests/MyGame/Example/Monster.java2
-rw-r--r--tests/monsterdata_test.binbin176 -> 224 bytes
-rw-r--r--tests/monsterdata_test.golden4
4 files changed, 17 insertions, 1 deletions
diff --git a/tests/JavaTest.java b/tests/JavaTest.java
index dd6cbcae..902362fe 100755
--- a/tests/JavaTest.java
+++ b/tests/JavaTest.java
@@ -52,6 +52,8 @@ class JavaTest {
// We set up the same values as monsterdata.json:
int str = fbb.createString("MyMonster");
+ int test1 = fbb.createString("test1");
+ int test2 = fbb.createString("test2");
Monster.startInventoryVector(fbb, 5);
for (byte i = 4; i >=0; i--) fbb.addByte(i);
@@ -66,6 +68,11 @@ class JavaTest {
Test.createTest(fbb, (short)30, (byte)40);
int test4 = fbb.endVector();
+ Monster.startTestarrayofstringVector(fbb, 2);
+ fbb.addOffset(test2);
+ fbb.addOffset(test1);
+ int testArrayOfString = fbb.endVector();
+
Monster.startMonster(fbb);
Monster.addPos(fbb, Vec3.createVec3(fbb, 1.0f, 2.0f, 3.0f, 3.0,
(byte)4, (short)5, (byte)6));
@@ -75,6 +82,7 @@ class JavaTest {
Monster.addTestType(fbb, (byte)1);
Monster.addTest(fbb, mon2);
Monster.addTest4(fbb, test4);
+ Monster.addTestarrayofstring(fbb, testArrayOfString);
int mon = Monster.endMonster(fbb);
fbb.finish(mon);
@@ -135,6 +143,10 @@ class JavaTest {
Test test_1 = monster.test4(1);
TestEq(monster.test4Length(), 2);
TestEq(test_0.a() + test_0.b() + test_1.a() + test_1.b(), 100);
+
+ TestEq(monster.testarrayofstringLength(), 2);
+ TestEq(monster.testarrayofstring(0),"test1");
+ TestEq(monster.testarrayofstring(1),"test2");
}
static <T> void TestEq(T a, T b) {
diff --git a/tests/MyGame/Example/Monster.java b/tests/MyGame/Example/Monster.java
index a6c584aa..a8ec2f93 100755
--- a/tests/MyGame/Example/Monster.java
+++ b/tests/MyGame/Example/Monster.java
@@ -14,7 +14,7 @@ public class Monster extends Table {
public Vec3 pos(Vec3 obj) { int o = __offset(4); return o != 0 ? obj.__init(o + bb_pos, bb) : null; }
public short mana() { int o = __offset(6); return o != 0 ? bb.getShort(o + bb_pos) : 150; }
public short hp() { int o = __offset(8); return o != 0 ? bb.getShort(o + bb_pos) : 100; }
- public String name() { int o = __offset(10); return o != 0 ? __string(o) : null; }
+ public String name() { int o = __offset(10); return o != 0 ? __string(o + bb_pos) : null; }
public byte inventory(int j) { int o = __offset(14); return o != 0 ? bb.get(__vector(o) + j * 1) : 0; }
public int inventoryLength() { int o = __offset(14); return o != 0 ? __vector_len(o) : 0; }
public byte color() { int o = __offset(16); return o != 0 ? bb.get(o + bb_pos) : 8; }
diff --git a/tests/monsterdata_test.bin b/tests/monsterdata_test.bin
index 63137456..952a96be 100644
--- a/tests/monsterdata_test.bin
+++ b/tests/monsterdata_test.bin
Binary files differ
diff --git a/tests/monsterdata_test.golden b/tests/monsterdata_test.golden
index c905fe4e..a738caec 100644
--- a/tests/monsterdata_test.golden
+++ b/tests/monsterdata_test.golden
@@ -32,5 +32,9 @@
a: 30,
b: 40
}
+ ],
+ testarrayofstring: [
+ "test1",
+ "test2"
]
}