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,48 +1,48 @@
1
- require 'test_helper'
2
-
3
- class EngineTest < Test::Unit::TestCase
4
- include SpriteHelper
5
- def setup
6
- create_sprite_temp
7
- sprite_filename = 'squares/ten-by-ten.png'
8
- @images = [
9
- Compass::SassExtensions::Sprites::Image.new(nil, File.join(sprite_filename), {})
10
- ]
11
- @engine = Compass::SassExtensions::Sprites::Engine.new(100, 100, @images)
12
- end
13
-
14
- def taredown
15
- clean_up_sprites
16
- end
17
-
18
-
19
- test "should have width of 100" do
20
- assert_equal 100, @engine.width
21
- end
22
-
23
- test "should have height of 100" do
24
- assert_equal 100, @engine.height
25
- end
26
-
27
- test "should have correct images" do
28
- assert_equal @images, @engine.images
29
- end
30
-
31
- test "raises Compass::Error when calling save" do
32
- begin
33
- @engine.save('foo')
34
- assert false, '#save did not raise an exception'
35
- rescue Compass::Error
36
- assert true
37
- end
38
- end
39
-
40
- test "raises Compass::Error when calling construct_sprite" do
41
- begin
42
- @engine.construct_sprite
43
- assert false, '#construct_sprite did not raise an exception'
44
- rescue Compass::Error
45
- assert true
46
- end
47
- end
1
+ require 'test_helper'
2
+
3
+ class EngineTest < Test::Unit::TestCase
4
+ include SpriteHelper
5
+ def setup
6
+ create_sprite_temp
7
+ sprite_filename = 'squares/ten-by-ten.png'
8
+ @images = [
9
+ Compass::SassExtensions::Sprites::Image.new(nil, File.join(sprite_filename), {})
10
+ ]
11
+ @engine = Compass::SassExtensions::Sprites::Engine.new(100, 100, @images)
12
+ end
13
+
14
+ def taredown
15
+ clean_up_sprites
16
+ end
17
+
18
+
19
+ test "should have width of 100" do
20
+ assert_equal 100, @engine.width
21
+ end
22
+
23
+ test "should have height of 100" do
24
+ assert_equal 100, @engine.height
25
+ end
26
+
27
+ test "should have correct images" do
28
+ assert_equal @images, @engine.images
29
+ end
30
+
31
+ test "raises Compass::Error when calling save" do
32
+ begin
33
+ @engine.save('foo')
34
+ assert false, '#save did not raise an exception'
35
+ rescue Compass::Error
36
+ assert true
37
+ end
38
+ end
39
+
40
+ test "raises Compass::Error when calling construct_sprite" do
41
+ begin
42
+ @engine.construct_sprite
43
+ assert false, '#construct_sprite did not raise an exception'
44
+ rescue Compass::Error
45
+ assert true
46
+ end
47
+ end
48
48
  end
