sass 3.3.0 → 3.4.25

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (208) hide show
  1. checksums.yaml +4 -4
  2. data/.yardopts +3 -1
  3. data/CODE_OF_CONDUCT.md +10 -0
  4. data/CONTRIBUTING.md +148 -0
  5. data/MIT-LICENSE +1 -1
  6. data/README.md +76 -62
  7. data/Rakefile +104 -24
  8. data/VERSION +1 -1
  9. data/VERSION_DATE +1 -1
  10. data/VERSION_NAME +1 -1
  11. data/bin/sass +1 -1
  12. data/bin/scss +1 -1
  13. data/extra/sass-spec-ref.sh +32 -0
  14. data/extra/update_watch.rb +1 -1
  15. data/lib/sass/cache_stores/filesystem.rb +9 -5
  16. data/lib/sass/cache_stores/memory.rb +4 -5
  17. data/lib/sass/callbacks.rb +2 -2
  18. data/lib/sass/css.rb +12 -13
  19. data/lib/sass/deprecation.rb +55 -0
  20. data/lib/sass/engine.rb +106 -70
  21. data/lib/sass/environment.rb +39 -19
  22. data/lib/sass/error.rb +17 -20
  23. data/lib/sass/exec/base.rb +199 -0
  24. data/lib/sass/exec/sass_convert.rb +283 -0
  25. data/lib/sass/exec/sass_scss.rb +440 -0
  26. data/lib/sass/exec.rb +5 -771
  27. data/lib/sass/features.rb +9 -2
  28. data/lib/sass/importers/base.rb +8 -3
  29. data/lib/sass/importers/filesystem.rb +30 -38
  30. data/lib/sass/logger/base.rb +8 -2
  31. data/lib/sass/logger/delayed.rb +50 -0
  32. data/lib/sass/logger.rb +8 -3
  33. data/lib/sass/media.rb +1 -4
  34. data/lib/sass/plugin/compiler.rb +224 -90
  35. data/lib/sass/plugin/configuration.rb +38 -22
  36. data/lib/sass/plugin/merb.rb +2 -2
  37. data/lib/sass/plugin/rack.rb +3 -3
  38. data/lib/sass/plugin/rails.rb +1 -1
  39. data/lib/sass/plugin/staleness_checker.rb +4 -4
  40. data/lib/sass/plugin.rb +6 -5
  41. data/lib/sass/script/css_lexer.rb +1 -1
  42. data/lib/sass/script/css_parser.rb +2 -3
  43. data/lib/sass/script/css_variable_warning.rb +52 -0
  44. data/lib/sass/script/functions.rb +739 -318
  45. data/lib/sass/script/lexer.rb +134 -54
  46. data/lib/sass/script/parser.rb +252 -56
  47. data/lib/sass/script/tree/funcall.rb +13 -6
  48. data/lib/sass/script/tree/interpolation.rb +127 -4
  49. data/lib/sass/script/tree/list_literal.rb +31 -4
  50. data/lib/sass/script/tree/literal.rb +4 -0
  51. data/lib/sass/script/tree/node.rb +21 -3
  52. data/lib/sass/script/tree/operation.rb +54 -1
  53. data/lib/sass/script/tree/selector.rb +26 -0
  54. data/lib/sass/script/tree/string_interpolation.rb +59 -38
  55. data/lib/sass/script/tree/variable.rb +1 -1
  56. data/lib/sass/script/tree.rb +1 -0
  57. data/lib/sass/script/value/base.rb +17 -14
  58. data/lib/sass/script/value/bool.rb +0 -5
  59. data/lib/sass/script/value/color.rb +78 -42
  60. data/lib/sass/script/value/helpers.rb +119 -2
  61. data/lib/sass/script/value/list.rb +0 -15
  62. data/lib/sass/script/value/map.rb +1 -1
  63. data/lib/sass/script/value/null.rb +0 -5
  64. data/lib/sass/script/value/number.rb +112 -31
  65. data/lib/sass/script/value/string.rb +102 -13
  66. data/lib/sass/script/value.rb +0 -1
  67. data/lib/sass/script.rb +3 -3
  68. data/lib/sass/scss/css_parser.rb +24 -4
  69. data/lib/sass/scss/parser.rb +290 -383
  70. data/lib/sass/scss/rx.rb +17 -9
  71. data/lib/sass/scss/static_parser.rb +306 -4
  72. data/lib/sass/scss.rb +0 -2
  73. data/lib/sass/selector/abstract_sequence.rb +35 -18
  74. data/lib/sass/selector/comma_sequence.rb +114 -19
  75. data/lib/sass/selector/pseudo.rb +266 -0
  76. data/lib/sass/selector/sequence.rb +146 -40
  77. data/lib/sass/selector/simple.rb +22 -33
  78. data/lib/sass/selector/simple_sequence.rb +122 -39
  79. data/lib/sass/selector.rb +57 -197
  80. data/lib/sass/shared.rb +2 -2
  81. data/lib/sass/source/map.rb +31 -14
  82. data/lib/sass/source/position.rb +4 -4
  83. data/lib/sass/stack.rb +2 -8
  84. data/lib/sass/supports.rb +10 -13
  85. data/lib/sass/tree/at_root_node.rb +1 -0
  86. data/lib/sass/tree/charset_node.rb +1 -1
  87. data/lib/sass/tree/comment_node.rb +1 -1
  88. data/lib/sass/tree/css_import_node.rb +9 -1
  89. data/lib/sass/tree/directive_node.rb +8 -2
  90. data/lib/sass/tree/error_node.rb +18 -0
  91. data/lib/sass/tree/extend_node.rb +1 -1
  92. data/lib/sass/tree/function_node.rb +9 -0
  93. data/lib/sass/tree/import_node.rb +6 -5
  94. data/lib/sass/tree/keyframe_rule_node.rb +15 -0
  95. data/lib/sass/tree/node.rb +5 -3
  96. data/lib/sass/tree/prop_node.rb +6 -7
  97. data/lib/sass/tree/rule_node.rb +26 -11
  98. data/lib/sass/tree/visitors/check_nesting.rb +56 -32
  99. data/lib/sass/tree/visitors/convert.rb +59 -44
  100. data/lib/sass/tree/visitors/cssize.rb +34 -30
  101. data/lib/sass/tree/visitors/deep_copy.rb +6 -1
  102. data/lib/sass/tree/visitors/extend.rb +15 -13
  103. data/lib/sass/tree/visitors/perform.rb +87 -50
  104. data/lib/sass/tree/visitors/set_options.rb +15 -1
  105. data/lib/sass/tree/visitors/to_css.rb +72 -43
  106. data/lib/sass/util/multibyte_string_scanner.rb +0 -2
  107. data/lib/sass/util/normalized_map.rb +0 -1
  108. data/lib/sass/util/subset_map.rb +2 -3
  109. data/lib/sass/util.rb +334 -154
  110. data/lib/sass/version.rb +7 -7
  111. data/lib/sass.rb +10 -8
  112. data/test/sass/cache_test.rb +62 -20
  113. data/test/sass/callbacks_test.rb +1 -1
  114. data/test/sass/compiler_test.rb +24 -11
  115. data/test/sass/conversion_test.rb +241 -50
  116. data/test/sass/css2sass_test.rb +73 -5
  117. data/test/sass/css_variable_test.rb +132 -0
  118. data/test/sass/encoding_test.rb +219 -0
  119. data/test/sass/engine_test.rb +343 -260
  120. data/test/sass/exec_test.rb +12 -2
  121. data/test/sass/extend_test.rb +333 -44
  122. data/test/sass/functions_test.rb +353 -260
  123. data/test/sass/importer_test.rb +40 -21
  124. data/test/sass/logger_test.rb +1 -1
  125. data/test/sass/more_results/more_import.css +1 -1
  126. data/test/sass/more_templates/more1.sass +10 -10
  127. data/test/sass/more_templates/more_import.sass +2 -2
  128. data/test/sass/plugin_test.rb +24 -21
  129. data/test/sass/results/compact.css +1 -1
  130. data/test/sass/results/complex.css +4 -4
  131. data/test/sass/results/expanded.css +1 -1
  132. data/test/sass/results/import.css +1 -1
  133. data/test/sass/results/import_charset_ibm866.css +2 -2
  134. data/test/sass/results/mixins.css +17 -17
  135. data/test/sass/results/nested.css +1 -1
  136. data/test/sass/results/parent_ref.css +2 -2
  137. data/test/sass/results/script.css +5 -5
  138. data/test/sass/results/scss_import.css +1 -1
  139. data/test/sass/script_conversion_test.rb +71 -39
  140. data/test/sass/script_test.rb +714 -123
  141. data/test/sass/scss/css_test.rb +213 -30
  142. data/test/sass/scss/rx_test.rb +8 -4
  143. data/test/sass/scss/scss_test.rb +766 -22
  144. data/test/sass/source_map_test.rb +263 -95
  145. data/test/sass/superselector_test.rb +210 -0
  146. data/test/sass/templates/_partial.sass +1 -1
  147. data/test/sass/templates/basic.sass +10 -10
  148. data/test/sass/templates/bork1.sass +1 -1
  149. data/test/sass/templates/bork5.sass +1 -1
  150. data/test/sass/templates/compact.sass +10 -10
  151. data/test/sass/templates/complex.sass +187 -187
  152. data/test/sass/templates/compressed.sass +10 -10
  153. data/test/sass/templates/expanded.sass +10 -10
  154. data/test/sass/templates/import.sass +2 -2
  155. data/test/sass/templates/importee.sass +3 -3
  156. data/test/sass/templates/mixins.sass +22 -22
  157. data/test/sass/templates/multiline.sass +4 -4
  158. data/test/sass/templates/nested.sass +13 -13
  159. data/test/sass/templates/parent_ref.sass +12 -12
  160. data/test/sass/templates/script.sass +70 -70
  161. data/test/sass/templates/scss_import.scss +2 -1
  162. data/test/sass/templates/subdir/nested_subdir/_nested_partial.sass +1 -1
  163. data/test/sass/templates/subdir/nested_subdir/nested_subdir.sass +2 -2
  164. data/test/sass/templates/subdir/subdir.sass +3 -3
  165. data/test/sass/templates/units.sass +10 -10
  166. data/test/sass/test_helper.rb +1 -1
  167. data/test/sass/util/multibyte_string_scanner_test.rb +11 -3
  168. data/test/sass/util/normalized_map_test.rb +1 -1
  169. data/test/sass/util/subset_map_test.rb +2 -2
  170. data/test/sass/util_test.rb +46 -45
  171. data/test/sass/value_helpers_test.rb +5 -7
  172. data/test/sass-spec.yml +3 -0
  173. data/test/test_helper.rb +7 -6
  174. data/vendor/listen/CHANGELOG.md +1 -228
  175. data/vendor/listen/Gemfile +5 -15
  176. data/vendor/listen/README.md +111 -77
  177. data/vendor/listen/Rakefile +0 -42
  178. data/vendor/listen/lib/listen/adapter.rb +195 -82
  179. data/vendor/listen/lib/listen/adapters/bsd.rb +27 -64
  180. data/vendor/listen/lib/listen/adapters/darwin.rb +21 -58
  181. data/vendor/listen/lib/listen/adapters/linux.rb +23 -55
  182. data/vendor/listen/lib/listen/adapters/polling.rb +25 -34
  183. data/vendor/listen/lib/listen/adapters/windows.rb +50 -46
  184. data/vendor/listen/lib/listen/directory_record.rb +96 -61
  185. data/vendor/listen/lib/listen/listener.rb +135 -37
  186. data/vendor/listen/lib/listen/turnstile.rb +9 -5
  187. data/vendor/listen/lib/listen/version.rb +1 -1
  188. data/vendor/listen/lib/listen.rb +33 -19
  189. data/vendor/listen/listen.gemspec +6 -0
  190. data/vendor/listen/spec/listen/adapter_spec.rb +43 -77
  191. data/vendor/listen/spec/listen/adapters/polling_spec.rb +8 -8
  192. data/vendor/listen/spec/listen/directory_record_spec.rb +81 -56
  193. data/vendor/listen/spec/listen/listener_spec.rb +128 -39
  194. data/vendor/listen/spec/listen_spec.rb +15 -21
  195. data/vendor/listen/spec/spec_helper.rb +4 -0
  196. data/vendor/listen/spec/support/adapter_helper.rb +52 -15
  197. data/vendor/listen/spec/support/directory_record_helper.rb +7 -5
  198. data/vendor/listen/spec/support/listeners_helper.rb +30 -7
  199. metadata +310 -300
  200. data/CONTRIBUTING +0 -3
  201. data/ext/mkrf_conf.rb +0 -27
  202. data/lib/sass/script/value/deprecated_false.rb +0 -55
  203. data/lib/sass/scss/script_lexer.rb +0 -15
  204. data/lib/sass/scss/script_parser.rb +0 -25
  205. data/vendor/listen/lib/listen/dependency_manager.rb +0 -126
  206. data/vendor/listen/lib/listen/multi_listener.rb +0 -143
  207. data/vendor/listen/spec/listen/dependency_manager_spec.rb +0 -107
  208. data/vendor/listen/spec/listen/multi_listener_spec.rb +0 -174
