aboutsummaryrefslogtreecommitdiff
path: root/src/test/java
diff options
context:
space:
mode:
authorMichael Williamson <mike@zwobble.org>2023-07-23 11:28:32 +0100
committerMichael Williamson <mike@zwobble.org>2023-07-23 11:28:32 +0100
commit533f367444e198ed7294bfa4d5a96b4d4e542547 (patch)
treeaef5a064e83d9e6c0274f5d17aeabeb54df9d868 /src/test/java
parent179af029a24147ffc09f8b165b7d812b135d3f2d (diff)
Add bool-to-int instruction to Patio
Diffstat (limited to 'src/test/java')
-rw-r--r--src/test/java/org/shedlang/compiler/patio/PatioSerializerTests.java9
-rw-r--r--src/test/java/org/shedlang/compiler/patio/instructions/Patio.java4
2 files changed, 13 insertions, 0 deletions
diff --git a/src/test/java/org/shedlang/compiler/patio/PatioSerializerTests.java b/src/test/java/org/shedlang/compiler/patio/PatioSerializerTests.java
index 57b7948d..6ab294a4 100644
--- a/src/test/java/org/shedlang/compiler/patio/PatioSerializerTests.java
+++ b/src/test/java/org/shedlang/compiler/patio/PatioSerializerTests.java
@@ -140,6 +140,15 @@ public class PatioSerializerTests {
}
@Test
+ public void canSerializeBoolToInt() {
+ var instruction = Patio.boolToInt(Patio.localRef("target"), Patio.localRef("value"));
+
+ var string = PatioTesting.serializeInstruction(instruction);
+
+ assertThat(string, equalTo("(bool-to-int (local \"target\") (local \"value\"))"));
+ }
+
+ @Test
public void canSerializeCallWithoutTarget() {
var instruction = Patio.call(
Optional.empty(),
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 2bdca7a4..b89f308d 100644
--- a/src/test/java/org/shedlang/compiler/patio/instructions/Patio.java
+++ b/src/test/java/org/shedlang/compiler/patio/instructions/Patio.java
@@ -22,6 +22,10 @@ public class Patio {
return new PatioBool(value);
}
+ public static PatioInstruction boolToInt(PatioLocalRef target, PatioLocalRef value) {
+ return new PatioBoolToInt(target, value, Sources.NULL);
+ }
+
public static PatioInstruction call(
Optional<PatioLocalRef> target,
String name,