@@ -1,58 +1,58 @@
1
- require 'test_helper'
2
-
3
- class ImageRowTest < Test::Unit::TestCase
4
- include SpriteHelper
5
- def setup
6
- clean_up_sprites
7
- create_sprite_temp
8
- file = StringIO.new("images_path = #{@images_src_path.inspect}\n")
9
- Compass.add_configuration(file, "sprite_config")
10
- @filenames = %w(large.png large_square.png medium.png tall.png small.png)
11
- @image_files = Dir["#{@images_src_path}/image_row/*.png"].sort
12
- @images = @image_files.map do |img|
13
- img.gsub!("#{@images_src_path}/", '')
14
- Compass::SassExtensions::Sprites::Image.new(nil, img, {})
15
- end
16
- image_row(1000)
17
- end
18
-
19
- def teardown
20
- clean_up_sprites
21
- end
22
-
23
- def image_row(max)
24
- @image_row = Compass::SassExtensions::Sprites::ImageRow.new(max)
25
- end
26
-
27
- def populate_row
28
- @images.each do |image|
29
- assert @image_row.add(image)
30
- end
31
- end
32
-
33
- it "should return false if image will not fit in row" do
34
- image_row(100)
35
- img = Compass::SassExtensions::Sprites::Image.new(nil, File.join('image_row', 'large.png'), {})
36
- assert !@image_row.add(img)
37
- end
38
-
39
- it "should have 5 images" do
40
- populate_row
41
- assert_equal 5, @image_row.images.size
42
- end
43
-
44
- it "should return max image width" do
45
- populate_row
46
- assert_equal 400, @image_row.width
47
- end
48
-
49
- it "should return max image height" do
50
- populate_row
51
- assert_equal 40, @image_row.height
52
- end
53
-
54
- it "should have an efficiency rating" do
55
- populate_row
56
- assert_equal 1 - (580.0 / 1000.0), @image_row.efficiency
57
- end
1
+ require 'test_helper'
2
+
3
+ class ImageRowTest < Test::Unit::TestCase
4
+ include SpriteHelper
5
+ def setup
6
+ clean_up_sprites
7
+ create_sprite_temp
8
+ file = StringIO.new("images_path = #{@images_src_path.inspect}\n")
9
+ Compass.add_configuration(file, "sprite_config")
10
+ @filenames = %w(large.png large_square.png medium.png tall.png small.png)
11
+ @image_files = Dir["#{@images_src_path}/image_row/*.png"].sort
12
+ @images = @image_files.map do |img|
13
+ img.gsub!("#{@images_src_path}/", '')
14
+ Compass::SassExtensions::Sprites::Image.new(nil, img, {})
15
+ end
16
+ image_row(1000)
17
+ end
18
+
19
+ def teardown
20
+ clean_up_sprites
21
+ end
22
+
23
+ def image_row(max)
24
+ @image_row = Compass::SassExtensions::Sprites::ImageRow.new(max)
25
+ end
26
+
27
+ def populate_row
28
+ @images.each do |image|
29
+ assert @image_row.add(image)
30
+ end
31
+ end
32
+
33
+ it "should return false if image will not fit in row" do
34
+ image_row(100)
35
+ img = Compass::SassExtensions::Sprites::Image.new(nil, File.join('image_row', 'large.png'), {})
36
+ assert !@image_row.add(img)
37
+ end
38
+
39
+ it "should have 5 images" do
40
+ populate_row
41
+ assert_equal 5, @image_row.images.size
42
+ end
43
+
44
+ it "should return max image width" do
45
+ populate_row
46
+ assert_equal 400, @image_row.width
47
+ end
48
+
49
+ it "should return max image height" do
50
+ populate_row
51
+ assert_equal 40, @image_row.height
52
+ end
53
+
54
+ it "should have an efficiency rating" do
55
+ populate_row
56
+ assert_equal 1 - (580.0 / 1000.0), @image_row.efficiency
57
+ end
58
58
  end