@@ -3,7 +3,7 @@
3
3
  require File.dirname(__FILE__) + '/../test_helper'
4
4
  require 'sass/engine'
5
5
 
6
- class SassScriptConversionTest < Test::Unit::TestCase
6
+ class SassScriptConversionTest < MiniTest::Test
7
7
  def test_bool
8
8
  assert_renders "true"
9
9
  assert_renders "false"
@@ -13,9 +13,8 @@ class SassScriptConversionTest < Test::Unit::TestCase
13
13
  assert_renders "#abcdef"
14
14
  assert_renders "blue"
15
15
  assert_renders "rgba(0, 1, 2, 0.2)"
16
-
17
- assert_equal "#aabbcc", render("#abc")
18
- assert_equal "blue", render("#0000ff")
16
+ assert_renders "#abc"
17
+ assert_renders "#0000ff"
19
18
  end
20
19
 
21
20
  def test_number
@@ -77,6 +76,26 @@ class SassScriptConversionTest < Test::Unit::TestCase
77
76
  assert_renders "null"
78
77
  end
79
78
 
79
+ def test_space_list
80
+ assert_renders "foo bar baz"
81
+ assert_renders "foo (bar baz) bip"
82
+ assert_renders "foo (bar, baz) bip"
83
+ end
84
+
85
+ def test_comma_list
86
+ assert_renders "foo, bar, baz"
87
+ assert_renders "foo, (bar, baz), bip"
88
+ assert_renders "foo, bar baz, bip"
89
+ end
90
+
91
+ def test_space_list_adds_parens_for_clarity
92
+ assert_renders "(1 + 1) (2 / 4) (3 * 5)"
93
+ end
94
+
95
+ def test_comma_list_doesnt_add_parens
96
+ assert_renders "1 + 1, 2 / 4, 3 * 5"
97
+ end
98
+
80
99
  def test_empty_list
