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.
- checksums.yaml +4 -4
- data/LICENSE.markdown +29 -29
- data/README.markdown +39 -39
- data/Rakefile +157 -157
- data/VERSION.yml +5 -5
- data/bin/compass +45 -45
- data/examples/README.markdown +3 -3
- data/examples/blueprint_default/config.rb +7 -7
- data/examples/blueprint_default/index.html.haml +85 -85
- data/examples/blueprint_default/parts/elements.html.haml +282 -282
- data/examples/blueprint_default/parts/forms.html.haml +200 -200
- data/examples/blueprint_default/parts/grid.html.haml +274 -274
- data/examples/blueprint_default/src/ie.scss +3 -3
- data/examples/blueprint_default/src/print.scss +3 -3
- data/examples/blueprint_default/src/screen.scss +9 -9
- data/examples/blueprint_plugins/config.rb +8 -8
- data/examples/blueprint_plugins/index.html.haml +96 -96
- data/examples/blueprint_plugins/plugins/buttons.html.haml +67 -67
- data/examples/blueprint_plugins/plugins/fancy_type.html.haml +100 -100
- data/examples/blueprint_plugins/plugins/link_icons.html.haml +61 -61
- data/examples/blueprint_plugins/plugins/rtl.html.haml +100 -100
- data/examples/blueprint_plugins/src/buttons.scss +47 -47
- data/examples/blueprint_plugins/src/ie.scss +3 -3
- data/examples/blueprint_plugins/src/link_icons.scss +13 -13
- data/examples/blueprint_plugins/src/print.scss +3 -3
- data/examples/blueprint_plugins/src/rtl_screen.scss +15 -15
- data/examples/blueprint_plugins/src/screen.scss +12 -12
- data/examples/blueprint_scoped/src/ie.scss +4 -4
- data/examples/blueprint_scoped/src/print.scss +4 -4
- data/examples/blueprint_scoped/src/screen.scss +5 -5
- data/examples/blueprint_scoped_form/src/ie.scss +3 -3
- data/examples/blueprint_scoped_form/src/print.scss +3 -3
- data/examples/blueprint_scoped_form/src/screen.scss +15 -15
- data/examples/blueprint_semantic/config.rb +7 -7
- data/examples/blueprint_semantic/index.html.haml +86 -86
- data/examples/blueprint_semantic/parts/fancy_type.html.haml +100 -100
- data/examples/blueprint_semantic/parts/liquid.html.haml +100 -100
- data/examples/blueprint_semantic/src/ie.scss +3 -3
- data/examples/blueprint_semantic/src/liquid.scss +69 -69
- data/examples/blueprint_semantic/src/print.scss +3 -3
- data/examples/blueprint_semantic/src/screen.scss +69 -69
- data/examples/compass/bootstrap.rb +3 -3
- data/examples/compass/clean.rb +1 -1
- data/examples/compass/compass.html.haml +39 -39
- data/examples/compass/config.rb +8 -8
- data/examples/compass/pie.html.haml +73 -73
- data/examples/compass/sprites.html.haml +37 -37
- data/examples/compass/src/bp_layout.scss +18 -18
- data/examples/compass/src/compass.scss +46 -46
- data/examples/compass/src/pie.scss +110 -110
- data/examples/compass/src/sprites.scss +24 -24
- data/examples/compass/src/sticky_footer.scss +11 -11
- data/examples/compass/src/utilities.scss +108 -108
- data/examples/compass/sticky_footer.html.haml +13 -13
- data/examples/compass/utilities.html.haml +189 -189
- data/examples/css3/bootstrap.rb +3 -3
- data/examples/css3/clean.rb +2 -2
- data/examples/css3/config.rb +6 -6
- data/examples/css3/extensions/fancy-fonts/templates/project/fancy-fonts.sass +10 -10
- data/examples/css3/extensions/fancy-fonts/templates/project/manifest.rb +6 -6
- data/examples/css3/gradients.html.haml +68 -68
- data/examples/css3/index.html.haml +57 -57
- data/examples/css3/src/_base.scss +13 -13
- data/examples/css3/src/fancy-fonts.scss +13 -13
- data/examples/css3/src/gradients.scss +85 -85
- data/examples/css3/src/main.scss +108 -108
- data/examples/downloader.rb +58 -58
- data/examples/ninesixty/bootstrap.rb +4 -4
- data/examples/ninesixty/clean.rb +1 -1
- data/examples/ninesixty/config.rb +9 -9
- data/examples/ninesixty/src/grid.scss +15 -15
- data/examples/ninesixty/src/text.scss +8 -8
- data/examples/susy/bootstrap.rb +3 -3
- data/examples/susy/clean.rb +1 -1
- data/examples/susy/config.rb +9 -9
- data/examples/susy/src/_base.scss +61 -61
- data/examples/susy/src/_defaults.scss +140 -140
- data/examples/susy/src/screen.scss +100 -100
- data/examples/yui/bootstrap.rb +2 -2
- data/examples/yui/clean.rb +1 -1
- data/examples/yui/divisions.html.haml +179 -179
- data/examples/yui/index.html.haml +19 -19
- data/examples/yui/src/screen.scss +13 -13
- data/examples/yui/sub_divisions.html.haml +169 -169
- data/examples/yui/templates.html.haml +54 -54
- data/examples/yui/typography.html.haml +132 -132
- data/features/command_line.feature +292 -292
- data/features/extensions.feature +27 -27
- data/features/step_definitions/command_line_steps.rb +268 -268
- data/features/step_definitions/extension_steps.rb +24 -24
- data/frameworks/blueprint/stylesheets/_blueprint.scss +37 -37
- data/frameworks/blueprint/stylesheets/blueprint/_buttons.scss +100 -100
- data/frameworks/blueprint/stylesheets/blueprint/_colors.scss +36 -36
- data/frameworks/blueprint/stylesheets/blueprint/_debug.scss +28 -28
- data/frameworks/blueprint/stylesheets/blueprint/_fancy-type.scss +88 -88
- data/frameworks/blueprint/stylesheets/blueprint/_form.scss +66 -66
- data/frameworks/blueprint/stylesheets/blueprint/_grid.scss +258 -258
- data/frameworks/blueprint/stylesheets/blueprint/_ie.scss +111 -111
- data/frameworks/blueprint/stylesheets/blueprint/_interaction.scss +66 -66
- data/frameworks/blueprint/stylesheets/blueprint/_link-icons.scss +37 -37
- data/frameworks/blueprint/stylesheets/blueprint/_liquid.scss +152 -152
- data/frameworks/blueprint/stylesheets/blueprint/_print.scss +86 -86
- data/frameworks/blueprint/stylesheets/blueprint/_reset.scss +2 -2
- data/frameworks/blueprint/stylesheets/blueprint/_rtl.scss +121 -121
- data/frameworks/blueprint/stylesheets/blueprint/_scaffolding.scss +52 -52
- data/frameworks/blueprint/stylesheets/blueprint/_typography.scss +90 -90
- data/frameworks/blueprint/stylesheets/blueprint/_utilities.scss +37 -37
- data/frameworks/blueprint/stylesheets/blueprint/reset/_utilities.scss +83 -83
- data/frameworks/blueprint/templates/basic/ie.sass +4 -4
- data/frameworks/blueprint/templates/basic/manifest.rb +30 -30
- data/frameworks/blueprint/templates/basic/partials/_base.sass +10 -10
- data/frameworks/blueprint/templates/basic/print.sass +4 -4
- data/frameworks/blueprint/templates/basic/screen.sass +12 -12
- data/frameworks/blueprint/templates/buttons/buttons.sass +49 -49
- data/frameworks/blueprint/templates/buttons/buttons/cross.png +0 -0
- data/frameworks/blueprint/templates/buttons/buttons/key.png +0 -0
- data/frameworks/blueprint/templates/buttons/buttons/tick.png +0 -0
- data/frameworks/blueprint/templates/buttons/manifest.rb +17 -17
- data/frameworks/blueprint/templates/link_icons/link_icons.sass +13 -13
- data/frameworks/blueprint/templates/link_icons/manifest.rb +23 -23
- data/frameworks/blueprint/templates/project/ie.sass +16 -16
- data/frameworks/blueprint/templates/project/manifest.rb +30 -30
- data/frameworks/blueprint/templates/project/partials/_base.sass +11 -11
- data/frameworks/blueprint/templates/project/print.sass +7 -7
- data/frameworks/blueprint/templates/project/screen.sass +46 -46
- data/frameworks/blueprint/templates/semantic/ie.sass +16 -16
- data/frameworks/blueprint/templates/semantic/manifest.rb +33 -33
- data/frameworks/blueprint/templates/semantic/partials/_base.sass +10 -10
- data/frameworks/blueprint/templates/semantic/partials/_form.sass +5 -5
- data/frameworks/blueprint/templates/semantic/partials/_page.sass +17 -17
- data/frameworks/blueprint/templates/semantic/partials/_two_col.sass +38 -38
- data/frameworks/blueprint/templates/semantic/print.sass +4 -4
- data/frameworks/blueprint/templates/semantic/screen.sass +14 -14
- data/frameworks/compass/stylesheets/_compass.scss +3 -3
- data/frameworks/compass/stylesheets/_lemonade.scss +37 -37
- data/frameworks/compass/stylesheets/compass/_css3.scss +20 -20
- data/frameworks/compass/stylesheets/compass/_layout.scss +3 -3
- data/frameworks/compass/stylesheets/compass/_reset-legacy.scss +3 -3
- data/frameworks/compass/stylesheets/compass/_reset.scss +3 -3
- data/frameworks/compass/stylesheets/compass/_support.scss +40 -40
- data/frameworks/compass/stylesheets/compass/_typography.scss +4 -4
- data/frameworks/compass/stylesheets/compass/_utilities.scss +9 -9
- data/frameworks/compass/stylesheets/compass/css3/_appearance.scss +17 -17
- data/frameworks/compass/stylesheets/compass/css3/_background-clip.scss +43 -43
- data/frameworks/compass/stylesheets/compass/css3/_background-origin.scss +42 -42
- data/frameworks/compass/stylesheets/compass/css3/_background-size.scss +26 -26
- data/frameworks/compass/stylesheets/compass/css3/_border-radius.scss +130 -130
- data/frameworks/compass/stylesheets/compass/css3/_box-shadow.scss +76 -76
- data/frameworks/compass/stylesheets/compass/css3/_box-sizing.scss +13 -13
- data/frameworks/compass/stylesheets/compass/css3/_box.scss +111 -111
- data/frameworks/compass/stylesheets/compass/css3/_columns.scss +156 -156
- data/frameworks/compass/stylesheets/compass/css3/_filter.scss +23 -23
- data/frameworks/compass/stylesheets/compass/css3/_font-face.scss +48 -48
- data/frameworks/compass/stylesheets/compass/css3/_hyphenation.scss +77 -77
- data/frameworks/compass/stylesheets/compass/css3/_images.scss +132 -132
- data/frameworks/compass/stylesheets/compass/css3/_inline-block.scss +22 -22
- data/frameworks/compass/stylesheets/compass/css3/_opacity.scss +19 -19
- data/frameworks/compass/stylesheets/compass/css3/_pie.scss +72 -72
- data/frameworks/compass/stylesheets/compass/css3/_regions.scss +21 -21
- data/frameworks/compass/stylesheets/compass/css3/_shared.scss +38 -38
- data/frameworks/compass/stylesheets/compass/css3/_text-shadow.scss +87 -87
- data/frameworks/compass/stylesheets/compass/css3/_transform-legacy.scss +87 -87
- data/frameworks/compass/stylesheets/compass/css3/_transform.scss +598 -598
- data/frameworks/compass/stylesheets/compass/css3/_transition.scss +221 -221
- data/frameworks/compass/stylesheets/compass/css3/_user-interface.scss +17 -17
- data/frameworks/compass/stylesheets/compass/layout/_grid-background.scss +178 -178
- data/frameworks/compass/stylesheets/compass/layout/_sticky-footer.scss +23 -23
- data/frameworks/compass/stylesheets/compass/layout/_stretching.scss +23 -23
- data/frameworks/compass/stylesheets/compass/reset/_utilities-legacy.scss +135 -135
- data/frameworks/compass/stylesheets/compass/reset/_utilities.scss +142 -142
- data/frameworks/compass/stylesheets/compass/typography/_links.scss +3 -3
- data/frameworks/compass/stylesheets/compass/typography/_lists.scss +4 -4
- data/frameworks/compass/stylesheets/compass/typography/_text.scss +4 -4
- data/frameworks/compass/stylesheets/compass/typography/_vertical_rhythm.scss +221 -221
- data/frameworks/compass/stylesheets/compass/typography/links/_hover-link.scss +5 -5
- data/frameworks/compass/stylesheets/compass/typography/links/_link-colors.scss +28 -28
- data/frameworks/compass/stylesheets/compass/typography/links/_unstyled-link.scss +7 -7
- data/frameworks/compass/stylesheets/compass/typography/lists/_bullets.scss +34 -34
- data/frameworks/compass/stylesheets/compass/typography/lists/_horizontal-list.scss +61 -61
- data/frameworks/compass/stylesheets/compass/typography/lists/_inline-block-list.scss +50 -50
- data/frameworks/compass/stylesheets/compass/typography/lists/_inline-list.scss +44 -44
- data/frameworks/compass/stylesheets/compass/typography/text/_ellipsis.scss +25 -25
- data/frameworks/compass/stylesheets/compass/typography/text/_force-wrap.scss +12 -12
- data/frameworks/compass/stylesheets/compass/typography/text/_nowrap.scss +2 -2
- data/frameworks/compass/stylesheets/compass/typography/text/_replacement.scss +68 -68
- data/frameworks/compass/stylesheets/compass/utilities/_general.scss +6 -6
- data/frameworks/compass/stylesheets/compass/utilities/_links.scss +5 -5
- data/frameworks/compass/stylesheets/compass/utilities/_lists.scss +6 -6
- data/frameworks/compass/stylesheets/compass/utilities/_print.scss +17 -17
- data/frameworks/compass/stylesheets/compass/utilities/_sprites.scss +2 -2
- data/frameworks/compass/stylesheets/compass/utilities/_tables.scss +3 -3
- data/frameworks/compass/stylesheets/compass/utilities/_text.scss +5 -5
- data/frameworks/compass/stylesheets/compass/utilities/color/_contrast.scss +27 -27
- data/frameworks/compass/stylesheets/compass/utilities/general/_clearfix.scss +44 -44
- data/frameworks/compass/stylesheets/compass/utilities/general/_float.scss +29 -29
- data/frameworks/compass/stylesheets/compass/utilities/general/_hacks.scss +46 -46
- data/frameworks/compass/stylesheets/compass/utilities/general/_min.scss +16 -16
- data/frameworks/compass/stylesheets/compass/utilities/general/_reset.scss +1 -1
- data/frameworks/compass/stylesheets/compass/utilities/general/_tabs.scss +1 -1
- data/frameworks/compass/stylesheets/compass/utilities/general/_tag-cloud.scss +18 -18
- data/frameworks/compass/stylesheets/compass/utilities/links/_hover-link.scss +3 -3
- data/frameworks/compass/stylesheets/compass/utilities/links/_link-colors.scss +3 -3
- data/frameworks/compass/stylesheets/compass/utilities/links/_unstyled-link.scss +3 -3
- data/frameworks/compass/stylesheets/compass/utilities/lists/_bullets.scss +3 -3
- data/frameworks/compass/stylesheets/compass/utilities/lists/_horizontal-list.scss +3 -3
- data/frameworks/compass/stylesheets/compass/utilities/lists/_inline-block-list.scss +3 -3
- data/frameworks/compass/stylesheets/compass/utilities/lists/_inline-list.scss +3 -3
- data/frameworks/compass/stylesheets/compass/utilities/sprites/_base.scss +65 -65
- data/frameworks/compass/stylesheets/compass/utilities/sprites/_sprite-img.scss +78 -78
- data/frameworks/compass/stylesheets/compass/utilities/tables/_alternating-rows-and-columns.scss +22 -22
- data/frameworks/compass/stylesheets/compass/utilities/tables/_borders.scss +33 -33
- data/frameworks/compass/stylesheets/compass/utilities/tables/_scaffolding.scss +9 -9
- data/frameworks/compass/stylesheets/compass/utilities/text/_ellipsis.scss +3 -3
- data/frameworks/compass/stylesheets/compass/utilities/text/_nowrap.scss +3 -3
- data/frameworks/compass/stylesheets/compass/utilities/text/_replacement.scss +3 -3
- data/frameworks/compass/templates/ellipsis/ellipsis.sass +8 -8
- data/frameworks/compass/templates/ellipsis/manifest.rb +26 -26
- data/frameworks/compass/templates/ellipsis/xml/ellipsis.xml +13 -13
- data/frameworks/compass/templates/extension/manifest.rb +26 -26
- data/frameworks/compass/templates/extension/stylesheets/main.sass +1 -1
- data/frameworks/compass/templates/extension/templates/project/manifest.rb +2 -2
- data/frameworks/compass/templates/extension/templates/project/screen.sass +1 -1
- data/frameworks/compass/templates/pie/LICENSE +12 -12
- data/frameworks/compass/templates/pie/LICENSE-APACHE2.txt +13 -13
- data/frameworks/compass/templates/pie/LICENSE-GPL2.txt +277 -277
- data/frameworks/compass/templates/pie/PIE.htc +96 -96
- data/frameworks/compass/templates/pie/manifest.rb +39 -39
- data/frameworks/compass/templates/pie/pie.scss +73 -73
- data/frameworks/compass/templates/project/USAGE.markdown +32 -32
- data/frameworks/compass/templates/project/ie.sass +6 -6
- data/frameworks/compass/templates/project/manifest.rb +3 -3
- data/frameworks/compass/templates/project/print.sass +6 -6
- data/frameworks/compass/templates/project/screen.sass +7 -7
- data/lib/compass.rb +37 -37
- data/lib/compass/actions.rb +115 -115
- data/lib/compass/app_integration.rb +39 -39
- data/lib/compass/app_integration/rails.rb +18 -18
- data/lib/compass/app_integration/stand_alone.rb +22 -22
- data/lib/compass/app_integration/stand_alone/configuration_defaults.rb +32 -32
- data/lib/compass/app_integration/stand_alone/installer.rb +83 -83
- data/lib/compass/browser_support.rb +62 -62
- data/lib/compass/commands.rb +12 -12
- data/lib/compass/commands/base.rb +44 -44
- data/lib/compass/commands/clean_project.rb +79 -79
- data/lib/compass/commands/create_project.rb +131 -131
- data/lib/compass/commands/default.rb +50 -50
- data/lib/compass/commands/extension_command.rb +60 -60
- data/lib/compass/commands/generate_grid_background.rb +96 -96
- data/lib/compass/commands/help.rb +85 -85
- data/lib/compass/commands/imports.rb +35 -35
- data/lib/compass/commands/installer_command.rb +32 -32
- data/lib/compass/commands/interactive.rb +61 -61
- data/lib/compass/commands/list_frameworks.rb +38 -38
- data/lib/compass/commands/print_version.rb +99 -99
- data/lib/compass/commands/project_base.rb +103 -103
- data/lib/compass/commands/project_stats.rb +178 -178
- data/lib/compass/commands/project_structure.rb +93 -93
- data/lib/compass/commands/registry.rb +40 -40
- data/lib/compass/commands/sprite.rb +89 -89
- data/lib/compass/commands/stamp_pattern.rb +90 -90
- data/lib/compass/commands/unpack_extension.rb +120 -120
- data/lib/compass/commands/update_project.rb +139 -139
- data/lib/compass/commands/validate_project.rb +77 -77
- data/lib/compass/commands/watch_project.rb +170 -170
- data/lib/compass/commands/write_configuration.rb +125 -125
- data/lib/compass/compiler.rb +200 -200
- data/lib/compass/configuration.rb +91 -91
- data/lib/compass/configuration/adapters.rb +77 -77
- data/lib/compass/configuration/comments.rb +59 -59
- data/lib/compass/configuration/data.rb +193 -193
- data/lib/compass/configuration/defaults.rb +187 -187
- data/lib/compass/configuration/file_data.rb +21 -21
- data/lib/compass/configuration/helpers.rb +160 -160
- data/lib/compass/configuration/inheritance.rb +304 -304
- data/lib/compass/configuration/paths.rb +19 -19
- data/lib/compass/configuration/serialization.rb +88 -88
- data/lib/compass/dependencies.rb +12 -12
- data/lib/compass/errors.rb +11 -11
- data/lib/compass/exec.rb +23 -23
- data/lib/compass/exec/command_option_parser.rb +23 -23
- data/lib/compass/exec/global_options_parser.rb +63 -63
- data/lib/compass/exec/helpers.rb +21 -21
- data/lib/compass/exec/project_options_parser.rb +66 -66
- data/lib/compass/exec/sub_command_ui.rb +51 -51
- data/lib/compass/exec/switch_ui.rb +179 -179
- data/lib/compass/frameworks.rb +133 -133
- data/lib/compass/grid_builder.rb +102 -102
- data/lib/compass/installers.rb +3 -3
- data/lib/compass/installers/bare_installer.rb +58 -58
- data/lib/compass/installers/base.rb +187 -187
- data/lib/compass/installers/manifest.rb +161 -161
- data/lib/compass/installers/manifest_installer.rb +61 -61
- data/lib/compass/installers/template_context.rb +43 -43
- data/lib/compass/logger.rb +103 -103
- data/lib/compass/quick_cache.rb +15 -15
- data/lib/compass/rails.rb +2 -2
- data/lib/compass/sass_extensions.rb +10 -10
- data/lib/compass/sass_extensions/functions.rb +34 -34
- data/lib/compass/sass_extensions/functions/colors.rb +67 -67
- data/lib/compass/sass_extensions/functions/constants.rb +74 -74
- data/lib/compass/sass_extensions/functions/cross_browser_support.rb +70 -70
- data/lib/compass/sass_extensions/functions/display.rb +27 -27
- data/lib/compass/sass_extensions/functions/enumerate.rb +6 -6
- data/lib/compass/sass_extensions/functions/env.rb +5 -5
- data/lib/compass/sass_extensions/functions/font_files.rb +41 -41
- data/lib/compass/sass_extensions/functions/gradient_support.rb +540 -540
- data/lib/compass/sass_extensions/functions/image_size.rb +113 -113
- data/lib/compass/sass_extensions/functions/inline_image.rb +64 -64
- data/lib/compass/sass_extensions/functions/lists.rb +101 -101
- data/lib/compass/sass_extensions/functions/math.rb +63 -63
- data/lib/compass/sass_extensions/functions/selectors.rb +63 -63
- data/lib/compass/sass_extensions/functions/sprites.rb +218 -218
- data/lib/compass/sass_extensions/functions/urls.rb +266 -266
- data/lib/compass/sass_extensions/monkey_patches.rb +3 -3
- data/lib/compass/sass_extensions/monkey_patches/browser_support.rb +95 -95
- data/lib/compass/sass_extensions/monkey_patches/traversal.rb +23 -23
- data/lib/compass/sass_extensions/sprites.rb +19 -19
- data/lib/compass/sass_extensions/sprites/engines.rb +25 -25
- data/lib/compass/sass_extensions/sprites/engines/chunky_png_engine.rb +30 -30
- data/lib/compass/sass_extensions/sprites/image.rb +151 -151
- data/lib/compass/sass_extensions/sprites/image_methods.rb +31 -31
- data/lib/compass/sass_extensions/sprites/image_row.rb +46 -46
- data/lib/compass/sass_extensions/sprites/layout_methods.rb +158 -158
- data/lib/compass/sass_extensions/sprites/row_fitter.rb +91 -91
- data/lib/compass/sass_extensions/sprites/sprite_map.rb +86 -86
- data/lib/compass/sass_extensions/sprites/sprite_methods.rb +141 -141
- data/lib/compass/sprite_importer.rb +116 -116
- data/lib/compass/sprite_importer/binding.rb +10 -10
- data/lib/compass/sprite_importer/content.erb +80 -80
- data/lib/compass/stats.rb +99 -99
- data/lib/compass/test_case.rb +38 -38
- data/lib/compass/util.rb +29 -29
- data/lib/compass/validator.rb +16 -16
- data/lib/compass/version.rb +60 -60
- data/test/fixtures/extensions/only_stylesheets/compass_init.rb +1 -1
- data/test/fixtures/extensions/only_stylesheets/scss/only_stylesheets/foo.scss +3 -3
- data/test/fixtures/fonts/bgrove.base64.txt +1 -1
- data/test/fixtures/fonts/bgrove.ttf +0 -0
- data/test/fixtures/sprites/public/images/ko/starbg26x27.png +0 -0
- data/test/fixtures/stylesheets/blueprint/config.rb +14 -14
- data/test/fixtures/stylesheets/blueprint/css/ie.css +76 -76
- data/test/fixtures/stylesheets/blueprint/css/print.css +56 -56
- data/test/fixtures/stylesheets/blueprint/css/screen.css +815 -815
- data/test/fixtures/stylesheets/blueprint/css/single-imports/buttons.css +56 -56
- data/test/fixtures/stylesheets/blueprint/css/single-imports/colors.css +80 -80
- data/test/fixtures/stylesheets/blueprint/css/single-imports/debug.css +11 -11
- data/test/fixtures/stylesheets/blueprint/css/single-imports/fancy-type.css +30 -30
- data/test/fixtures/stylesheets/blueprint/css/single-imports/form.css +42 -42
- data/test/fixtures/stylesheets/blueprint/css/single-imports/grid.css +435 -435
- data/test/fixtures/stylesheets/blueprint/css/single-imports/ie.css +76 -76
- data/test/fixtures/stylesheets/blueprint/css/single-imports/interaction.css +46 -46
- data/test/fixtures/stylesheets/blueprint/css/single-imports/link-icons.css +40 -40
- data/test/fixtures/stylesheets/blueprint/css/single-imports/liquid.css +651 -651
- data/test/fixtures/stylesheets/blueprint/css/single-imports/print.css +60 -60
- data/test/fixtures/stylesheets/blueprint/css/single-imports/reset-utilities.css +75 -75
- data/test/fixtures/stylesheets/blueprint/css/single-imports/reset.css +42 -42
- data/test/fixtures/stylesheets/blueprint/css/single-imports/rtl.css +437 -437
- data/test/fixtures/stylesheets/blueprint/css/single-imports/scaffolding.css +45 -45
- data/test/fixtures/stylesheets/blueprint/css/single-imports/typography.css +146 -146
- data/test/fixtures/stylesheets/blueprint/css/single-imports/utilities.css +35 -35
- data/test/fixtures/stylesheets/blueprint/sass/ie.sass +3 -3
- data/test/fixtures/stylesheets/blueprint/sass/print.sass +3 -3
- data/test/fixtures/stylesheets/blueprint/sass/screen.sass +18 -18
- data/test/fixtures/stylesheets/blueprint/sass/single-imports/buttons.scss +3 -3
- data/test/fixtures/stylesheets/blueprint/sass/single-imports/colors.scss +34 -34
- data/test/fixtures/stylesheets/blueprint/sass/single-imports/debug.scss +3 -3
- data/test/fixtures/stylesheets/blueprint/sass/single-imports/fancy-type.scss +3 -3
- data/test/fixtures/stylesheets/blueprint/sass/single-imports/form.scss +4 -4
- data/test/fixtures/stylesheets/blueprint/sass/single-imports/grid.scss +2 -2
- data/test/fixtures/stylesheets/blueprint/sass/single-imports/ie.scss +2 -2
- data/test/fixtures/stylesheets/blueprint/sass/single-imports/interaction.scss +3 -3
- data/test/fixtures/stylesheets/blueprint/sass/single-imports/link-icons.scss +12 -12
- data/test/fixtures/stylesheets/blueprint/sass/single-imports/liquid.scss +2 -2
- data/test/fixtures/stylesheets/blueprint/sass/single-imports/print.scss +4 -4
- data/test/fixtures/stylesheets/blueprint/sass/single-imports/reset-utilities.scss +4 -4
- data/test/fixtures/stylesheets/blueprint/sass/single-imports/reset.scss +1 -1
- data/test/fixtures/stylesheets/blueprint/sass/single-imports/rtl.scss +2 -2
- data/test/fixtures/stylesheets/blueprint/sass/single-imports/scaffolding.scss +5 -5
- data/test/fixtures/stylesheets/blueprint/sass/single-imports/typography.scss +3 -3
- data/test/fixtures/stylesheets/blueprint/sass/single-imports/utilities.scss +3 -3
- data/test/fixtures/stylesheets/busted_image_urls/config.rb +29 -29
- data/test/fixtures/stylesheets/busted_image_urls/css/screen.css +9 -9
- data/test/fixtures/stylesheets/busted_image_urls/sass/screen.sass +13 -13
- data/test/fixtures/stylesheets/compass/config.rb +16 -16
- data/test/fixtures/stylesheets/compass/css/background-clip.css +10 -10
- data/test/fixtures/stylesheets/compass/css/border_radius.css +14 -14
- data/test/fixtures/stylesheets/compass/css/box-sizeing.css +9 -9
- data/test/fixtures/stylesheets/compass/css/box.css +103 -103
- data/test/fixtures/stylesheets/compass/css/box_shadow.css +14 -14
- data/test/fixtures/stylesheets/compass/css/columns.css +161 -161
- data/test/fixtures/stylesheets/compass/css/filters.css +29 -29
- data/test/fixtures/stylesheets/compass/css/fonts.css +4 -4
- data/test/fixtures/stylesheets/compass/css/force-wrap.css +9 -9
- data/test/fixtures/stylesheets/compass/css/gradients.css +202 -202
- data/test/fixtures/stylesheets/compass/css/grid_background.css +71 -71
- data/test/fixtures/stylesheets/compass/css/hyphenation.css +16 -16
- data/test/fixtures/stylesheets/compass/css/image_size.css +15 -15
- data/test/fixtures/stylesheets/compass/css/images.css +8 -8
- data/test/fixtures/stylesheets/compass/css/layout.css +16 -16
- data/test/fixtures/stylesheets/compass/css/legacy_clearfix.css +26 -26
- data/test/fixtures/stylesheets/compass/css/lists.css +151 -151
- data/test/fixtures/stylesheets/compass/css/opacity.css +3 -3
- data/test/fixtures/stylesheets/compass/css/pie.css +26 -26
- data/test/fixtures/stylesheets/compass/css/print.css +11 -11
- data/test/fixtures/stylesheets/compass/css/regions.css +7 -7
- data/test/fixtures/stylesheets/compass/css/replacement.css +59 -59
- data/test/fixtures/stylesheets/compass/css/reset.css +59 -59
- data/test/fixtures/stylesheets/compass/css/sprites.css +1262 -1262
- data/test/fixtures/stylesheets/compass/css/stretching.css +66 -66
- data/test/fixtures/stylesheets/compass/css/text_shadow.css +29 -29
- data/test/fixtures/stylesheets/compass/css/transform.css +441 -441
- data/test/fixtures/stylesheets/compass/css/transition.css +128 -128
- data/test/fixtures/stylesheets/compass/css/user-interface.css +4 -4
- data/test/fixtures/stylesheets/compass/css/utilities.css +56 -56
- data/test/fixtures/stylesheets/compass/css/vertical_rhythm.css +45 -45
- data/test/fixtures/stylesheets/compass/sass/background-clip.scss +7 -7
- data/test/fixtures/stylesheets/compass/sass/border_radius.scss +5 -5
- data/test/fixtures/stylesheets/compass/sass/box-sizeing.scss +7 -7
- data/test/fixtures/stylesheets/compass/sass/box.sass +49 -49
- data/test/fixtures/stylesheets/compass/sass/box_shadow.scss +5 -5
- data/test/fixtures/stylesheets/compass/sass/columns.scss +28 -28
- data/test/fixtures/stylesheets/compass/sass/filters.scss +24 -24
- data/test/fixtures/stylesheets/compass/sass/fonts.sass +2 -2
- data/test/fixtures/stylesheets/compass/sass/force-wrap.scss +3 -3
- data/test/fixtures/stylesheets/compass/sass/gradients.sass +96 -96
- data/test/fixtures/stylesheets/compass/sass/grid_background.scss +33 -33
- data/test/fixtures/stylesheets/compass/sass/hyphenation.scss +10 -10
- data/test/fixtures/stylesheets/compass/sass/image_size.sass +15 -15
- data/test/fixtures/stylesheets/compass/sass/images.scss +8 -8
- data/test/fixtures/stylesheets/compass/sass/layout.sass +3 -3
- data/test/fixtures/stylesheets/compass/sass/legacy_clearfix.scss +14 -14
- data/test/fixtures/stylesheets/compass/sass/lists.scss +11 -11
- data/test/fixtures/stylesheets/compass/sass/opacity.scss +5 -5
- data/test/fixtures/stylesheets/compass/sass/pie.scss +47 -47
- data/test/fixtures/stylesheets/compass/sass/print.sass +5 -5
- data/test/fixtures/stylesheets/compass/sass/regions.scss +3 -3
- data/test/fixtures/stylesheets/compass/sass/replacement.scss +22 -22
- data/test/fixtures/stylesheets/compass/sass/reset.sass +12 -12
- data/test/fixtures/stylesheets/compass/sass/sprites.scss +13 -13
- data/test/fixtures/stylesheets/compass/sass/stretching.sass +33 -33
- data/test/fixtures/stylesheets/compass/sass/text_shadow.scss +11 -11
- data/test/fixtures/stylesheets/compass/sass/transform.scss +87 -87
- data/test/fixtures/stylesheets/compass/sass/transition.scss +24 -24
- data/test/fixtures/stylesheets/compass/sass/user-interface.scss +4 -4
- data/test/fixtures/stylesheets/compass/sass/utilities.scss +20 -20
- data/test/fixtures/stylesheets/compass/sass/vertical_rhythm.scss +15 -15
- data/test/fixtures/stylesheets/envtest/config.rb +9 -9
- data/test/fixtures/stylesheets/envtest/css/env.css +2 -2
- data/test/fixtures/stylesheets/envtest/sass/env.scss +3 -3
- data/test/fixtures/stylesheets/error/config.rb +10 -10
- data/test/fixtures/stylesheets/error/sass/screen.sass +2 -2
- data/test/fixtures/stylesheets/image_urls/config.rb +19 -19
- data/test/fixtures/stylesheets/image_urls/css/screen.css +5 -5
- data/test/fixtures/stylesheets/image_urls/sass/screen.sass +8 -8
- data/test/fixtures/stylesheets/relative/config.rb +10 -10
- data/test/fixtures/stylesheets/relative/css/ie.css +1 -1
- data/test/fixtures/stylesheets/relative/css/print.css +1 -1
- data/test/fixtures/stylesheets/relative/css/screen.css +1 -1
- data/test/fixtures/stylesheets/relative/sass/ie.sass +5 -5
- data/test/fixtures/stylesheets/relative/sass/print.sass +3 -3
- data/test/fixtures/stylesheets/relative/sass/screen.sass +2 -2
- data/test/fixtures/stylesheets/uses_only_stylesheets_ext/config.rb +25 -25
- data/test/fixtures/stylesheets/uses_only_stylesheets_ext/sass/ie.scss +5 -5
- data/test/fixtures/stylesheets/uses_only_stylesheets_ext/sass/print.scss +3 -3
- data/test/fixtures/stylesheets/uses_only_stylesheets_ext/sass/screen.scss +6 -6
- data/test/fixtures/stylesheets/uses_only_stylesheets_ext/stylesheets/ie.css +5 -5
- data/test/fixtures/stylesheets/uses_only_stylesheets_ext/stylesheets/print.css +3 -3
- data/test/fixtures/stylesheets/uses_only_stylesheets_ext/stylesheets/screen.css +68 -68
- data/test/fixtures/stylesheets/valid/config.rb +9 -9
- data/test/fixtures/stylesheets/valid/sass/simple.sass +1 -1
- data/test/helpers/command_line.rb +114 -114
- data/test/helpers/diff.rb +48 -48
- data/test/helpers/io.rb +36 -36
- data/test/helpers/rails.rb +55 -55
- data/test/helpers/test_case.rb +62 -62
- data/test/integrations/compass_test.rb +224 -224
- data/test/integrations/sprites_test.rb +843 -843
- data/test/test_helper.rb +73 -73
- data/test/units/actions_test.rb +23 -23
- data/test/units/command_line_test.rb +60 -60
- data/test/units/compass_module_test.rb +36 -36
- data/test/units/compass_png_test.rb +45 -45
- data/test/units/compiler_test.rb +10 -10
- data/test/units/configuration_test.rb +440 -440
- data/test/units/regressions_test.rb +35 -35
- data/test/units/sass_extensions_test.rb +198 -198
- data/test/units/sprites/engine_test.rb +47 -47
- data/test/units/sprites/image_row_test.rb +57 -57
- data/test/units/sprites/image_test.rb +99 -99
- data/test/units/sprites/importer_test.rb +90 -90
- data/test/units/sprites/layout_test.rb +154 -154
- data/test/units/sprites/row_fitter_test.rb +65 -65
- data/test/units/sprites/sprite_command_test.rb +54 -54
- data/test/units/sprites/sprite_map_test.rb +130 -130
- metadata +1304 -1310
data/test/units/compiler_test.rb
CHANGED
@@ -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
|