compass-sourcemaps 0.12.3.sourcemaps.a4836f1 → 0.12.4.sourcemaps.a4836f1

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 (495) hide show
  1. checksums.yaml +4 -4
  2. data/LICENSE.markdown +29 -29
  3. data/README.markdown +39 -39
  4. data/Rakefile +157 -157
  5. data/VERSION.yml +5 -5
  6. data/bin/compass +45 -45
  7. data/examples/README.markdown +3 -3
  8. data/examples/blueprint_default/config.rb +7 -7
  9. data/examples/blueprint_default/index.html.haml +85 -85
  10. data/examples/blueprint_default/parts/elements.html.haml +282 -282
  11. data/examples/blueprint_default/parts/forms.html.haml +200 -200
  12. data/examples/blueprint_default/parts/grid.html.haml +274 -274
  13. data/examples/blueprint_default/src/ie.scss +3 -3
  14. data/examples/blueprint_default/src/print.scss +3 -3
  15. data/examples/blueprint_default/src/screen.scss +9 -9
  16. data/examples/blueprint_plugins/config.rb +8 -8
  17. data/examples/blueprint_plugins/index.html.haml +96 -96
  18. data/examples/blueprint_plugins/plugins/buttons.html.haml +67 -67
  19. data/examples/blueprint_plugins/plugins/fancy_type.html.haml +100 -100
  20. data/examples/blueprint_plugins/plugins/link_icons.html.haml +61 -61
  21. data/examples/blueprint_plugins/plugins/rtl.html.haml +100 -100
  22. data/examples/blueprint_plugins/src/buttons.scss +47 -47
  23. data/examples/blueprint_plugins/src/ie.scss +3 -3
  24. data/examples/blueprint_plugins/src/link_icons.scss +13 -13
  25. data/examples/blueprint_plugins/src/print.scss +3 -3
  26. data/examples/blueprint_plugins/src/rtl_screen.scss +15 -15
  27. data/examples/blueprint_plugins/src/screen.scss +12 -12
  28. data/examples/blueprint_scoped/src/ie.scss +4 -4
  29. data/examples/blueprint_scoped/src/print.scss +4 -4
  30. data/examples/blueprint_scoped/src/screen.scss +5 -5
  31. data/examples/blueprint_scoped_form/src/ie.scss +3 -3
  32. data/examples/blueprint_scoped_form/src/print.scss +3 -3
  33. data/examples/blueprint_scoped_form/src/screen.scss +15 -15
  34. data/examples/blueprint_semantic/config.rb +7 -7
  35. data/examples/blueprint_semantic/index.html.haml +86 -86
  36. data/examples/blueprint_semantic/parts/fancy_type.html.haml +100 -100
  37. data/examples/blueprint_semantic/parts/liquid.html.haml +100 -100
  38. data/examples/blueprint_semantic/src/ie.scss +3 -3
  39. data/examples/blueprint_semantic/src/liquid.scss +69 -69
  40. data/examples/blueprint_semantic/src/print.scss +3 -3
  41. data/examples/blueprint_semantic/src/screen.scss +69 -69
  42. data/examples/compass/bootstrap.rb +3 -3
  43. data/examples/compass/clean.rb +1 -1
  44. data/examples/compass/compass.html.haml +39 -39
  45. data/examples/compass/config.rb +8 -8
  46. data/examples/compass/pie.html.haml +73 -73
  47. data/examples/compass/sprites.html.haml +37 -37
  48. data/examples/compass/src/bp_layout.scss +18 -18
  49. data/examples/compass/src/compass.scss +46 -46
  50. data/examples/compass/src/pie.scss +110 -110
  51. data/examples/compass/src/sprites.scss +24 -24
  52. data/examples/compass/src/sticky_footer.scss +11 -11
  53. data/examples/compass/src/utilities.scss +108 -108
  54. data/examples/compass/sticky_footer.html.haml +13 -13
  55. data/examples/compass/utilities.html.haml +189 -189
  56. data/examples/css3/bootstrap.rb +3 -3
  57. data/examples/css3/clean.rb +2 -2
  58. data/examples/css3/config.rb +6 -6
  59. data/examples/css3/extensions/fancy-fonts/templates/project/fancy-fonts.sass +10 -10
  60. data/examples/css3/extensions/fancy-fonts/templates/project/manifest.rb +6 -6
  61. data/examples/css3/gradients.html.haml +68 -68
  62. data/examples/css3/index.html.haml +57 -57
  63. data/examples/css3/src/_base.scss +13 -13
  64. data/examples/css3/src/fancy-fonts.scss +13 -13
  65. data/examples/css3/src/gradients.scss +85 -85
  66. data/examples/css3/src/main.scss +108 -108
  67. data/examples/downloader.rb +58 -58
  68. data/examples/ninesixty/bootstrap.rb +4 -4
  69. data/examples/ninesixty/clean.rb +1 -1
  70. data/examples/ninesixty/config.rb +9 -9
  71. data/examples/ninesixty/src/grid.scss +15 -15
  72. data/examples/ninesixty/src/text.scss +8 -8
  73. data/examples/susy/bootstrap.rb +3 -3
  74. data/examples/susy/clean.rb +1 -1
  75. data/examples/susy/config.rb +9 -9
  76. data/examples/susy/src/_base.scss +61 -61
  77. data/examples/susy/src/_defaults.scss +140 -140
  78. data/examples/susy/src/screen.scss +100 -100
  79. data/examples/yui/bootstrap.rb +2 -2
  80. data/examples/yui/clean.rb +1 -1
  81. data/examples/yui/divisions.html.haml +179 -179
  82. data/examples/yui/index.html.haml +19 -19
  83. data/examples/yui/src/screen.scss +13 -13
  84. data/examples/yui/sub_divisions.html.haml +169 -169
  85. data/examples/yui/templates.html.haml +54 -54
  86. data/examples/yui/typography.html.haml +132 -132
  87. data/features/command_line.feature +292 -292
  88. data/features/extensions.feature +27 -27
  89. data/features/step_definitions/command_line_steps.rb +268 -268
  90. data/features/step_definitions/extension_steps.rb +24 -24
  91. data/frameworks/blueprint/stylesheets/_blueprint.scss +37 -37
  92. data/frameworks/blueprint/stylesheets/blueprint/_buttons.scss +100 -100
  93. data/frameworks/blueprint/stylesheets/blueprint/_colors.scss +36 -36
  94. data/frameworks/blueprint/stylesheets/blueprint/_debug.scss +28 -28
  95. data/frameworks/blueprint/stylesheets/blueprint/_fancy-type.scss +88 -88
  96. data/frameworks/blueprint/stylesheets/blueprint/_form.scss +66 -66
  97. data/frameworks/blueprint/stylesheets/blueprint/_grid.scss +258 -258
  98. data/frameworks/blueprint/stylesheets/blueprint/_ie.scss +111 -111
  99. data/frameworks/blueprint/stylesheets/blueprint/_interaction.scss +66 -66
  100. data/frameworks/blueprint/stylesheets/blueprint/_link-icons.scss +37 -37
  101. data/frameworks/blueprint/stylesheets/blueprint/_liquid.scss +152 -152
  102. data/frameworks/blueprint/stylesheets/blueprint/_print.scss +86 -86
  103. data/frameworks/blueprint/stylesheets/blueprint/_reset.scss +2 -2
  104. data/frameworks/blueprint/stylesheets/blueprint/_rtl.scss +121 -121
  105. data/frameworks/blueprint/stylesheets/blueprint/_scaffolding.scss +52 -52
  106. data/frameworks/blueprint/stylesheets/blueprint/_typography.scss +90 -90
  107. data/frameworks/blueprint/stylesheets/blueprint/_utilities.scss +37 -37
  108. data/frameworks/blueprint/stylesheets/blueprint/reset/_utilities.scss +83 -83
  109. data/frameworks/blueprint/templates/basic/ie.sass +4 -4
  110. data/frameworks/blueprint/templates/basic/manifest.rb +30 -30
  111. data/frameworks/blueprint/templates/basic/partials/_base.sass +10 -10
  112. data/frameworks/blueprint/templates/basic/print.sass +4 -4
  113. data/frameworks/blueprint/templates/basic/screen.sass +12 -12
  114. data/frameworks/blueprint/templates/buttons/buttons.sass +49 -49
  115. data/frameworks/blueprint/templates/buttons/buttons/cross.png +0 -0
  116. data/frameworks/blueprint/templates/buttons/buttons/key.png +0 -0
  117. data/frameworks/blueprint/templates/buttons/buttons/tick.png +0 -0
  118. data/frameworks/blueprint/templates/buttons/manifest.rb +17 -17
  119. data/frameworks/blueprint/templates/link_icons/link_icons.sass +13 -13
  120. data/frameworks/blueprint/templates/link_icons/manifest.rb +23 -23
  121. data/frameworks/blueprint/templates/project/ie.sass +16 -16
  122. data/frameworks/blueprint/templates/project/manifest.rb +30 -30
  123. data/frameworks/blueprint/templates/project/partials/_base.sass +11 -11
  124. data/frameworks/blueprint/templates/project/print.sass +7 -7
  125. data/frameworks/blueprint/templates/project/screen.sass +46 -46
  126. data/frameworks/blueprint/templates/semantic/ie.sass +16 -16
  127. data/frameworks/blueprint/templates/semantic/manifest.rb +33 -33
  128. data/frameworks/blueprint/templates/semantic/partials/_base.sass +10 -10
  129. data/frameworks/blueprint/templates/semantic/partials/_form.sass +5 -5
  130. data/frameworks/blueprint/templates/semantic/partials/_page.sass +17 -17
  131. data/frameworks/blueprint/templates/semantic/partials/_two_col.sass +38 -38
  132. data/frameworks/blueprint/templates/semantic/print.sass +4 -4
  133. data/frameworks/blueprint/templates/semantic/screen.sass +14 -14
  134. data/frameworks/compass/stylesheets/_compass.scss +3 -3
  135. data/frameworks/compass/stylesheets/_lemonade.scss +37 -37
  136. data/frameworks/compass/stylesheets/compass/_css3.scss +20 -20
  137. data/frameworks/compass/stylesheets/compass/_layout.scss +3 -3
  138. data/frameworks/compass/stylesheets/compass/_reset-legacy.scss +3 -3
  139. data/frameworks/compass/stylesheets/compass/_reset.scss +3 -3
  140. data/frameworks/compass/stylesheets/compass/_support.scss +40 -40
  141. data/frameworks/compass/stylesheets/compass/_typography.scss +4 -4
  142. data/frameworks/compass/stylesheets/compass/_utilities.scss +9 -9
  143. data/frameworks/compass/stylesheets/compass/css3/_appearance.scss +17 -17
  144. data/frameworks/compass/stylesheets/compass/css3/_background-clip.scss +43 -43
  145. data/frameworks/compass/stylesheets/compass/css3/_background-origin.scss +42 -42
  146. data/frameworks/compass/stylesheets/compass/css3/_background-size.scss +26 -26
  147. data/frameworks/compass/stylesheets/compass/css3/_border-radius.scss +130 -130
  148. data/frameworks/compass/stylesheets/compass/css3/_box-shadow.scss +76 -76
  149. data/frameworks/compass/stylesheets/compass/css3/_box-sizing.scss +13 -13
  150. data/frameworks/compass/stylesheets/compass/css3/_box.scss +111 -111
  151. data/frameworks/compass/stylesheets/compass/css3/_columns.scss +156 -156
  152. data/frameworks/compass/stylesheets/compass/css3/_filter.scss +23 -23
  153. data/frameworks/compass/stylesheets/compass/css3/_font-face.scss +48 -48
  154. data/frameworks/compass/stylesheets/compass/css3/_hyphenation.scss +77 -77
  155. data/frameworks/compass/stylesheets/compass/css3/_images.scss +132 -132
  156. data/frameworks/compass/stylesheets/compass/css3/_inline-block.scss +22 -22
  157. data/frameworks/compass/stylesheets/compass/css3/_opacity.scss +19 -19
  158. data/frameworks/compass/stylesheets/compass/css3/_pie.scss +72 -72
  159. data/frameworks/compass/stylesheets/compass/css3/_regions.scss +21 -21
  160. data/frameworks/compass/stylesheets/compass/css3/_shared.scss +38 -38
  161. data/frameworks/compass/stylesheets/compass/css3/_text-shadow.scss +87 -87
  162. data/frameworks/compass/stylesheets/compass/css3/_transform-legacy.scss +87 -87
  163. data/frameworks/compass/stylesheets/compass/css3/_transform.scss +598 -598
  164. data/frameworks/compass/stylesheets/compass/css3/_transition.scss +221 -221
  165. data/frameworks/compass/stylesheets/compass/css3/_user-interface.scss +17 -17
  166. data/frameworks/compass/stylesheets/compass/layout/_grid-background.scss +178 -178
  167. data/frameworks/compass/stylesheets/compass/layout/_sticky-footer.scss +23 -23
  168. data/frameworks/compass/stylesheets/compass/layout/_stretching.scss +23 -23
  169. data/frameworks/compass/stylesheets/compass/reset/_utilities-legacy.scss +135 -135
  170. data/frameworks/compass/stylesheets/compass/reset/_utilities.scss +142 -142
  171. data/frameworks/compass/stylesheets/compass/typography/_links.scss +3 -3
  172. data/frameworks/compass/stylesheets/compass/typography/_lists.scss +4 -4
  173. data/frameworks/compass/stylesheets/compass/typography/_text.scss +4 -4
  174. data/frameworks/compass/stylesheets/compass/typography/_vertical_rhythm.scss +221 -221
  175. data/frameworks/compass/stylesheets/compass/typography/links/_hover-link.scss +5 -5
  176. data/frameworks/compass/stylesheets/compass/typography/links/_link-colors.scss +28 -28
  177. data/frameworks/compass/stylesheets/compass/typography/links/_unstyled-link.scss +7 -7
  178. data/frameworks/compass/stylesheets/compass/typography/lists/_bullets.scss +34 -34
  179. data/frameworks/compass/stylesheets/compass/typography/lists/_horizontal-list.scss +61 -61
  180. data/frameworks/compass/stylesheets/compass/typography/lists/_inline-block-list.scss +50 -50
  181. data/frameworks/compass/stylesheets/compass/typography/lists/_inline-list.scss +44 -44
  182. data/frameworks/compass/stylesheets/compass/typography/text/_ellipsis.scss +25 -25
  183. data/frameworks/compass/stylesheets/compass/typography/text/_force-wrap.scss +12 -12
  184. data/frameworks/compass/stylesheets/compass/typography/text/_nowrap.scss +2 -2
  185. data/frameworks/compass/stylesheets/compass/typography/text/_replacement.scss +68 -68
  186. data/frameworks/compass/stylesheets/compass/utilities/_general.scss +6 -6
  187. data/frameworks/compass/stylesheets/compass/utilities/_links.scss +5 -5
  188. data/frameworks/compass/stylesheets/compass/utilities/_lists.scss +6 -6
  189. data/frameworks/compass/stylesheets/compass/utilities/_print.scss +17 -17
  190. data/frameworks/compass/stylesheets/compass/utilities/_sprites.scss +2 -2
  191. data/frameworks/compass/stylesheets/compass/utilities/_tables.scss +3 -3
  192. data/frameworks/compass/stylesheets/compass/utilities/_text.scss +5 -5
  193. data/frameworks/compass/stylesheets/compass/utilities/color/_contrast.scss +27 -27
  194. data/frameworks/compass/stylesheets/compass/utilities/general/_clearfix.scss +44 -44
  195. data/frameworks/compass/stylesheets/compass/utilities/general/_float.scss +29 -29
  196. data/frameworks/compass/stylesheets/compass/utilities/general/_hacks.scss +46 -46
  197. data/frameworks/compass/stylesheets/compass/utilities/general/_min.scss +16 -16
  198. data/frameworks/compass/stylesheets/compass/utilities/general/_reset.scss +1 -1
  199. data/frameworks/compass/stylesheets/compass/utilities/general/_tabs.scss +1 -1
  200. data/frameworks/compass/stylesheets/compass/utilities/general/_tag-cloud.scss +18 -18
  201. data/frameworks/compass/stylesheets/compass/utilities/links/_hover-link.scss +3 -3
  202. data/frameworks/compass/stylesheets/compass/utilities/links/_link-colors.scss +3 -3
  203. data/frameworks/compass/stylesheets/compass/utilities/links/_unstyled-link.scss +3 -3
  204. data/frameworks/compass/stylesheets/compass/utilities/lists/_bullets.scss +3 -3
  205. data/frameworks/compass/stylesheets/compass/utilities/lists/_horizontal-list.scss +3 -3
  206. data/frameworks/compass/stylesheets/compass/utilities/lists/_inline-block-list.scss +3 -3
  207. data/frameworks/compass/stylesheets/compass/utilities/lists/_inline-list.scss +3 -3
  208. data/frameworks/compass/stylesheets/compass/utilities/sprites/_base.scss +65 -65
  209. data/frameworks/compass/stylesheets/compass/utilities/sprites/_sprite-img.scss +78 -78
  210. data/frameworks/compass/stylesheets/compass/utilities/tables/_alternating-rows-and-columns.scss +22 -22
  211. data/frameworks/compass/stylesheets/compass/utilities/tables/_borders.scss +33 -33
  212. data/frameworks/compass/stylesheets/compass/utilities/tables/_scaffolding.scss +9 -9
  213. data/frameworks/compass/stylesheets/compass/utilities/text/_ellipsis.scss +3 -3
  214. data/frameworks/compass/stylesheets/compass/utilities/text/_nowrap.scss +3 -3
  215. data/frameworks/compass/stylesheets/compass/utilities/text/_replacement.scss +3 -3
  216. data/frameworks/compass/templates/ellipsis/ellipsis.sass +8 -8
  217. data/frameworks/compass/templates/ellipsis/manifest.rb +26 -26
  218. data/frameworks/compass/templates/ellipsis/xml/ellipsis.xml +13 -13
  219. data/frameworks/compass/templates/extension/manifest.rb +26 -26
  220. data/frameworks/compass/templates/extension/stylesheets/main.sass +1 -1
  221. data/frameworks/compass/templates/extension/templates/project/manifest.rb +2 -2
  222. data/frameworks/compass/templates/extension/templates/project/screen.sass +1 -1
  223. data/frameworks/compass/templates/pie/LICENSE +12 -12
  224. data/frameworks/compass/templates/pie/LICENSE-APACHE2.txt +13 -13
  225. data/frameworks/compass/templates/pie/LICENSE-GPL2.txt +277 -277
  226. data/frameworks/compass/templates/pie/PIE.htc +96 -96
  227. data/frameworks/compass/templates/pie/manifest.rb +39 -39
  228. data/frameworks/compass/templates/pie/pie.scss +73 -73
  229. data/frameworks/compass/templates/project/USAGE.markdown +32 -32
  230. data/frameworks/compass/templates/project/ie.sass +6 -6
  231. data/frameworks/compass/templates/project/manifest.rb +3 -3
  232. data/frameworks/compass/templates/project/print.sass +6 -6
  233. data/frameworks/compass/templates/project/screen.sass +7 -7
  234. data/lib/compass.rb +37 -37
  235. data/lib/compass/actions.rb +115 -115
  236. data/lib/compass/app_integration.rb +39 -39
  237. data/lib/compass/app_integration/rails.rb +18 -18
  238. data/lib/compass/app_integration/stand_alone.rb +22 -22
  239. data/lib/compass/app_integration/stand_alone/configuration_defaults.rb +32 -32
  240. data/lib/compass/app_integration/stand_alone/installer.rb +83 -83
  241. data/lib/compass/browser_support.rb +62 -62
  242. data/lib/compass/commands.rb +12 -12
  243. data/lib/compass/commands/base.rb +44 -44
  244. data/lib/compass/commands/clean_project.rb +79 -79
  245. data/lib/compass/commands/create_project.rb +131 -131
  246. data/lib/compass/commands/default.rb +50 -50
  247. data/lib/compass/commands/extension_command.rb +60 -60
  248. data/lib/compass/commands/generate_grid_background.rb +96 -96
  249. data/lib/compass/commands/help.rb +85 -85
  250. data/lib/compass/commands/imports.rb +35 -35
  251. data/lib/compass/commands/installer_command.rb +32 -32
  252. data/lib/compass/commands/interactive.rb +61 -61
  253. data/lib/compass/commands/list_frameworks.rb +38 -38
  254. data/lib/compass/commands/print_version.rb +99 -99
  255. data/lib/compass/commands/project_base.rb +103 -103
  256. data/lib/compass/commands/project_stats.rb +178 -178
  257. data/lib/compass/commands/project_structure.rb +93 -93
  258. data/lib/compass/commands/registry.rb +40 -40
  259. data/lib/compass/commands/sprite.rb +89 -89
  260. data/lib/compass/commands/stamp_pattern.rb +90 -90
  261. data/lib/compass/commands/unpack_extension.rb +120 -120
  262. data/lib/compass/commands/update_project.rb +139 -139
  263. data/lib/compass/commands/validate_project.rb +77 -77
  264. data/lib/compass/commands/watch_project.rb +170 -170
  265. data/lib/compass/commands/write_configuration.rb +125 -125
  266. data/lib/compass/compiler.rb +200 -200
  267. data/lib/compass/configuration.rb +91 -91
  268. data/lib/compass/configuration/adapters.rb +77 -77
  269. data/lib/compass/configuration/comments.rb +59 -59
  270. data/lib/compass/configuration/data.rb +193 -193
  271. data/lib/compass/configuration/defaults.rb +187 -187
  272. data/lib/compass/configuration/file_data.rb +21 -21
  273. data/lib/compass/configuration/helpers.rb +160 -160
  274. data/lib/compass/configuration/inheritance.rb +304 -304
  275. data/lib/compass/configuration/paths.rb +19 -19
  276. data/lib/compass/configuration/serialization.rb +88 -88
  277. data/lib/compass/dependencies.rb +12 -12
  278. data/lib/compass/errors.rb +11 -11
  279. data/lib/compass/exec.rb +23 -23
  280. data/lib/compass/exec/command_option_parser.rb +23 -23
  281. data/lib/compass/exec/global_options_parser.rb +63 -63
  282. data/lib/compass/exec/helpers.rb +21 -21
  283. data/lib/compass/exec/project_options_parser.rb +66 -66
  284. data/lib/compass/exec/sub_command_ui.rb +51 -51
  285. data/lib/compass/exec/switch_ui.rb +179 -179
  286. data/lib/compass/frameworks.rb +133 -133
  287. data/lib/compass/grid_builder.rb +102 -102
  288. data/lib/compass/installers.rb +3 -3
  289. data/lib/compass/installers/bare_installer.rb +58 -58
  290. data/lib/compass/installers/base.rb +187 -187
  291. data/lib/compass/installers/manifest.rb +161 -161
  292. data/lib/compass/installers/manifest_installer.rb +61 -61
  293. data/lib/compass/installers/template_context.rb +43 -43
  294. data/lib/compass/logger.rb +103 -103
  295. data/lib/compass/quick_cache.rb +15 -15
  296. data/lib/compass/rails.rb +2 -2
  297. data/lib/compass/sass_extensions.rb +10 -10
  298. data/lib/compass/sass_extensions/functions.rb +34 -34
  299. data/lib/compass/sass_extensions/functions/colors.rb +67 -67
  300. data/lib/compass/sass_extensions/functions/constants.rb +74 -74
  301. data/lib/compass/sass_extensions/functions/cross_browser_support.rb +70 -70
  302. data/lib/compass/sass_extensions/functions/display.rb +27 -27
  303. data/lib/compass/sass_extensions/functions/enumerate.rb +6 -6
  304. data/lib/compass/sass_extensions/functions/env.rb +5 -5
  305. data/lib/compass/sass_extensions/functions/font_files.rb +41 -41
  306. data/lib/compass/sass_extensions/functions/gradient_support.rb +540 -540
  307. data/lib/compass/sass_extensions/functions/image_size.rb +113 -113
  308. data/lib/compass/sass_extensions/functions/inline_image.rb +64 -64
  309. data/lib/compass/sass_extensions/functions/lists.rb +101 -101
  310. data/lib/compass/sass_extensions/functions/math.rb +63 -63
  311. data/lib/compass/sass_extensions/functions/selectors.rb +63 -63
  312. data/lib/compass/sass_extensions/functions/sprites.rb +218 -218
  313. data/lib/compass/sass_extensions/functions/urls.rb +266 -266
  314. data/lib/compass/sass_extensions/monkey_patches.rb +3 -3
  315. data/lib/compass/sass_extensions/monkey_patches/browser_support.rb +95 -95
  316. data/lib/compass/sass_extensions/monkey_patches/traversal.rb +23 -23
  317. data/lib/compass/sass_extensions/sprites.rb +19 -19
  318. data/lib/compass/sass_extensions/sprites/engines.rb +25 -25
  319. data/lib/compass/sass_extensions/sprites/engines/chunky_png_engine.rb +30 -30
  320. data/lib/compass/sass_extensions/sprites/image.rb +151 -151
  321. data/lib/compass/sass_extensions/sprites/image_methods.rb +31 -31
  322. data/lib/compass/sass_extensions/sprites/image_row.rb +46 -46
  323. data/lib/compass/sass_extensions/sprites/layout_methods.rb +158 -158
  324. data/lib/compass/sass_extensions/sprites/row_fitter.rb +91 -91
  325. data/lib/compass/sass_extensions/sprites/sprite_map.rb +86 -86
  326. data/lib/compass/sass_extensions/sprites/sprite_methods.rb +141 -141
  327. data/lib/compass/sprite_importer.rb +116 -116
  328. data/lib/compass/sprite_importer/binding.rb +10 -10
  329. data/lib/compass/sprite_importer/content.erb +80 -80
  330. data/lib/compass/stats.rb +99 -99
  331. data/lib/compass/test_case.rb +38 -38
  332. data/lib/compass/util.rb +29 -29
  333. data/lib/compass/validator.rb +16 -16
  334. data/lib/compass/version.rb +60 -60
  335. data/test/fixtures/extensions/only_stylesheets/compass_init.rb +1 -1
  336. data/test/fixtures/extensions/only_stylesheets/scss/only_stylesheets/foo.scss +3 -3
  337. data/test/fixtures/fonts/bgrove.base64.txt +1 -1
  338. data/test/fixtures/fonts/bgrove.ttf +0 -0
  339. data/test/fixtures/sprites/public/images/ko/starbg26x27.png +0 -0
  340. data/test/fixtures/stylesheets/blueprint/config.rb +14 -14
  341. data/test/fixtures/stylesheets/blueprint/css/ie.css +76 -76
  342. data/test/fixtures/stylesheets/blueprint/css/print.css +56 -56
  343. data/test/fixtures/stylesheets/blueprint/css/screen.css +815 -815
  344. data/test/fixtures/stylesheets/blueprint/css/single-imports/buttons.css +56 -56
  345. data/test/fixtures/stylesheets/blueprint/css/single-imports/colors.css +80 -80
  346. data/test/fixtures/stylesheets/blueprint/css/single-imports/debug.css +11 -11
  347. data/test/fixtures/stylesheets/blueprint/css/single-imports/fancy-type.css +30 -30
  348. data/test/fixtures/stylesheets/blueprint/css/single-imports/form.css +42 -42
  349. data/test/fixtures/stylesheets/blueprint/css/single-imports/grid.css +435 -435
  350. data/test/fixtures/stylesheets/blueprint/css/single-imports/ie.css +76 -76
  351. data/test/fixtures/stylesheets/blueprint/css/single-imports/interaction.css +46 -46
  352. data/test/fixtures/stylesheets/blueprint/css/single-imports/link-icons.css +40 -40
  353. data/test/fixtures/stylesheets/blueprint/css/single-imports/liquid.css +651 -651
  354. data/test/fixtures/stylesheets/blueprint/css/single-imports/print.css +60 -60
  355. data/test/fixtures/stylesheets/blueprint/css/single-imports/reset-utilities.css +75 -75
  356. data/test/fixtures/stylesheets/blueprint/css/single-imports/reset.css +42 -42
  357. data/test/fixtures/stylesheets/blueprint/css/single-imports/rtl.css +437 -437
  358. data/test/fixtures/stylesheets/blueprint/css/single-imports/scaffolding.css +45 -45
  359. data/test/fixtures/stylesheets/blueprint/css/single-imports/typography.css +146 -146
  360. data/test/fixtures/stylesheets/blueprint/css/single-imports/utilities.css +35 -35
  361. data/test/fixtures/stylesheets/blueprint/sass/ie.sass +3 -3
  362. data/test/fixtures/stylesheets/blueprint/sass/print.sass +3 -3
  363. data/test/fixtures/stylesheets/blueprint/sass/screen.sass +18 -18
  364. data/test/fixtures/stylesheets/blueprint/sass/single-imports/buttons.scss +3 -3
  365. data/test/fixtures/stylesheets/blueprint/sass/single-imports/colors.scss +34 -34
  366. data/test/fixtures/stylesheets/blueprint/sass/single-imports/debug.scss +3 -3
  367. data/test/fixtures/stylesheets/blueprint/sass/single-imports/fancy-type.scss +3 -3
  368. data/test/fixtures/stylesheets/blueprint/sass/single-imports/form.scss +4 -4
  369. data/test/fixtures/stylesheets/blueprint/sass/single-imports/grid.scss +2 -2
  370. data/test/fixtures/stylesheets/blueprint/sass/single-imports/ie.scss +2 -2
  371. data/test/fixtures/stylesheets/blueprint/sass/single-imports/interaction.scss +3 -3
  372. data/test/fixtures/stylesheets/blueprint/sass/single-imports/link-icons.scss +12 -12
  373. data/test/fixtures/stylesheets/blueprint/sass/single-imports/liquid.scss +2 -2
  374. data/test/fixtures/stylesheets/blueprint/sass/single-imports/print.scss +4 -4
  375. data/test/fixtures/stylesheets/blueprint/sass/single-imports/reset-utilities.scss +4 -4
  376. data/test/fixtures/stylesheets/blueprint/sass/single-imports/reset.scss +1 -1
  377. data/test/fixtures/stylesheets/blueprint/sass/single-imports/rtl.scss +2 -2
  378. data/test/fixtures/stylesheets/blueprint/sass/single-imports/scaffolding.scss +5 -5
  379. data/test/fixtures/stylesheets/blueprint/sass/single-imports/typography.scss +3 -3
  380. data/test/fixtures/stylesheets/blueprint/sass/single-imports/utilities.scss +3 -3
  381. data/test/fixtures/stylesheets/busted_image_urls/config.rb +29 -29
  382. data/test/fixtures/stylesheets/busted_image_urls/css/screen.css +9 -9
  383. data/test/fixtures/stylesheets/busted_image_urls/sass/screen.sass +13 -13
  384. data/test/fixtures/stylesheets/compass/config.rb +16 -16
  385. data/test/fixtures/stylesheets/compass/css/background-clip.css +10 -10
  386. data/test/fixtures/stylesheets/compass/css/border_radius.css +14 -14
  387. data/test/fixtures/stylesheets/compass/css/box-sizeing.css +9 -9
  388. data/test/fixtures/stylesheets/compass/css/box.css +103 -103
  389. data/test/fixtures/stylesheets/compass/css/box_shadow.css +14 -14
  390. data/test/fixtures/stylesheets/compass/css/columns.css +161 -161
  391. data/test/fixtures/stylesheets/compass/css/filters.css +29 -29
  392. data/test/fixtures/stylesheets/compass/css/fonts.css +4 -4
  393. data/test/fixtures/stylesheets/compass/css/force-wrap.css +9 -9
  394. data/test/fixtures/stylesheets/compass/css/gradients.css +202 -202
  395. data/test/fixtures/stylesheets/compass/css/grid_background.css +71 -71
  396. data/test/fixtures/stylesheets/compass/css/hyphenation.css +16 -16
  397. data/test/fixtures/stylesheets/compass/css/image_size.css +15 -15
  398. data/test/fixtures/stylesheets/compass/css/images.css +8 -8
  399. data/test/fixtures/stylesheets/compass/css/layout.css +16 -16
  400. data/test/fixtures/stylesheets/compass/css/legacy_clearfix.css +26 -26
  401. data/test/fixtures/stylesheets/compass/css/lists.css +151 -151
  402. data/test/fixtures/stylesheets/compass/css/opacity.css +3 -3
  403. data/test/fixtures/stylesheets/compass/css/pie.css +26 -26
  404. data/test/fixtures/stylesheets/compass/css/print.css +11 -11
  405. data/test/fixtures/stylesheets/compass/css/regions.css +7 -7
  406. data/test/fixtures/stylesheets/compass/css/replacement.css +59 -59
  407. data/test/fixtures/stylesheets/compass/css/reset.css +59 -59
  408. data/test/fixtures/stylesheets/compass/css/sprites.css +1262 -1262
  409. data/test/fixtures/stylesheets/compass/css/stretching.css +66 -66
  410. data/test/fixtures/stylesheets/compass/css/text_shadow.css +29 -29
  411. data/test/fixtures/stylesheets/compass/css/transform.css +441 -441
  412. data/test/fixtures/stylesheets/compass/css/transition.css +128 -128
  413. data/test/fixtures/stylesheets/compass/css/user-interface.css +4 -4
  414. data/test/fixtures/stylesheets/compass/css/utilities.css +56 -56
  415. data/test/fixtures/stylesheets/compass/css/vertical_rhythm.css +45 -45
  416. data/test/fixtures/stylesheets/compass/sass/background-clip.scss +7 -7
  417. data/test/fixtures/stylesheets/compass/sass/border_radius.scss +5 -5
  418. data/test/fixtures/stylesheets/compass/sass/box-sizeing.scss +7 -7
  419. data/test/fixtures/stylesheets/compass/sass/box.sass +49 -49
  420. data/test/fixtures/stylesheets/compass/sass/box_shadow.scss +5 -5
  421. data/test/fixtures/stylesheets/compass/sass/columns.scss +28 -28
  422. data/test/fixtures/stylesheets/compass/sass/filters.scss +24 -24
  423. data/test/fixtures/stylesheets/compass/sass/fonts.sass +2 -2
  424. data/test/fixtures/stylesheets/compass/sass/force-wrap.scss +3 -3
  425. data/test/fixtures/stylesheets/compass/sass/gradients.sass +96 -96
  426. data/test/fixtures/stylesheets/compass/sass/grid_background.scss +33 -33
  427. data/test/fixtures/stylesheets/compass/sass/hyphenation.scss +10 -10
  428. data/test/fixtures/stylesheets/compass/sass/image_size.sass +15 -15
  429. data/test/fixtures/stylesheets/compass/sass/images.scss +8 -8
  430. data/test/fixtures/stylesheets/compass/sass/layout.sass +3 -3
  431. data/test/fixtures/stylesheets/compass/sass/legacy_clearfix.scss +14 -14
  432. data/test/fixtures/stylesheets/compass/sass/lists.scss +11 -11
  433. data/test/fixtures/stylesheets/compass/sass/opacity.scss +5 -5
  434. data/test/fixtures/stylesheets/compass/sass/pie.scss +47 -47
  435. data/test/fixtures/stylesheets/compass/sass/print.sass +5 -5
  436. data/test/fixtures/stylesheets/compass/sass/regions.scss +3 -3
  437. data/test/fixtures/stylesheets/compass/sass/replacement.scss +22 -22
  438. data/test/fixtures/stylesheets/compass/sass/reset.sass +12 -12
  439. data/test/fixtures/stylesheets/compass/sass/sprites.scss +13 -13
  440. data/test/fixtures/stylesheets/compass/sass/stretching.sass +33 -33
  441. data/test/fixtures/stylesheets/compass/sass/text_shadow.scss +11 -11
  442. data/test/fixtures/stylesheets/compass/sass/transform.scss +87 -87
  443. data/test/fixtures/stylesheets/compass/sass/transition.scss +24 -24
  444. data/test/fixtures/stylesheets/compass/sass/user-interface.scss +4 -4
  445. data/test/fixtures/stylesheets/compass/sass/utilities.scss +20 -20
  446. data/test/fixtures/stylesheets/compass/sass/vertical_rhythm.scss +15 -15
  447. data/test/fixtures/stylesheets/envtest/config.rb +9 -9
  448. data/test/fixtures/stylesheets/envtest/css/env.css +2 -2
  449. data/test/fixtures/stylesheets/envtest/sass/env.scss +3 -3
  450. data/test/fixtures/stylesheets/error/config.rb +10 -10
  451. data/test/fixtures/stylesheets/error/sass/screen.sass +2 -2
  452. data/test/fixtures/stylesheets/image_urls/config.rb +19 -19
  453. data/test/fixtures/stylesheets/image_urls/css/screen.css +5 -5
  454. data/test/fixtures/stylesheets/image_urls/sass/screen.sass +8 -8
  455. data/test/fixtures/stylesheets/relative/config.rb +10 -10
  456. data/test/fixtures/stylesheets/relative/css/ie.css +1 -1
  457. data/test/fixtures/stylesheets/relative/css/print.css +1 -1
  458. data/test/fixtures/stylesheets/relative/css/screen.css +1 -1
  459. data/test/fixtures/stylesheets/relative/sass/ie.sass +5 -5
  460. data/test/fixtures/stylesheets/relative/sass/print.sass +3 -3
  461. data/test/fixtures/stylesheets/relative/sass/screen.sass +2 -2
  462. data/test/fixtures/stylesheets/uses_only_stylesheets_ext/config.rb +25 -25
  463. data/test/fixtures/stylesheets/uses_only_stylesheets_ext/sass/ie.scss +5 -5
  464. data/test/fixtures/stylesheets/uses_only_stylesheets_ext/sass/print.scss +3 -3
  465. data/test/fixtures/stylesheets/uses_only_stylesheets_ext/sass/screen.scss +6 -6
  466. data/test/fixtures/stylesheets/uses_only_stylesheets_ext/stylesheets/ie.css +5 -5
  467. data/test/fixtures/stylesheets/uses_only_stylesheets_ext/stylesheets/print.css +3 -3
  468. data/test/fixtures/stylesheets/uses_only_stylesheets_ext/stylesheets/screen.css +68 -68
  469. data/test/fixtures/stylesheets/valid/config.rb +9 -9
  470. data/test/fixtures/stylesheets/valid/sass/simple.sass +1 -1
  471. data/test/helpers/command_line.rb +114 -114
  472. data/test/helpers/diff.rb +48 -48
  473. data/test/helpers/io.rb +36 -36
  474. data/test/helpers/rails.rb +55 -55
  475. data/test/helpers/test_case.rb +62 -62
  476. data/test/integrations/compass_test.rb +224 -224
  477. data/test/integrations/sprites_test.rb +843 -843
  478. data/test/test_helper.rb +73 -73
  479. data/test/units/actions_test.rb +23 -23
  480. data/test/units/command_line_test.rb +60 -60
  481. data/test/units/compass_module_test.rb +36 -36
  482. data/test/units/compass_png_test.rb +45 -45
  483. data/test/units/compiler_test.rb +10 -10
  484. data/test/units/configuration_test.rb +440 -440
  485. data/test/units/regressions_test.rb +35 -35
  486. data/test/units/sass_extensions_test.rb +198 -198
  487. data/test/units/sprites/engine_test.rb +47 -47
  488. data/test/units/sprites/image_row_test.rb +57 -57
  489. data/test/units/sprites/image_test.rb +99 -99
  490. data/test/units/sprites/importer_test.rb +90 -90
  491. data/test/units/sprites/layout_test.rb +154 -154
  492. data/test/units/sprites/row_fitter_test.rb +65 -65
  493. data/test/units/sprites/sprite_command_test.rb +54 -54
  494. data/test/units/sprites/sprite_map_test.rb +130 -130
  495. metadata +1304 -1310