81
100
  assert_renders "()"
82
101
  end
@@ -109,11 +128,15 @@ class SassScriptConversionTest < Test::Unit::TestCase
109
128
  assert_renders "(foo: (bar, baz), bip: bop)"
110
129
  end
111
130
 
131
+ def test_selector
132
+ assert_renders "&"
133
+ end
134
+
112
135
  def self.test_precedence(outer, inner)
113
136
  op_outer = Sass::Script::Lexer::OPERATORS_REVERSE[outer]
114
137
  op_inner = Sass::Script::Lexer::OPERATORS_REVERSE[inner]
115
138
  class_eval <<RUBY
116
- def test_precedence_#{outer}_#{inner}
139
+ def test_precedence_#{outer}_#{inner}
117
140
  assert_renders "$foo #{op_outer} $bar #{op_inner} $baz"
118
141
  assert_renders "$foo #{op_inner} $bar #{op_outer} $baz"
119
142
 
@@ -132,7 +155,7 @@ RUBY
132
155
  op = separator_for(op_name)
133
156
  sibling = separator_for(sibling_name)
134
157
  class_eval <<RUBY
135
- def test_associative_#{op_name}_#{sibling_name}
158
+ def test_associative_#{op_name}_#{sibling_name}
136
159
  assert_renders "$foo#{op}$bar#{op}$baz"
