diff --git a/src/value/mod.rs b/src/value/mod.rs index eb27267..d761bf8 100644 --- a/src/value/mod.rs +++ b/src/value/mod.rs @@ -165,10 +165,14 @@ impl Value { let mut buf = String::with_capacity(string.len()); for c in string.chars() { match c { - '\n' => { - buf.push(' '); - after_newline = true; - } + // TODO: figure out what is going on here + // This is adapted from the original dart-sass + // code, but in the spec tests it seems that + // newlines are not actually treated like this. + // '\n' => { + // buf.push(' '); + // after_newline = true; + // } ' ' => { if !after_newline { buf.push(' '); diff --git a/tests/interpolation.rs b/tests/interpolation.rs index eadb6aa..c51d7f2 100644 --- a/tests/interpolation.rs +++ b/tests/interpolation.rs @@ -44,7 +44,12 @@ test!( "a {\n color: a b;\n}\n" ); test!( - interpolated_string_literally_inserted, + interpolated_newline, "a {\n color: \"#{\"\\a\"}\";\n}\n", "a {\n color: \"\\a\";\n}\n" ); +test!( + double_interpolated_newline, + "a {\n color: \"#{#{\"\\a\"}}\";\n}\n", + "a {\n color: \"\\a\";\n}\n" +);