summaryrefslogtreecommitdiff
path: root/examples/10-transient-0
diff options
context:
space:
mode:
Diffstat (limited to 'examples/10-transient-0')
-rw-r--r--examples/10-transient-0/output/java-junit/src/test/java/org/zwobble/example/Transient0Tests.java15
-rw-r--r--examples/10-transient-0/src/data.hob5
2 files changed, 20 insertions, 0 deletions
diff --git a/examples/10-transient-0/output/java-junit/src/test/java/org/zwobble/example/Transient0Tests.java b/examples/10-transient-0/output/java-junit/src/test/java/org/zwobble/example/Transient0Tests.java
index c75f454..8466647 100644
--- a/examples/10-transient-0/output/java-junit/src/test/java/org/zwobble/example/Transient0Tests.java
+++ b/examples/10-transient-0/output/java-junit/src/test/java/org/zwobble/example/Transient0Tests.java
@@ -11,6 +11,7 @@ import org.zwobble.example.types.data.OuterStruct;
import org.zwobble.example.types.data.StructWithBool;
import org.zwobble.example.types.data.StructWithInt32;
import org.zwobble.example.types.data.StructWithInt64;
+import org.zwobble.example.types.data.StructWithString;
public class Transient0Tests {
@Test
@@ -56,6 +57,20 @@ public class Transient0Tests {
}
@Test
+ public void structWithString() throws IOException {
+ var value = new StructWithString("abc", "def");
+
+ var outputStream = new ByteArrayOutputStream();
+ HobgoblinTransient0Data.encodeStructWithString(value, outputStream);
+ var bytes = outputStream.toByteArray();
+
+ var inputStream = new ByteArrayInputStream(bytes);
+ var decodedValue = HobgoblinTransient0Data.decodeStructWithString(inputStream);
+
+ Assertions.assertEquals(value, decodedValue);
+ }
+
+ @Test
public void nestedStruct() throws IOException {
var value = new OuterStruct(new InnerStruct(10, 25), 42);
diff --git a/examples/10-transient-0/src/data.hob b/examples/10-transient-0/src/data.hob
index d2ad016..c750cdd 100644
--- a/examples/10-transient-0/src/data.hob
+++ b/examples/10-transient-0/src/data.hob
@@ -13,6 +13,11 @@ struct StructWithInt64 {
field b: Int64;
}
+struct StructWithString {
+ field a: String;
+ field b: String;
+}
+
struct OuterStruct {
field inner: InnerStruct;
field c: Int32;