aboutsummaryrefslogtreecommitdiff
path: root/src/test/java/org/shedlang
diff options
context:
space:
mode:
authorMichael Williamson <mike@zwobble.org>2026-03-21 17:36:16 +0000
committerMichael Williamson <mike@zwobble.org>2026-03-21 17:36:16 +0000
commit2312e70431e6c1cb0c04c75c60e2ee82e5e37ed5 (patch)
treea4562d8447b8f5e334758644dbd129d4b9df869c /src/test/java/org/shedlang
parent1a92052dc7b1cbcf15f0b9f497942e397375d3b4 (diff)
Serialize Patio compilation unit to Protobuf
Diffstat (limited to 'src/test/java/org/shedlang')
-rw-r--r--src/test/java/org/shedlang/compiler/patio/protobuf/PatioToProtobufTests.java17
1 files changed, 17 insertions, 0 deletions
diff --git a/src/test/java/org/shedlang/compiler/patio/protobuf/PatioToProtobufTests.java b/src/test/java/org/shedlang/compiler/patio/protobuf/PatioToProtobufTests.java
index 4a0fb7af..9eaf4ef3 100644
--- a/src/test/java/org/shedlang/compiler/patio/protobuf/PatioToProtobufTests.java
+++ b/src/test/java/org/shedlang/compiler/patio/protobuf/PatioToProtobufTests.java
@@ -17,6 +17,23 @@ import static org.zwobble.precisely.AssertThat.assertThat;
import static org.zwobble.precisely.Matchers.equalTo;
public class PatioToProtobufTests {
+ // == Compilation unit ==
+
+ @Test
+ public void canSerializeCompilationUnit() {
+ var element = PatioFunctionDefinition.builder()
+ .withName("f")
+ .withReturnType(PatioTypes.VOID)
+ .build();
+ var compilationUnit = Patio.compilationUnit(List.of(element));
+
+ var deserializedCompilationUnit = PatioToProtobuf.deserializeCompilationUnit(
+ PatioToProtobuf.serializeCompilationUnit(compilationUnit)
+ );
+
+ assertThat(deserializedCompilationUnit, equalTo(compilationUnit));
+ }
+
// == Compilation unit elements ==
@Test