aboutsummaryrefslogtreecommitdiff
path: root/src/test/java
diff options
context:
space:
mode:
Diffstat (limited to 'src/test/java')
-rw-r--r--src/test/java/org/shedlang/compiler/stackir/InstructionSerializerTests.java9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/test/java/org/shedlang/compiler/stackir/InstructionSerializerTests.java b/src/test/java/org/shedlang/compiler/stackir/InstructionSerializerTests.java
index b1954197..5bc9f749 100644
--- a/src/test/java/org/shedlang/compiler/stackir/InstructionSerializerTests.java
+++ b/src/test/java/org/shedlang/compiler/stackir/InstructionSerializerTests.java
@@ -115,6 +115,15 @@ public class InstructionSerializerTests {
assertThat(string, equalTo("(push-string \"hello\")"));
}
+ @Test
+ public void specialCharactersInStringAreEscaped() {
+ var instruction = Instructions.pushString("\b\t\n\f\r\"\\");
+
+ var string = serialize(instruction);
+
+ assertThat(string, equalTo("(push-string \"\\b\\t\\n\\f\\r\\\"\\\\\")"));
+ }
+
private String serialize(Instruction instruction) {
var builder = new StringBuilder();
InstructionSerializer.serialize(instruction, builder);