@@ -1,11 +1,11 @@
1
- require 'test_helper'
2
- require 'fileutils'
3
-
4
- class CompilerTest < Test::Unit::TestCase
5
-
6
- it "should strip css from file name and reappend" do
7
- compiler = Compass::Compiler.new(Dir.pwd, 'foo', 'bar', {})
8
- assert_equal 'screen', compiler.stylesheet_name(File.join(Dir.pwd, 'foo', 'screen.css.scss'))
9
- end
10
-
1
+ require 'test_helper'
2
+ require 'fileutils'
3
+
4
+ class CompilerTest < Test::Unit::TestCase
5
+
6
+ it "should strip css from file name and reappend" do
7
+ compiler = Compass::Compiler.new(Dir.pwd, 'foo', 'bar', {})
8
+ assert_equal 'screen', compiler.stylesheet_name(File.join(Dir.pwd, 'foo', 'screen.css.scss'))
9
+ end
10
+
11
11
  end
@@ -1,440 +1,440 @@
1
- require 'test_helper'
2
- require 'compass'
3
- require 'stringio'
4
-
5
- class ConfigurationTest < Test::Unit::TestCase
6
-
7
- setup do
8
- Compass.reset_configuration!
9
- end
10
-
11
- after do
12
- Compass.reset_configuration!
13
- end
14
-
15
- def test_parse_and_serialize
16
- contents = StringIO.new(<<-CONFIG)
17
- require 'compass'
18
- # Require any additional compass plugins here.
19
-
20
- project_type = :stand_alone
21
-
22
- http_path = "/"
23
- css_dir = "css"
24
- sass_dir = "sass"
25
- images_dir = "img"
26
- javascripts_dir = "js"
27
-
28
- output_style = :nested
29
-
30
- # To enable relative paths to assets via compass helper functions. Uncomment:
31
- # relative_assets = true
32
-
33
- # To disable debugging comments that display the original location of your selectors. Uncomment:
34
- # line_comments = false
35
-
36
-
37
- # If you prefer the indented syntax, you might want to regenerate this
38
- # project again passing --syntax sass, or you can uncomment this:
39
- # preferred_syntax = :sass
40
- # and then run:
41
- # sass-convert -R --from scss --to sass sass scss && rm -rf sass && mv scss sass
42
- CONFIG
43
-
44
- Compass.add_configuration(contents, "test_parse")
45
-
46
- assert_equal 'sass', Compass.configuration.sass_dir
47
- assert_equal 'css', Compass.configuration.css_dir
48
- assert_equal 'img', Compass.configuration.images_dir
49
- assert_equal 'js', Compass.configuration.javascripts_dir
50
-
51
- expected_lines = contents.string.split("\n").map{|l|l.strip}
52
- actual_lines = Compass.configuration.serialize.split("\n").map{|l|l.strip}
53
- assert_correct expected_lines, actual_lines
54
- end
55
-
56
- def test_serialization_warns_with_asset_host_set
57
- contents = StringIO.new(<<-CONFIG)
58
- asset_host do |path|
59
- "http://example.com"
60
- end
61
- CONFIG
62
-
63
- Compass.add_configuration(contents, "test_serialization_warns_with_asset_host_set")
64
-
65
- warning = capture_warning do
66
- Compass.configuration.serialize
67
- end
68
- assert_equal "WARNING: asset_host is code and cannot be written to a file. You'll need to copy it yourself.\n", warning
69
- end
70
-
71
- class TestData < Compass::Configuration::Data
72
- def initialize
73
- super(:test)
74
- end
75
- inherited_array :stuff
76
- end
77
-
78
- def test_inherited_array_can_clobber
79
- data1 = TestData.new
80
- data1.stuff = [:a]
81
- data2 = TestData.new
82
- data2.stuff = [:b]
83
- data2.inherit_from!(data1)
84
- assert_equal [:b], data2.stuff.to_a
85
- end
86
-
87
- def test_inherited_array_can_append
88
- data1 = TestData.new
89
- data1.stuff = [:a]
90
- data2 = TestData.new
91
- data2.stuff << :b
92
- data2.inherit_from!(data1)
93
- assert_equal [:b, :a], data2.stuff.to_a
94
- end
95
-
96
- def test_inherited_array_can_append_2
97
- data1 = TestData.new
98
- data1.stuff = [:a]
99
- data2 = TestData.new
100
- data2.stuff << :b
101
- data2.inherit_from!(data1)
102
- data3 = TestData.new
103
- data3.stuff << :c
104
- data3.inherit_from!(data2)
105
- assert_equal [:c, :b, :a], data3.stuff.to_a
106
- end
107
-
108
- def test_inherited_array_can_remove
109
- data1 = TestData.new
110
- data1.stuff = [:a]
111
- data2 = TestData.new
112
- data2.stuff >> :a
113
- data2.inherit_from!(data1)
114
- assert_equal [], data2.stuff.to_a
115
- end
116
-
117
- def test_inherited_array_combined_augmentations
118
- data1 = TestData.new
119
- data1.stuff = [:a]
120
- data2 = TestData.new
121
- data2.stuff >> :a
122
- data2.stuff << :b
123
- data2.inherit_from!(data1)
124
- assert_equal [:b], data2.stuff.to_a
125
- end
126
-
127
- def test_inherited_array_long_methods
128
- data1 = TestData.new
129
- data1.stuff = [:a]
130
- data2 = TestData.new
131
- data2.remove_from_stuff(:a)
132
- data2.add_to_stuff(:b)
133
- data2.inherit_from!(data1)
134
- assert_equal [:b], data2.stuff.to_a
135
- end
136
-
137
- def test_inherited_array_augmentations_can_be_clobbered
138
- data1 = TestData.new
139
- data1.stuff = [:a]
140
- data2 = TestData.new
141
- data2.stuff >> :a
142
- data2.stuff << :b
143
- data2.stuff = [:c]
144
- data2.inherit_from!(data1)
145
- assert_equal [:c], data2.stuff.to_a
146
- end
147
-
148
- def test_inherited_array_augmentations_after_clobbering
149
- data1 = TestData.new
150
- data1.stuff = [:a]
151
- data2 = TestData.new
152
- data2.stuff >> :a
153
- data2.stuff << :b
154
- data2.stuff = [:c, :d]
155
- data2.stuff << :e
156
- data2.stuff >> :c
157
- data2.inherit_from!(data1)
158
- assert_equal [:d, :e], data2.stuff.to_a
159
- end
160
-
161
- def test_serialization_warns_with_asset_cache_buster_set
162
- contents = StringIO.new(<<-CONFIG)
163
- asset_cache_buster do |path|
164
- "http://example.com"
165
- end
166
- CONFIG
167
-
168
- Compass.add_configuration(contents, "test_serialization_warns_with_asset_cache_buster_set")
169
-
170
- assert_kind_of Proc, Compass.configuration.asset_cache_buster_without_default
171
- assert_equal "http://example.com", Compass.configuration.asset_cache_buster_without_default.call("whatever")
172
- warning = capture_warning do
173
- Compass.configuration.serialize
174
- end
175
- assert_equal "WARNING: asset_cache_buster is code and cannot be written to a file. You'll need to copy it yourself.\n", warning
176
- end
177
-
178
- def test_inherited_arrays_augmentations_serialize
179
- inherited = TestData.new
180
- inherited.stuff << :a
181
- d = TestData.new
182
- d.stuff << :b
183
- d.stuff >> :c
184
- assert_equal <<CONFIG, d.serialize_property(:stuff, d.stuff)
185
- stuff << :b
186
- stuff >> :c
187
- CONFIG
188
- end
189
- def test_inherited_arrays_clobbering_with_augmentations_serialize
190
- inherited = TestData.new
191
- inherited.stuff << :a
192
- d = TestData.new
193
- d.stuff << :b
194
- d.stuff = [:c, :d]
195
- d.stuff << :e
196
- assert_equal <<CONFIG, d.serialize_property(:stuff, d.stuff)
197
- stuff = [:c, :d, :e]
198
- CONFIG
199
- end
200
- def test_additional_import_paths
201
- contents = StringIO.new(<<-CONFIG)
202
- http_path = "/"
203
- project_path = "/home/chris/my_compass_project"
204
- css_dir = "css"
205
- additional_import_paths = ["../foo"]
206
- add_import_path "/path/to/my/framework"
207
- CONFIG
208
-
209
- Compass.add_configuration(contents, "test_additional_import_paths")
210
-
211
- engine_opts = Compass.configuration.to_sass_engine_options
212
-
213
- load_paths = load_paths_as_strings(engine_opts[:load_paths])
214
-
215
- plugin_opts = Compass.configuration.to_sass_plugin_options
216
-
217
- assert load_paths.include?("/home/chris/foo"), "Expected to find /home/chris/foo in #{load_paths.inspect}"
218
- assert load_paths.include?("/path/to/my/framework"), load_paths.inspect
219
- assert_equal "/home/chris/my_compass_project/css/framework", plugin_opts[:template_location].find{|s,c| s == "/path/to/my/framework"}[1]
220
- assert_equal "/home/chris/my_compass_project/css/foo", plugin_opts[:template_location].find{|s,c| s == "/home/chris/my_compass_project/../foo"}[1]
221
-
222
- expected_serialization = <<EXPECTED
223
- # Require any additional compass plugins here.
224
- project_path = "/home/chris/my_compass_project"
225
-
226
- http_path = "/"
227
- css_dir = "css"
228
-
229
- # You can select your preferred output style here (can be overridden via the command line):
230
- # output_style = :expanded or :nested or :compact or :compressed
231
-
232
- # To enable relative paths to assets via compass helper functions. Uncomment:
233
- # relative_assets = true
234
- additional_import_paths = ["../foo", "/path/to/my/framework"]
235
-
236
- # To disable debugging comments that display the original location of your selectors. Uncomment:
237
- # line_comments = false
238
- EXPECTED
239
- assert_equal "/", Compass.configuration.http_path
240
- assert_correct expected_serialization.split("\n"), Compass.configuration.serialize.split("\n")
241
- end
242
-
243
- def test_additional_import_paths_can_be_importers
244
- contents = StringIO.new(<<-CONFIG)
245
- http_path = "/"
246
- project_path = "/home/chris/my_compass_project"
247
- css_dir = "css"
248
- additional_import_paths = ["../foo"]
249
- add_import_path Sass::Importers::Filesystem.new("/tmp/foo")
250
- CONFIG
251
-
252
- Compass.add_configuration(contents, "test_additional_import_paths")
253
-
254
- assert Compass.configuration.sass_load_paths.find{|p| p.is_a?(Sass::Importers::Filesystem) && p.root == "/tmp/foo"}
255
- assert Compass.configuration.to_sass_plugin_options[:load_paths].find{|p| p.is_a?(Sass::Importers::Filesystem) && p.root == "/tmp/foo"}
256
- end
257
-
258
- def test_config_with_pathname
259
- contents = StringIO.new(<<-CONFIG)
260
- http_path = "/"
261
- project_path = Pathname.new("/home/chris/my_compass_project")
262
- css_dir = "css"
263
- additional_import_paths = ["../foo"]
264
- add_import_path "/path/to/my/framework"
265
- CONFIG
266
-
267
- Compass.add_configuration(contents, "test_additional_import_paths")
268
-
269
- load_paths = load_paths_as_strings(Compass.configuration.to_sass_engine_options[:load_paths])
270
-
271
- assert load_paths.include?("/home/chris/foo"), "Expected to find /home/chris/foo in #{load_paths.inspect}"
272
- assert load_paths.include?("/path/to/my/framework"), load_paths.inspect
273
- assert_equal "/home/chris/my_compass_project/css/framework", Compass.configuration.to_sass_plugin_options[:template_location].find{|s,c| s == "/path/to/my/framework"}[1]
274
- assert_equal "/home/chris/my_compass_project/css/foo", Compass.configuration.to_sass_plugin_options[:template_location].find{|s,c| s == "/home/chris/my_compass_project/../foo"}[1]
275
-
276
- expected_serialization = <<EXPECTED
277
- # Require any additional compass plugins here.
278
- project_path = "/home/chris/my_compass_project"
279
-
280
- http_path = "/"
281
- css_dir = "css"
282
-
283
- # You can select your preferred output style here (can be overridden via the command line):
284
- # output_style = :expanded or :nested or :compact or :compressed
285
-
286
- # To enable relative paths to assets via compass helper functions. Uncomment:
287
- # relative_assets = true
288
- additional_import_paths = ["../foo", "/path/to/my/framework"]
289
-
290
- # To disable debugging comments that display the original location of your selectors. Uncomment:
291
- # line_comments = false
292
- EXPECTED
293
- assert_equal "/", Compass.configuration.http_path
294
- assert_correct expected_serialization.split("\n"), Compass.configuration.serialize.split("\n")
295
- end
296
-
297
- def test_sass_options
298
- contents = StringIO.new(<<-CONFIG)
299
- sass_options = {:foo => 'bar'}
300
- CONFIG
301
-
302
- Compass.add_configuration(contents, "test_sass_options")
303
-
304
- assert_equal 'bar', Compass.configuration.to_sass_engine_options[:foo]
305
- assert_equal 'bar', Compass.configuration.to_sass_plugin_options[:foo]
306
-
307
- expected_serialization = <<EXPECTED
308
- # Require any additional compass plugins here.
309
-
310
- # Set this to the root of your project when deployed:
311
- http_path = \"/\"
312
-
313
- # You can select your preferred output style here (can be overridden via the command line):
314
- # output_style = :expanded or :nested or :compact or :compressed
315
-
316
- # To enable relative paths to assets via compass helper functions. Uncomment:
317
- # relative_assets = true\nsass_options = {:foo=>\"bar\"}
318
-
319
- # To disable debugging comments that display the original location of your selectors. Uncomment:
320
- # line_comments = false
321
-
322
- EXPECTED
323
-
324
- assert_correct(expected_serialization, Compass.configuration.serialize)
325
- end
326
-
327
- def test_sprite_load_path_clobbers
328
- contents = StringIO.new(<<-CONFIG)
329
- sprite_load_path = ["/Users/chris/Projects/my_compass_project/images/sprites"]
330
- CONFIG
331
-
332
- Compass.add_configuration(contents, "test_sass_options")
333
-
334
- assert_equal ["/Users/chris/Projects/my_compass_project/images/sprites"], Compass.configuration.sprite_load_path.to_a
335
-
336
- expected_serialization = <<EXPECTED
337
- # Require any additional compass plugins here.
338
-
339
- # Set this to the root of your project when deployed:
340
- http_path = "/"
341
-
342
- # You can select your preferred output style here (can be overridden via the command line):
343
- # output_style = :expanded or :nested or :compact or :compressed
344
-
345
- # To enable relative paths to assets via compass helper functions. Uncomment:
346
- # relative_assets = true
347
-
348
- # To disable debugging comments that display the original location of your selectors. Uncomment:
349
- # line_comments = false
350
-
351
- sprite_load_path = ["/Users/chris/Projects/my_compass_project/images/sprites"]
352
- EXPECTED
353
-
354
- assert_correct(expected_serialization, Compass.configuration.serialize)
355
- end
356
-
357
- def test_strip_trailing_directory_separators
358
- contents = StringIO.new(<<-CONFIG)
359
- css_dir = "css/"
360
- sass_dir = "sass/"
361
- images_dir = "images/"
362
- javascripts_dir = "js/"
363
- fonts_dir = "fonts/"
364
- extensions_dir = "extensions/"
365
- css_path = "css/"
366
- sass_path = "sass/"
367
- images_path = "images/"
368
- javascripts_path = "js/"
369
- fonts_path = "fonts/"
370
- extensions_path = "extensions/"
371
- CONFIG
372
-
373
- Compass.add_configuration(contents, "test_strip_trailing_directory_separators")
374
-
375
- assert_equal "css", Compass.configuration.css_dir
376
- assert_equal "sass", Compass.configuration.sass_dir
377
- assert_equal "images", Compass.configuration.images_dir
378
- assert_equal "js", Compass.configuration.javascripts_dir
379
- assert_equal "fonts", Compass.configuration.fonts_dir
380
- assert_equal "extensions", Compass.configuration.extensions_dir
381
- end
382
-
383
- def test_custom_configuration_properties
384
- # Add a configuration property to compass.
385
- Compass::Configuration.add_configuration_property(:foobar, "this is a foobar") do
386
- if environment == :production
387
- "foo"
388
- else
389
- "bar"
390
- end
391
- end
392
-
393
- contents = StringIO.new(<<-CONFIG)
394
- foobar = "baz"
395
- CONFIG
396
-
397
- Compass.add_configuration(contents, "test_strip_trailing_directory_separators")
398
-
399
- assert_equal "baz", Compass.configuration.foobar
400
- expected_serialization = <<EXPECTED
401
- # Require any additional compass plugins here.
402
-
403
- # Set this to the root of your project when deployed:
404
- http_path = "/"
405
-
406
- # You can select your preferred output style here (can be overridden via the command line):
407
- # output_style = :expanded or :nested or :compact or :compressed
408
-
409
- # To enable relative paths to assets via compass helper functions. Uncomment:
410
- # relative_assets = true
411
-
412
- # To disable debugging comments that display the original location of your selectors. Uncomment:
413
- # line_comments = false
414
-
415
-
416
- # this is a foobar
417
- foobar = "baz"
418
- EXPECTED
419
- assert_correct(expected_serialization, Compass.configuration.serialize)
420
- Compass.reset_configuration!
421
- Compass.configuration.environment = :production
422
- assert_equal "foo", Compass.configuration.foobar
423
- Compass.configuration.environment = :development
424
- assert_equal "bar", Compass.configuration.foobar
425
- ensure
426
- Compass::Configuration.remove_configuration_property :foobar
427
- end
428
-
429
- def load_paths_as_strings(load_paths)
430
- load_paths.map do |path|
431
- case path
432
- when Sass::Importers::Filesystem
433
- path.root
434
- when String, Pathname
435
- path.to_s
436
- end
437
- end.compact
438
- end
439
-
440
- end
1
+ require 'test_helper'
2
+ require 'compass'
3
+ require 'stringio'
4
+
5
+ class ConfigurationTest < Test::Unit::TestCase
6
+
7
+ setup do
8
+ Compass.reset_configuration!
9
+ end
10
+
11
+ after do
12
+ Compass.reset_configuration!
13
+ end
14
+
15
+ def test_parse_and_serialize
16
+ contents = StringIO.new(<<-CONFIG)
17
+ require 'compass'
18
+ # Require any additional compass plugins here.
19
+
20
+ project_type = :stand_alone
21
+
22
+ http_path = "/"
23
+ css_dir = "css"
24
+ sass_dir = "sass"
25
+ images_dir = "img"
26
+ javascripts_dir = "js"
27
+
28
+ output_style = :nested
29
+
30
+ # To enable relative paths to assets via compass helper functions. Uncomment:
31
+ # relative_assets = true
32
+
33
+ # To disable debugging comments that display the original location of your selectors. Uncomment:
34
+ # line_comments = false
35
+
36
+
37
+ # If you prefer the indented syntax, you might want to regenerate this
38
+ # project again passing --syntax sass, or you can uncomment this:
39
+ # preferred_syntax = :sass
40
+ # and then run:
41
+ # sass-convert -R --from scss --to sass sass scss && rm -rf sass && mv scss sass
42
+ CONFIG
43
+
44
+ Compass.add_configuration(contents, "test_parse")
45
+
46
+ assert_equal 'sass', Compass.configuration.sass_dir
47
+ assert_equal 'css', Compass.configuration.css_dir
48
+ assert_equal 'img', Compass.configuration.images_dir
49
+ assert_equal 'js', Compass.configuration.javascripts_dir
50
+
51
+ expected_lines = contents.string.split("\n").map{|l|l.strip}
52
+ actual_lines = Compass.configuration.serialize.split("\n").map{|l|l.strip}
53
+ assert_correct expected_lines, actual_lines
54
+ end
55
+
56
+ def test_serialization_warns_with_asset_host_set
57
+ contents = StringIO.new(<<-CONFIG)
58
+ asset_host do |path|
59
+ "http://example.com"
60
+ end
61
+ CONFIG
62
+
63
+ Compass.add_configuration(contents, "test_serialization_warns_with_asset_host_set")
64
+
65
+ warning = capture_warning do
66
+ Compass.configuration.serialize
67
+ end
68
+ assert_equal "WARNING: asset_host is code and cannot be written to a file. You'll need to copy it yourself.\n", warning
69
+ end
70
+
71
+ class TestData < Compass::Configuration::Data
72
+ def initialize
73
+ super(:test)
74
+ end
75
+ inherited_array :stuff
76
+ end
77
+
78
+ def test_inherited_array_can_clobber
79
+ data1 = TestData.new
80
+ data1.stuff = [:a]
81
+ data2 = TestData.new
82
+ data2.stuff = [:b]
83
+ data2.inherit_from!(data1)
84
+ assert_equal [:b], data2.stuff.to_a
85
+ end
86
+
87
+ def test_inherited_array_can_append
88
+ data1 = TestData.new
89
+ data1.stuff = [:a]
90
+ data2 = TestData.new
91
+ data2.stuff << :b
92
+ data2.inherit_from!(data1)
93
+ assert_equal [:b, :a], data2.stuff.to_a
94
+ end
95
+
96
+ def test_inherited_array_can_append_2
97
+ data1 = TestData.new
98
+ data1.stuff = [:a]
99
+ data2 = TestData.new
100
+ data2.stuff << :b
101
+ data2.inherit_from!(data1)
102
+ data3 = TestData.new
103
+ data3.stuff << :c
104
+ data3.inherit_from!(data2)
105
+ assert_equal [:c, :b, :a], data3.stuff.to_a
106
+ end
107
+
108
+ def test_inherited_array_can_remove
109
+ data1 = TestData.new
110
+ data1.stuff = [:a]
111
+ data2 = TestData.new
112
+ data2.stuff >> :a
113
+ data2.inherit_from!(data1)
114
+ assert_equal [], data2.stuff.to_a
115
+ end
116
+
117
+ def test_inherited_array_combined_augmentations
118
+ data1 = TestData.new
119
+ data1.stuff = [:a]
120
+ data2 = TestData.new
121
+ data2.stuff >> :a
122
+ data2.stuff << :b
123
+ data2.inherit_from!(data1)
124
+ assert_equal [:b], data2.stuff.to_a
125
+ end
126
+
127
+ def test_inherited_array_long_methods
128
+ data1 = TestData.new
129
+ data1.stuff = [:a]
130
+ data2 = TestData.new
131
+ data2.remove_from_stuff(:a)
132
+ data2.add_to_stuff(:b)
133
+ data2.inherit_from!(data1)
134
+ assert_equal [:b], data2.stuff.to_a
135
+ end
136
+
137
+ def test_inherited_array_augmentations_can_be_clobbered
138
+ data1 = TestData.new
139
+ data1.stuff = [:a]
140
+ data2 = TestData.new
141
+ data2.stuff >> :a
142
+ data2.stuff << :b
143
+ data2.stuff = [:c]
144
+ data2.inherit_from!(data1)
145
+ assert_equal [:c], data2.stuff.to_a
146
+ end
147
+
148
+ def test_inherited_array_augmentations_after_clobbering
149
+ data1 = TestData.new
150
+ data1.stuff = [:a]
151
+ data2 = TestData.new
152
+ data2.stuff >> :a
153
+ data2.stuff << :b
154
+ data2.stuff = [:c, :d]
155
+ data2.stuff << :e
156
+ data2.stuff >> :c
157
+ data2.inherit_from!(data1)
158
+ assert_equal [:d, :e], data2.stuff.to_a
159
+ end
160
+
161
+ def test_serialization_warns_with_asset_cache_buster_set
162
+ contents = StringIO.new(<<-CONFIG)
163
+ asset_cache_buster do |path|
164
+ "http://example.com"
165
+ end
166
+ CONFIG
167
+
168
+ Compass.add_configuration(contents, "test_serialization_warns_with_asset_cache_buster_set")
169
+
170
+ assert_kind_of Proc, Compass.configuration.asset_cache_buster_without_default
171
+ assert_equal "http://example.com", Compass.configuration.asset_cache_buster_without_default.call("whatever")
172
+ warning = capture_warning do
173
+ Compass.configuration.serialize
174
+ end
175
+ assert_equal "WARNING: asset_cache_buster is code and cannot be written to a file. You'll need to copy it yourself.\n", warning
176
+ end
177
+
178
+ def test_inherited_arrays_augmentations_serialize
179
+ inherited = TestData.new
180
+ inherited.stuff << :a
181
+ d = TestData.new
182
+ d.stuff << :b
183
+ d.stuff >> :c
184
+ assert_equal <<CONFIG, d.serialize_property(:stuff, d.stuff)
185
+ stuff << :b
186
+ stuff >> :c
187
+ CONFIG
188
+ end
189
+ def test_inherited_arrays_clobbering_with_augmentations_serialize
190
+ inherited = TestData.new
191
+ inherited.stuff << :a
192
+ d = TestData.new
193
+ d.stuff << :b
194
+ d.stuff = [:c, :d]
195
+ d.stuff << :e
196
+ assert_equal <<CONFIG, d.serialize_property(:stuff, d.stuff)
197
+ stuff = [:c, :d, :e]
198
+ CONFIG
199
+ end
200
+ def test_additional_import_paths
201
+ contents = StringIO.new(<<-CONFIG)
202
+ http_path = "/"
203
+ project_path = "/home/chris/my_compass_project"
204
+ css_dir = "css"
205
+ additional_import_paths = ["../foo"]
206
+ add_import_path "/path/to/my/framework"
207
+ CONFIG
208
+
209
+ Compass.add_configuration(contents, "test_additional_import_paths")
210
+
211
+ engine_opts = Compass.configuration.to_sass_engine_options
212
+
213
+ load_paths = load_paths_as_strings(engine_opts[:load_paths])
214
+
215
+ plugin_opts = Compass.configuration.to_sass_plugin_options
216
+
217
+ assert load_paths.include?("/home/chris/foo"), "Expected to find /home/chris/foo in #{load_paths.inspect}"
218
+ assert load_paths.include?("/path/to/my/framework"), load_paths.inspect
219
+ assert_equal "/home/chris/my_compass_project/css/framework", plugin_opts[:template_location].find{|s,c| s == "/path/to/my/framework"}[1]
220
+ assert_equal "/home/chris/my_compass_project/css/foo", plugin_opts[:template_location].find{|s,c| s == "/home/chris/my_compass_project/../foo"}[1]
221
+
222
+ expected_serialization = <<EXPECTED
223
+ # Require any additional compass plugins here.
224
+ project_path = "/home/chris/my_compass_project"
225
+
226
+ http_path = "/"
227
+ css_dir = "css"
228
+
229
+ # You can select your preferred output style here (can be overridden via the command line):
230
+ # output_style = :expanded or :nested or :compact or :compressed
231
+
232
+ # To enable relative paths to assets via compass helper functions. Uncomment:
233
+ # relative_assets = true
234
+ additional_import_paths = ["../foo", "/path/to/my/framework"]
235
+
236
+ # To disable debugging comments that display the original location of your selectors. Uncomment:
237
+ # line_comments = false
238
+ EXPECTED
239
+ assert_equal "/", Compass.configuration.http_path
240
+ assert_correct expected_serialization.split("\n"), Compass.configuration.serialize.split("\n")
241
+ end
242
+
243
+ def test_additional_import_paths_can_be_importers
244
+ contents = StringIO.new(<<-CONFIG)
245
+ http_path = "/"
246
+ project_path = "/home/chris/my_compass_project"
247
+ css_dir = "css"
248
+ additional_import_paths = ["../foo"]
249
+ add_import_path Sass::Importers::Filesystem.new("/tmp/foo")
250
+ CONFIG
251
+
252
+ Compass.add_configuration(contents, "test_additional_import_paths")
253
+
254
+ assert Compass.configuration.sass_load_paths.find{|p| p.is_a?(Sass::Importers::Filesystem) && p.root == "/tmp/foo"}
255
+ assert Compass.configuration.to_sass_plugin_options[:load_paths].find{|p| p.is_a?(Sass::Importers::Filesystem) && p.root == "/tmp/foo"}
256
+ end
257
+
258
+ def test_config_with_pathname
259
+ contents = StringIO.new(<<-CONFIG)
260
+ http_path = "/"
261
+ project_path = Pathname.new("/home/chris/my_compass_project")
262
+ css_dir = "css"
263
+ additional_import_paths = ["../foo"]
264
+ add_import_path "/path/to/my/framework"
265
+ CONFIG
266
+
267
+ Compass.add_configuration(contents, "test_additional_import_paths")
268
+
269
+ load_paths = load_paths_as_strings(Compass.configuration.to_sass_engine_options[:load_paths])
270
+
271
+ assert load_paths.include?("/home/chris/foo"), "Expected to find /home/chris/foo in #{load_paths.inspect}"
272
+ assert load_paths.include?("/path/to/my/framework"), load_paths.inspect
273
+ assert_equal "/home/chris/my_compass_project/css/framework", Compass.configuration.to_sass_plugin_options[:template_location].find{|s,c| s == "/path/to/my/framework"}[1]
274
+ assert_equal "/home/chris/my_compass_project/css/foo", Compass.configuration.to_sass_plugin_options[:template_location].find{|s,c| s == "/home/chris/my_compass_project/../foo"}[1]
275
+
276
+ expected_serialization = <<EXPECTED
277
+ # Require any additional compass plugins here.
278
+ project_path = "/home/chris/my_compass_project"
279
+
280
+ http_path = "/"
281
+ css_dir = "css"
282
+
283
+ # You can select your preferred output style here (can be overridden via the command line):
284
+ # output_style = :expanded or :nested or :compact or :compressed
285
+
286
+ # To enable relative paths to assets via compass helper functions. Uncomment:
287
+ # relative_assets = true
288
+ additional_import_paths = ["../foo", "/path/to/my/framework"]
289
+
290
+ # To disable debugging comments that display the original location of your selectors. Uncomment:
291
+ # line_comments = false
292
+ EXPECTED
293
+ assert_equal "/", Compass.configuration.http_path
294
+ assert_correct expected_serialization.split("\n"), Compass.configuration.serialize.split("\n")
295
+ end
296
+
297
+ def test_sass_options
298
+ contents = StringIO.new(<<-CONFIG)
299
+ sass_options = {:foo => 'bar'}
300
+ CONFIG
301
+
302
+ Compass.add_configuration(contents, "test_sass_options")
303
+
304
+ assert_equal 'bar', Compass.configuration.to_sass_engine_options[:foo]
305
+ assert_equal 'bar', Compass.configuration.to_sass_plugin_options[:foo]
306
+
307
+ expected_serialization = <<EXPECTED
308
+ # Require any additional compass plugins here.
309
+
310
+ # Set this to the root of your project when deployed:
311
+ http_path = \"/\"
312
+
313
+ # You can select your preferred output style here (can be overridden via the command line):
314
+ # output_style = :expanded or :nested or :compact or :compressed
315
+
316
+ # To enable relative paths to assets via compass helper functions. Uncomment:
317
+ # relative_assets = true\nsass_options = {:foo=>\"bar\"}
318
+
319
+ # To disable debugging comments that display the original location of your selectors. Uncomment:
320
+ # line_comments = false
321
+
322
+ EXPECTED
323
+
324
+ assert_correct(expected_serialization, Compass.configuration.serialize)
325
+ end
326
+
327
+ def test_sprite_load_path_clobbers
328
+ contents = StringIO.new(<<-CONFIG)
329
+ sprite_load_path = ["/Users/chris/Projects/my_compass_project/images/sprites"]
330
+ CONFIG
331
+
332
+ Compass.add_configuration(contents, "test_sass_options")
333
+
334
+ assert_equal ["/Users/chris/Projects/my_compass_project/images/sprites"], Compass.configuration.sprite_load_path.to_a
335
+
336
+ expected_serialization = <<EXPECTED
337
+ # Require any additional compass plugins here.
338
+
339
+ # Set this to the root of your project when deployed:
340
+ http_path = "/"
341
+
342
+ # You can select your preferred output style here (can be overridden via the command line):
343
+ # output_style = :expanded or :nested or :compact or :compressed
344
+
345
+ # To enable relative paths to assets via compass helper functions. Uncomment:
346
+ # relative_assets = true
347
+
348
+ # To disable debugging comments that display the original location of your selectors. Uncomment:
349
+ # line_comments = false
350
+
351
+ sprite_load_path = ["/Users/chris/Projects/my_compass_project/images/sprites"]
352
+ EXPECTED
353
+
354
+ assert_correct(expected_serialization, Compass.configuration.serialize)
355
+ end
356
+
357
+ def test_strip_trailing_directory_separators
358
+ contents = StringIO.new(<<-CONFIG)
359
+ css_dir = "css/"
360
+ sass_dir = "sass/"
361
+ images_dir = "images/"
362
+ javascripts_dir = "js/"
363
+ fonts_dir = "fonts/"
364
+ extensions_dir = "extensions/"
365
+ css_path = "css/"
366
+ sass_path = "sass/"
367
+ images_path = "images/"
368
+ javascripts_path = "js/"
369
+ fonts_path = "fonts/"
370
+ extensions_path = "extensions/"
371
+ CONFIG
372
+
373
+ Compass.add_configuration(contents, "test_strip_trailing_directory_separators")
374
+
375
+ assert_equal "css", Compass.configuration.css_dir
376
+ assert_equal "sass", Compass.configuration.sass_dir
377
+ assert_equal "images", Compass.configuration.images_dir
378
+ assert_equal "js", Compass.configuration.javascripts_dir
379
+ assert_equal "fonts", Compass.configuration.fonts_dir
380
+ assert_equal "extensions", Compass.configuration.extensions_dir
381
+ end
382
+
383
+ def test_custom_configuration_properties
384
+ # Add a configuration property to compass.
385
+ Compass::Configuration.add_configuration_property(:foobar, "this is a foobar") do
386
+ if environment == :production
387
+ "foo"
388
+ else
389
+ "bar"
390
+ end
391
+ end
392
+
393
+ contents = StringIO.new(<<-CONFIG)
394
+ foobar = "baz"
395
+ CONFIG
396
+
397
+ Compass.add_configuration(contents, "test_strip_trailing_directory_separators")
398
+
399
+ assert_equal "baz", Compass.configuration.foobar
400
+ expected_serialization = <<EXPECTED
401
+ # Require any additional compass plugins here.
402
+
403
+ # Set this to the root of your project when deployed:
404
+ http_path = "/"
405
+
406
+ # You can select your preferred output style here (can be overridden via the command line):
407
+ # output_style = :expanded or :nested or :compact or :compressed
408
+
409
+ # To enable relative paths to assets via compass helper functions. Uncomment:
410
+ # relative_assets = true
411
+
412
+ # To disable debugging comments that display the original location of your selectors. Uncomment:
413
+ # line_comments = false
414
+
415
+
416
+ # this is a foobar
417
+ foobar = "baz"
418
+ EXPECTED
419
+ assert_correct(expected_serialization, Compass.configuration.serialize)
420
+ Compass.reset_configuration!
421
+ Compass.configuration.environment = :production
422
+ assert_equal "foo", Compass.configuration.foobar
423
+ Compass.configuration.environment = :development
424
+ assert_equal "bar", Compass.configuration.foobar
425
+ ensure
426
+ Compass::Configuration.remove_configuration_property :foobar
427
+ end
428
+
429
+ def load_paths_as_strings(load_paths)
430
+ load_paths.map do |path|
431
+ case path
432
+ when Sass::Importers::Filesystem
433
+ path.root
434
+ when String, Pathname
435
+ path.to_s
436
+ end
437
+ end.compact
438
+ end
439
+
440
+ end