137
160
 
138
161
  assert_equal "$foo#{op}$bar#{op}$baz",
@@ -160,7 +183,7 @@ RUBY
160
183
  op = Sass::Script::Lexer::OPERATORS_REVERSE[op_name]
161
184
  sibling = Sass::Script::Lexer::OPERATORS_REVERSE[sibling_name]
162
185
  class_eval <<RUBY
163
- def test_non_associative_#{op_name}_#{sibling_name}
186
+ def test_non_associative_#{op_name}_#{sibling_name}
164
187
  assert_renders "$foo #{op} $bar #{op} $baz"
165
188
 
166
189
  assert_renders "$foo #{op} ($bar #{op} $baz)"
@@ -218,8 +241,8 @@ RUBY
218
241
  assert_renders "$foo or ($bar $baz)"
219
242
  assert_renders "($foo $bar) or $baz"
220
243
 
221
- assert_equal "$foo $bar or $baz", render("$foo ($bar or $baz)")
222
- assert_equal "$foo or $bar $baz", render("($foo or $bar) $baz")
244
+ assert_renders "$foo ($bar or $baz)"
245
+ assert_renders "($foo or $bar) $baz"
223
246
 
224
247
  assert_equal "$foo ($bar $baz)", render("$foo ($bar $baz)")
