From c25a7bd63bc7c056c79f234e86fb4c30fd44f0bf Mon Sep 17 00:00:00 2001 From: Michael Williamson Date: Sat, 8 Mar 2025 13:03:11 +0000 Subject: Add PatioDataElementMutableDeclaration --- .../shedlang/compiler/patio/PatioSerializerTests.java | 18 ++++++++++++++++-- .../shedlang/compiler/patio/instructions/Patio.java | 11 +++++++++++ 2 files changed, 27 insertions(+), 2 deletions(-) (limited to 'src/test/java') diff --git a/src/test/java/org/shedlang/compiler/patio/PatioSerializerTests.java b/src/test/java/org/shedlang/compiler/patio/PatioSerializerTests.java index b2a83658..448da19c 100644 --- a/src/test/java/org/shedlang/compiler/patio/PatioSerializerTests.java +++ b/src/test/java/org/shedlang/compiler/patio/PatioSerializerTests.java @@ -43,7 +43,7 @@ public class PatioSerializerTests { // == Compilation unit elements == @Test - public void canSerializeDataElementImmutable() { + public void canSerializeDataElementImmutableDefinition() { var element = Patio.dataElementImmutableDefinition( "x", PatioVisibility.PRIVATE, @@ -61,7 +61,21 @@ public class PatioSerializerTests { } @Test - public void canSerializeDataElementMutable() { + public void canSerializeDataElementMutableDeclaration() { + var element = Patio.dataElementMutableDeclaration( + "x", + PatioDataLayouts.INT + ); + + var string = PatioTesting.serializeCompilationUnitElement(element); + + assertThat(string, equalTo(""" + (data-mutable-decl "x" int)""" + )); + } + + @Test + public void canSerializeDataElementMutableDefinition() { var element = Patio.dataElementMutableDefinition( "x", PatioVisibility.PRIVATE, diff --git a/src/test/java/org/shedlang/compiler/patio/instructions/Patio.java b/src/test/java/org/shedlang/compiler/patio/instructions/Patio.java index 47c25172..f8f8dbf6 100644 --- a/src/test/java/org/shedlang/compiler/patio/instructions/Patio.java +++ b/src/test/java/org/shedlang/compiler/patio/instructions/Patio.java @@ -91,6 +91,17 @@ public class Patio { ); } + public static PatioDataElementMutableDeclaration dataElementMutableDeclaration( + String name, + PatioDataLayout layout + ) { + return new PatioDataElementMutableDeclaration( + name, + layout, + Sources.NULL + ); + } + public static PatioDataElementMutableDefinition dataElementMutableDefinition( String name, PatioVisibility visibility, -- cgit v1.2.3