diff options
| author | Michael Williamson <mike@zwobble.org> | 2023-06-11 10:25:37 +0100 |
|---|---|---|
| committer | Michael Williamson <mike@zwobble.org> | 2023-06-11 10:25:37 +0100 |
| commit | ea29df54d21ccfd8fcf93bac37f3b57bad327b13 (patch) | |
| tree | 989c01134b0798105d3be69d5b8e78c626011e8f /src/test/java | |
| parent | deaaca5a698136ca65ca49ac668c6c85037eabfd (diff) | |
Escape strings in serialized instructions
Diffstat (limited to 'src/test/java')
| -rw-r--r-- | src/test/java/org/shedlang/compiler/stackir/InstructionSerializerTests.java | 9 |
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); |