225
248
  assert_equal "($foo $bar) $baz", render("($foo $bar) $baz")
@@ -241,23 +264,29 @@ RUBY
241
264
  end
242
265
 
243
266
  def test_interpolation
244
- assert_renders "$foo\#{$bar}$baz"
245
- assert_renders "$foo\#{$bar} $baz"
246
- assert_renders "$foo \#{$bar}$baz"
267
+ assert_equal 'unquote("#{$foo}#{$bar}#{$baz}")', render("$foo\#{$bar}$baz")
268
+ assert_equal 'unquote("#{$foo}#{$bar} #{$baz}")', render("$foo\#{$bar} $baz")
269
+ assert_equal 'unquote("#{$foo} #{$bar}#{$baz}")', render("$foo \#{$bar}$baz")
247
270
  assert_renders "$foo \#{$bar} $baz"
248
271
  assert_renders "$foo \#{$bar}\#{$bang} $baz"
249
272
  assert_renders "$foo \#{$bar} \#{$bang} $baz"
250
- assert_renders "\#{$bar}$baz"
251
- assert_renders "$foo\#{$bar}"
273
+ assert_equal 'unquote("#{$bar}#{$baz}")', render("\#{$bar}$baz")
274
+ assert_equal 'unquote("#{$foo}#{$bar}")', render("$foo\#{$bar}")
252
275
  assert_renders "\#{$bar}"
253
276
  end
254
277
 
255
278
  def test_interpolation_in_function
256
279
  assert_renders 'flabnabbit(#{1 + "foo"})'
257
- assert_renders 'flabnabbit($foo #{1 + "foo"}$baz)'
280
+ assert_equal 'flabnabbit(unquote("#{$foo} #{1 + "foo"}#{$baz}"))',
281
+ render('flabnabbit($foo #{1 + "foo"}$baz)')
258
282
  assert_renders 'flabnabbit($foo #{1 + "foo"}#{2 + "bar"} $baz)'
259
283
  end
260
284
 
285
+ def test_interpolation_in_string_function
286
+ assert_renders 'calc(#{1 + "foo"})'
287
+ assert_renders 'calc(foo#{1 + "foo"}baz)'
288
+ end
289
+
261
290
  def test_interpolation_near_operators
262
291
  assert_renders '#{1 + 2} , #{3 + 4}'
263
292
  assert_renders '#{1 + 2}, #{3 + 4}'
@@ -271,30 +300,30 @@ RUBY
271
300
  assert_renders '3/ #{3 + 4}'
272
301
  assert_renders '3/#{3 + 4}'
273
302
 
274
- assert_renders '#{1 + 2} * 7'
275
- assert_renders '#{1 + 2}* 7'
276
- assert_renders '#{1 + 2} *7'
277
- assert_renders '#{1 + 2}*7'
303
+ assert_equal 'unquote("#{1 + 2} * 7")', render('#{1 + 2} * 7')
304
+ assert_equal 'unquote("#{1 + 2}* 7")', render('#{1 + 2}* 7')
305
+ assert_equal 'unquote("#{1 + 2} *7")', render('#{1 + 2} *7')
306
+ assert_equal 'unquote("#{1 + 2}*7")', render('#{1 + 2}*7')
278
307
 
279
308
  assert_renders '-#{1 + 2}'
