diff options
Diffstat (limited to 'src/test/java')
| -rw-r--r-- | src/test/java/org/shedlang/compiler/patio/protobuf/PatioToProtobufTests.java | 23 |
1 files changed, 23 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 368f95f3..ceb14468 100644 --- a/src/test/java/org/shedlang/compiler/patio/protobuf/PatioToProtobufTests.java +++ b/src/test/java/org/shedlang/compiler/patio/protobuf/PatioToProtobufTests.java @@ -1,9 +1,11 @@ package org.shedlang.compiler.patio.protobuf; import org.junit.jupiter.api.Test; +import org.shedlang.compiler.patio.PatioVisibility; import org.shedlang.compiler.patio.instructions.Patio; import org.shedlang.compiler.patio.types.PatioDataLayouts; import org.shedlang.compiler.patio.types.PatioDataValues; +import org.shedlang.compiler.sources.Sources; import java.util.List; @@ -11,6 +13,27 @@ import static org.zwobble.precisely.AssertThat.assertThat; import static org.zwobble.precisely.Matchers.equalTo; public class PatioToProtobufTests { + // == Compilation unit elements == + + @Test + public void canSerializeDataElementImmutableDefinition() { + var element = Patio.dataElementImmutableDefinition( + "x", + PatioVisibility.PRIVATE, + PatioDataValues.array( + PatioDataLayouts.BYTE, + List.of(PatioDataValues.byte_(0x01), PatioDataValues.byte_(0x02)) + ) + ); + + var deserializedElement = PatioToProtobuf.deserializeCompilationUnitElement( + PatioToProtobuf.serializeCompilationUnitElement(element, Sources.NULL), + Sources.NULL + ); + + assertThat(deserializedElement, equalTo(element)); + } + // == Data ptr values == @Test |