@@ -1,99 +1,99 @@
1
- require 'test_helper'
2
- require 'mocha'
3
- require 'ostruct'
4
-
5
- class SpritesImageTest < Test::Unit::TestCase
6
- include SpriteHelper
7
-
8
- def setup
9
- create_sprite_temp
10
- end
11
-
12
- def teardown
13
- clean_up_sprites
14
- end
15
-
16
- SPRITE_FILENAME = 'selectors/ten-by-ten.png'
17
-
18
- def sprite_path
19
- File.join(@images_tmp_path, SPRITE_FILENAME)
20
- end
21
-
22
- def sprite_name
23
- File.basename(SPRITE_FILENAME, '.png')
24
- end
25
-
26
- def digest
27
- Digest::MD5.file(sprite_path).hexdigest
28
- end
29
-
30
- def test_map(options ={})
31
- options = {'cleanup' => Sass::Script::Bool.new(true), 'layout' => Sass::Script::String.new('vertical')}.merge(options)
32
- map = sprite_map_test(options)
33
- end
34
-
35
- def test_image(options ={})
36
- test_map(options).images.first
37
- end
38
-
39
- test 'initialize' do
40
- image = test_image
41
- assert_equal sprite_name, image.name
42
- assert_equal sprite_path, image.file
43
- assert_equal SPRITE_FILENAME, image.relative_file
44
- assert_equal 10, image.width
45
- assert_equal 10, image.height
46
- assert_equal digest, image.digest
47
- assert_equal 0, image.top
48
- assert_equal 0, image.left
49
- end
50
-
51
- test 'hover' do
52
- assert_equal 'ten-by-ten_hover', test_image.hover.name
53
- end
54
-
55
- test 'no parent' do
56
- assert_nil test_image.parent
57
- end
58
-
59
- test 'image type is "global" should raise exception' do
60
- assert_raise ::Compass::SpriteException do
61
- image = test_image "selectors_ten_by_ten_repeat" => Sass::Script::String.new('global')
62
- image.repeat
63
- end
64
- end
65
-
66
- test 'image type is "no-repeat"' do
67
- img = test_image
68
- assert_equal 'no-repeat', img.repeat
69
- assert img.no_repeat?
70
- end
71
-
72
- test 'image repeat-x' do
73
- img = test_image "selectors_ten_by_ten_repeat" => Sass::Script::String.new('repeat-x')
74
- assert img.repeat_x?
75
- end
76
-
77
- test 'image position' do
78
- image = test_image "selectors_ten_by_ten_position" => Sass::Script::Number.new(100, ["px"])
79
- assert_equal 100, image.position.value
80
- end
81
-
82
- test 'image spacing' do
83
- @spacing = 10
84
- image = test_image "spacing" => Sass::Script::Number.new(100, ["px"])
85
- assert_equal 100, image.spacing
86
- end
87
-
88
- test 'offset' do
89
- image = test_image "selectors_ten_by_ten_position" => Sass::Script::Number.new(100, ["px"])
90
- assert_equal 100, image.offset
91
- end
92
-
93
- test 'neither, uses 0' do
94
- img = test_image
95
- img.position.stubs(:unitless?).returns(false)
96
- assert_equal 0, img.offset
97
- end
98
-
99
- end
1
+ require 'test_helper'
2
+ require 'mocha'
3
+ require 'ostruct'
4
+
5
+ class SpritesImageTest < Test::Unit::TestCase
6
+ include SpriteHelper
7
+
8
+ def setup
9
+ create_sprite_temp
10
+ end
11
+
12
+ def teardown
13
+ clean_up_sprites
14
+ end
15
+
16
+ SPRITE_FILENAME = 'selectors/ten-by-ten.png'
17
+
18
+ def sprite_path
19
+ File.join(@images_tmp_path, SPRITE_FILENAME)
20
+ end
21
+
22
+ def sprite_name
23
+ File.basename(SPRITE_FILENAME, '.png')
24
+ end
25
+
26
+ def digest
27
+ Digest::MD5.file(sprite_path).hexdigest
28
+ end
29
+
30
+ def test_map(options ={})
31
+ options = {'cleanup' => Sass::Script::Bool.new(true), 'layout' => Sass::Script::String.new('vertical')}.merge(options)
32
+ map = sprite_map_test(options)
33
+ end
34
+
35
+ def test_image(options ={})
36
+ test_map(options).images.first
37
+ end
38
+
39
+ test 'initialize' do
40
+ image = test_image
41
+ assert_equal sprite_name, image.name
42
+ assert_equal sprite_path, image.file
43
+ assert_equal SPRITE_FILENAME, image.relative_file
44
+ assert_equal 10, image.width
45
+ assert_equal 10, image.height
46
+ assert_equal digest, image.digest
47
+ assert_equal 0, image.top
48
+ assert_equal 0, image.left
49
+ end
50
+
51
+ test 'hover' do
52
+ assert_equal 'ten-by-ten_hover', test_image.hover.name
53
+ end
54
+
55
+ test 'no parent' do
56
+ assert_nil test_image.parent
57
+ end
58
+
59
+ test 'image type is "global" should raise exception' do
60
+ assert_raise ::Compass::SpriteException do
61
+ image = test_image "selectors_ten_by_ten_repeat" => Sass::Script::String.new('global')
62
+ image.repeat
63
+ end
64
+ end
65
+
66
+ test 'image type is "no-repeat"' do
67
+ img = test_image
68
+ assert_equal 'no-repeat', img.repeat
69
+ assert img.no_repeat?
70
+ end
71
+
72
+ test 'image repeat-x' do
73
+ img = test_image "selectors_ten_by_ten_repeat" => Sass::Script::String.new('repeat-x')
74
+ assert img.repeat_x?
75
+ end
76
+
77
+ test 'image position' do
78
+ image = test_image "selectors_ten_by_ten_position" => Sass::Script::Number.new(100, ["px"])
79
+ assert_equal 100, image.position.value
80
+ end
81
+
82
+ test 'image spacing' do
83
+ @spacing = 10
84
+ image = test_image "spacing" => Sass::Script::Number.new(100, ["px"])
85
+ assert_equal 100, image.spacing
86
+ end
87
+
88
+ test 'offset' do
89
+ image = test_image "selectors_ten_by_ten_position" => Sass::Script::Number.new(100, ["px"])
90
+ assert_equal 100, image.offset
91
+ end
92
+
93
+ test 'neither, uses 0' do
94
+ img = test_image
95
+ img.position.stubs(:unitless?).returns(false)
96
+ assert_equal 0, img.offset
97
+ end
98
+
99
+ end
@@ -1,91 +1,91 @@
1
- require 'test_helper'
2
-
3
- class ImporterTest < Test::Unit::TestCase
4
- include SpriteHelper
5
-
6
- def setup
7
- create_sprite_temp
8
- file = StringIO.new("images_path = #{@images_src_path.inspect}\n")
9
- Compass.add_configuration(file, "sprite_config")
10
- @importer = Compass::SpriteImporter.new
11
- end
12
-
13
- def teardown
14
- Compass.reset_configuration!
15
- end
16
-
17
- def options
18
- {:foo => 'bar'}
19
- end
20
-
21
- test "should use search path to find sprites" do
22
- Compass.reset_configuration!
23
- uri = 'foo/*.png'
24
- other_folder = File.join(@images_tmp_path, '../other-temp')
25
- FileUtils.mkdir_p other_folder
26
- FileUtils.mkdir_p File.join(other_folder, 'foo')
27
- %w(my bar).each do |file|
28
- FileUtils.touch(File.join(other_folder, "foo/#{file}.png"))
29
- end
30
- config = Compass::Configuration::Data.new('config')
31
- config.images_path = @images_tmp_path
32
- config.sprite_load_path = [@images_tmp_path, other_folder]
33
- Compass.add_configuration(config, "sprite_config")
34
- importer = Compass::SpriteImporter.new
35
- assert_equal 2, Compass.configuration.sprite_load_path.compact.size
36
- assert Compass.configuration.sprite_load_path.include?(other_folder)
37
- assert_equal ["bar", "my"], Compass::SpriteImporter.sprite_names(uri)
38
-
39
- FileUtils.rm_rf other_folder
40
- end
41
-
42
- test "name should return the sprite name" do
43
- assert_equal 'selectors', Compass::SpriteImporter.sprite_name(URI)
44
- end
45
-
46
- test "path should return the sprite path" do
47
- assert_equal 'selectors', Compass::SpriteImporter.path(URI)
48
- end
49
-
50
- test "should return all the sprite names" do
51
- assert_equal ["ten-by-ten", "ten-by-ten_active", "ten-by-ten_hover", "ten-by-ten_target"], Compass::SpriteImporter.sprite_names(URI)
52
- end
53
-
54
- test "should have correct mtime" do
55
- thirtydays = Time.now.to_i + (60*60*24*30)
56
- file = Dir[File.join(@images_src_path, URI)].sort.first
57
- File.utime(thirtydays, thirtydays, file)
58
- assert_equal thirtydays, File.mtime(file).to_i
59
- assert_equal thirtydays, @importer.mtime(URI, {}).to_i
60
- end
61
-
62
- test "should return sass engine on find" do
63
- assert @importer.find(URI, {}).is_a?(Sass::Engine)
64
- end
65
-
66
- test "sass options should contain options" do
67
- opts = Compass::SpriteImporter.sass_options('foo', @importer, options)
68
- assert_equal 'bar', opts[:foo]
69
- end
70
-
71
- test "verify that the sass_engine passes the correct filename" do
72
- importer = Compass::SpriteImporter.new
73
- engine = Compass::SpriteImporter.sass_engine(URI, 'foo', importer, options)
74
- assert_equal engine.options[:filename], URI
75
- end
76
-
77
- test "should fail given bad sprite extensions" do
78
- @images_src_path = File.join(File.dirname(__FILE__), '..', '..', 'fixtures', 'sprites', 'public', 'images')
79
- file = StringIO.new("images_path = #{@images_src_path.inspect}\n")
80
- Compass.add_configuration(file, "sprite_config")
81
- importer = Compass::SpriteImporter.new
82
- uri = "bad_extensions/*.jpg"
83
- begin
84
- Compass::SpriteImporter.sass_engine(uri, Compass::SpriteImporter.sprite_name(uri), importer, {})
85
- assert false, "An invalid sprite file made it past validation."
86
- rescue Compass::Error => e
87
- assert e.message.include?("invalid sprite path")
88
- end
89
- end
90
-
1
+ require 'test_helper'
2
+
3
+ class ImporterTest < Test::Unit::TestCase
4
+ include SpriteHelper
5
+
6
+ def setup
7
+ create_sprite_temp
8
+ file = StringIO.new("images_path = #{@images_src_path.inspect}\n")
9
+ Compass.add_configuration(file, "sprite_config")
10
+ @importer = Compass::SpriteImporter.new
11
+ end
12
+
13
+ def teardown
14
+ Compass.reset_configuration!
15
+ end
16
+
17
+ def options
18
+ {:foo => 'bar'}
19
+ end
20
+
21
+ test "should use search path to find sprites" do
22
+ Compass.reset_configuration!
23
+ uri = 'foo/*.png'
24
+ other_folder = File.join(@images_tmp_path, '../other-temp')
25
+ FileUtils.mkdir_p other_folder
26
+ FileUtils.mkdir_p File.join(other_folder, 'foo')
27
+ %w(my bar).each do |file|
28
+ FileUtils.touch(File.join(other_folder, "foo/#{file}.png"))
29
+ end
30
+ config = Compass::Configuration::Data.new('config')
31
+ config.images_path = @images_tmp_path
32
+ config.sprite_load_path = [@images_tmp_path, other_folder]
33
+ Compass.add_configuration(config, "sprite_config")
34
+ importer = Compass::SpriteImporter.new
35
+ assert_equal 2, Compass.configuration.sprite_load_path.compact.size
36
+ assert Compass.configuration.sprite_load_path.include?(other_folder)
37
+ assert_equal ["bar", "my"], Compass::SpriteImporter.sprite_names(uri)
38
+
39
+ FileUtils.rm_rf other_folder
40
+ end
41
+
42
+ test "name should return the sprite name" do
43
+ assert_equal 'selectors', Compass::SpriteImporter.sprite_name(URI)
44
+ end
45
+
46
+ test "path should return the sprite path" do
47
+ assert_equal 'selectors', Compass::SpriteImporter.path(URI)
48
+ end
49
+
50
+ test "should return all the sprite names" do
51
+ assert_equal ["ten-by-ten", "ten-by-ten_active", "ten-by-ten_hover", "ten-by-ten_target"], Compass::SpriteImporter.sprite_names(URI)
52
+ end
53
+
54
+ test "should have correct mtime" do
55
+ thirtydays = Time.now.to_i + (60*60*24*30)
56
+ file = Dir[File.join(@images_src_path, URI)].sort.first
57
+ File.utime(thirtydays, thirtydays, file)
58
+ assert_equal thirtydays, File.mtime(file).to_i
59
+ assert_equal thirtydays, @importer.mtime(URI, {}).to_i
60
+ end
61
+
62
+ test "should return sass engine on find" do
63
+ assert @importer.find(URI, {}).is_a?(Sass::Engine)
64
+ end
65
+
66
+ test "sass options should contain options" do
67
+ opts = Compass::SpriteImporter.sass_options('foo', @importer, options)
68
+ assert_equal 'bar', opts[:foo]
69
+ end
70
+
71
+ test "verify that the sass_engine passes the correct filename" do
72
+ importer = Compass::SpriteImporter.new
73
+ engine = Compass::SpriteImporter.sass_engine(URI, 'foo', importer, options)
74
+ assert_equal engine.options[:filename], URI
75
+ end
76
+
77
+ test "should fail given bad sprite extensions" do
78
+ @images_src_path = File.join(File.dirname(__FILE__), '..', '..', 'fixtures', 'sprites', 'public', 'images')
79
+ file = StringIO.new("images_path = #{@images_src_path.inspect}\n")
80
+ Compass.add_configuration(file, "sprite_config")
81
+ importer = Compass::SpriteImporter.new
82
+ uri = "bad_extensions/*.jpg"
83
+ begin
84
+ Compass::SpriteImporter.sass_engine(uri, Compass::SpriteImporter.sprite_name(uri), importer, {})
85
+ assert false, "An invalid sprite file made it past validation."
86
+ rescue Compass::Error => e
87
+ assert e.message.include?("invalid sprite path")
88
+ end
89
+ end
90
+
91
91
  end