280
- assert_renders '- #{1 + 2}'
281
-
282
- assert_renders '5 + #{1 + 2} * #{3 + 4}'
283
- assert_renders '5 +#{1 + 2} * #{3 + 4}'
284
- assert_renders '5+#{1 + 2} * #{3 + 4}'
285
- assert_renders '#{1 + 2} * #{3 + 4} + 5'
286
- assert_renders '#{1 + 2} * #{3 + 4}+ 5'
287
- assert_renders '#{1 + 2} * #{3 + 4}+5'
288
-
289
- assert_equal '5 / #{1 + 2} + #{3 + 4}', render('5 / (#{1 + 2} + #{3 + 4})')
290
- assert_equal '5 / #{1 + 2} + #{3 + 4}', render('5 /(#{1 + 2} + #{3 + 4})')
291
- assert_equal '5 / #{1 + 2} + #{3 + 4}', render('5 /( #{1 + 2} + #{3 + 4} )')
292
- assert_equal '#{1 + 2} + #{3 + 4} / 5', render('(#{1 + 2} + #{3 + 4}) / 5')
293
- assert_equal '#{1 + 2} + #{3 + 4} / 5', render('(#{1 + 2} + #{3 + 4})/ 5')
294
- assert_equal '#{1 + 2} + #{3 + 4} / 5', render('( #{1 + 2} + #{3 + 4} )/ 5')
295
-
296
- assert_renders '#{1 + 2} + 2 + 3'
297
- assert_renders '#{1 + 2} +2 + 3'
309
+ assert_equal 'unquote("- #{1 + 2}")', render('- #{1 + 2}')
310
+
311
+ assert_equal 'unquote("5 + #{1 + 2} * #{3 + 4}")', render('5 + #{1 + 2} * #{3 + 4}')
312
+ assert_equal 'unquote("5 +#{1 + 2} * #{3 + 4}")', render('5 +#{1 + 2} * #{3 + 4}')
313
+ assert_equal 'unquote("5+#{1 + 2} * #{3 + 4}")', render('5+#{1 + 2} * #{3 + 4}')
314
+ assert_equal 'unquote("#{1 + 2} * #{3 + 4} + 5")', render('#{1 + 2} * #{3 + 4} + 5')
315
+ assert_equal 'unquote("#{1 + 2} * #{3 + 4}+ 5")', render('#{1 + 2} * #{3 + 4}+ 5')
316
+ assert_equal 'unquote("#{1 + 2} * #{3 + 4}+5")', render('#{1 + 2} * #{3 + 4}+5')
317
+
318
+ assert_equal '5 / unquote("#{1 + 2} + #{3 + 4}")', render('5 / (#{1 + 2} + #{3 + 4})')
319
+ assert_equal '5 / unquote("#{1 + 2} + #{3 + 4}")', render('5 /(#{1 + 2} + #{3 + 4})')
320
+ assert_equal '5 / unquote("#{1 + 2} + #{3 + 4}")', render('5 /( #{1 + 2} + #{3 + 4} )')
321
+ assert_equal 'unquote("#{1 + 2} + #{3 + 4}") / 5', render('(#{1 + 2} + #{3 + 4}) / 5')
322
+ assert_equal 'unquote("#{1 + 2} + #{3 + 4}") / 5', render('(#{1 + 2} + #{3 + 4})/ 5')
323
+ assert_equal 'unquote("#{1 + 2} + #{3 + 4}") / 5', render('( #{1 + 2} + #{3 + 4} )/ 5')
324
+
325
+ assert_equal 'unquote("#{1 + 2} + #{2 + 3}")', render('#{1 + 2} + 2 + 3')
326
+ assert_equal 'unquote("#{1 + 2} +#{2 + 3}")', render('#{1 + 2} +2 + 3')
298
327
  end
299
328
 
300
329
  def test_string_interpolation
@@ -306,7 +335,10 @@ RUBY
306
335
  assert_renders '"foo #{$bar} #{$bang} baz"'
307
336
  assert_renders '"#{$bar}baz"'
308
337
  assert_renders '"foo#{$bar}"'
309
- assert_equal '#{$bar}', render('"#{$bar}"')
338
+ assert_renders '"#{$bar}"'
339
+
340
+ assert_renders "'\"\#{\"bar\"}\"'"
341
+ assert_renders '"\#{bar}"'
310
342
 
311
343
  assert_equal '"foo#{$bar}baz"', render("'foo\#{$bar}baz'")
312
344
  end
@@ -319,7 +351,7 @@ RUBY
319
351
 
320
352
  def render(script, options = {})
321
353
  munge_filename(options)
322
- node = Sass::Script.parse(script, 1, 0, options)
354
+ node = Sass::Script.parse(script, 1, 0, options.merge(:_convert => true))
323
355
  node.to_sass
324
356
  end
325
357
  end