@Test
    public void canIterateOverVariable() {
        SimpleCodeWriter writer = new SimpleCodeWriter()
                .trimTrailingSpaces(false)
                .insertTrailingNewline(false);
        writer.putContext("foo", Arrays.asList("a", "b", "c"));
        writer.write("${#foo}\n"
                + " - ${key:L}: ${value:L}\n"
                + "${/foo}");

        assertThat(writer.toString(), equalTo(" - 0: a\n - 1: b\n - 2: c\n"));
    }
\n"
                                + " * Foo \"foo!\"\n"
                                + " *\n"
                                + " * \"baz\"!\n"
                                + " * Yap!\n"
                                + " *     This is indented, in flow of parent.\n"
                                + " *     Yap!\n"
                                + " *     Yap?\n"
                                + " *     # Has a prefix\n"
                                + " *     # Yes\n"
                                + "
smithy-utils/src/test/java/software/amazon/smithy/utils/CodeWriterTest.java