haml_ejs 0.0.1
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.
- data/.yardopts +11 -0
- data/CONTRIBUTING +3 -0
- data/MIT-LICENSE +20 -0
- data/README.md +68 -0
- data/Rakefile +419 -0
- data/VERSION +1 -0
- data/VERSION_NAME +1 -0
- data/bin/haml +9 -0
- data/bin/html2haml +7 -0
- data/extra/update_watch.rb +13 -0
- data/init.rb +18 -0
- data/lib/haml.rb +49 -0
- data/lib/haml/buffer.rb +297 -0
- data/lib/haml/compiler.rb +486 -0
- data/lib/haml/engine.rb +312 -0
- data/lib/haml/error.rb +22 -0
- data/lib/haml/exec.rb +362 -0
- data/lib/haml/filters.rb +388 -0
- data/lib/haml/haml_ejs.rb +57 -0
- data/lib/haml/helpers.rb +608 -0
- data/lib/haml/helpers/action_view_extensions.rb +57 -0
- data/lib/haml/helpers/action_view_mods.rb +257 -0
- data/lib/haml/helpers/xss_mods.rb +165 -0
- data/lib/haml/html.rb +412 -0
- data/lib/haml/html/erb.rb +141 -0
- data/lib/haml/parser.rb +760 -0
- data/lib/haml/railtie.rb +19 -0
- data/lib/haml/root.rb +7 -0
- data/lib/haml/shared.rb +78 -0
- data/lib/haml/template.rb +99 -0
- data/lib/haml/template/options.rb +16 -0
- data/lib/haml/template/patch.rb +58 -0
- data/lib/haml/template/plugin.rb +123 -0
- data/lib/haml/util.rb +842 -0
- data/lib/haml/version.rb +109 -0
- data/lib/sass.rb +8 -0
- data/lib/sass/plugin.rb +10 -0
- data/lib/sass/rails2_shim.rb +9 -0
- data/lib/sass/rails3_shim.rb +16 -0
- data/rails/init.rb +1 -0
- data/test/benchmark.rb +91 -0
- data/test/gemfiles/Gemfile.rails-2.0.x +8 -0
- data/test/gemfiles/Gemfile.rails-2.0.x.lock +38 -0
- data/test/gemfiles/Gemfile.rails-2.1.x +8 -0
- data/test/gemfiles/Gemfile.rails-2.1.x.lock +38 -0
- data/test/gemfiles/Gemfile.rails-2.2.x +8 -0
- data/test/gemfiles/Gemfile.rails-2.2.x.lock +38 -0
- data/test/gemfiles/Gemfile.rails-2.3.x +8 -0
- data/test/gemfiles/Gemfile.rails-2.3.x.lock +40 -0
- data/test/gemfiles/Gemfile.rails-3.0.x +8 -0
- data/test/gemfiles/Gemfile.rails-3.0.x.lock +85 -0
- data/test/gemfiles/Gemfile.rails-3.1.x +8 -0
- data/test/gemfiles/Gemfile.rails-3.1.x.lock +98 -0
- data/test/gemfiles/Gemfile.rails-xss-2.3.x +9 -0
- data/test/gemfiles/Gemfile.rails-xss-2.3.x.lock +42 -0
- data/test/haml-ejs/haml-ejs_test.rb +22 -0
- data/test/haml-ejs/templates/conditional.input +3 -0
- data/test/haml-ejs/templates/conditional.output +3 -0
- data/test/haml-ejs/templates/conditional_and_interpolation.input +2 -0
- data/test/haml-ejs/templates/conditional_and_interpolation.output +3 -0
- data/test/haml-ejs/templates/conditional_else.input +5 -0
- data/test/haml-ejs/templates/conditional_else.output +5 -0
- data/test/haml-ejs/templates/conditional_else_elsif.input +7 -0
- data/test/haml-ejs/templates/conditional_else_elsif.output +7 -0
- data/test/haml-ejs/templates/conditional_elsif.input +5 -0
- data/test/haml-ejs/templates/conditional_elsif.output +5 -0
- data/test/haml-ejs/templates/conditional_unless.input +3 -0
- data/test/haml-ejs/templates/conditional_unless.output +3 -0
- data/test/haml-ejs/templates/conditional_unless_else.input +5 -0
- data/test/haml-ejs/templates/conditional_unless_else.output +5 -0
- data/test/haml-ejs/templates/conditional_unless_elsif_else.input +5 -0
- data/test/haml-ejs/templates/conditional_unless_elsif_else.output +5 -0
- data/test/haml-ejs/templates/interpolation.input +2 -0
- data/test/haml-ejs/templates/interpolation.output +1 -0
- data/test/haml-ejs/templates/iteration.input +2 -0
- data/test/haml-ejs/templates/iteration.output +3 -0
- data/test/haml-ejs/templates/suite.input +26 -0
- data/test/haml-ejs/templates/suite.output +27 -0
- data/test/haml/engine_test.rb +1925 -0
- data/test/haml/erb/_av_partial_1.erb +12 -0
- data/test/haml/erb/_av_partial_2.erb +8 -0
- data/test/haml/erb/action_view.erb +62 -0
- data/test/haml/erb/standard.erb +55 -0
- data/test/haml/helper_test.rb +454 -0
- data/test/haml/html2haml/erb_tests.rb +440 -0
- data/test/haml/html2haml_test.rb +336 -0
- data/test/haml/markaby/standard.mab +52 -0
- data/test/haml/mocks/article.rb +6 -0
- data/test/haml/results/content_for_layout.xhtml +12 -0
- data/test/haml/results/eval_suppressed.xhtml +9 -0
- data/test/haml/results/filters.xhtml +62 -0
- data/test/haml/results/helpers.xhtml +70 -0
- data/test/haml/results/helpful.xhtml +10 -0
- data/test/haml/results/just_stuff.xhtml +70 -0
- data/test/haml/results/list.xhtml +12 -0
- data/test/haml/results/nuke_inner_whitespace.xhtml +40 -0
- data/test/haml/results/nuke_outer_whitespace.xhtml +148 -0
- data/test/haml/results/original_engine.xhtml +20 -0
- data/test/haml/results/partial_layout.xhtml +5 -0
- data/test/haml/results/partials.xhtml +21 -0
- data/test/haml/results/render_layout.xhtml +3 -0
- data/test/haml/results/silent_script.xhtml +74 -0
- data/test/haml/results/standard.xhtml +162 -0
- data/test/haml/results/tag_parsing.xhtml +23 -0
- data/test/haml/results/very_basic.xhtml +5 -0
- data/test/haml/results/whitespace_handling.xhtml +89 -0
- data/test/haml/spec/README.md +97 -0
- data/test/haml/spec/lua_haml_spec.lua +30 -0
- data/test/haml/spec/ruby_haml_test.rb +19 -0
- data/test/haml/spec/tests.json +534 -0
- data/test/haml/spec_test.rb +44 -0
- data/test/haml/template_test.rb +419 -0
- data/test/haml/templates/_av_partial_1.haml +9 -0
- data/test/haml/templates/_av_partial_1_ugly.haml +9 -0
- data/test/haml/templates/_av_partial_2.haml +5 -0
- data/test/haml/templates/_av_partial_2_ugly.haml +5 -0
- data/test/haml/templates/_layout.erb +3 -0
- data/test/haml/templates/_layout_for_partial.haml +3 -0
- data/test/haml/templates/_partial.haml +8 -0
- data/test/haml/templates/_text_area.haml +3 -0
- data/test/haml/templates/action_view.haml +47 -0
- data/test/haml/templates/action_view_ugly.haml +47 -0
- data/test/haml/templates/breakage.haml +8 -0
- data/test/haml/templates/content_for_layout.haml +8 -0
- data/test/haml/templates/eval_suppressed.haml +11 -0
- data/test/haml/templates/filters.haml +66 -0
- data/test/haml/templates/helpers.haml +55 -0
- data/test/haml/templates/helpful.haml +11 -0
- data/test/haml/templates/just_stuff.haml +85 -0
- data/test/haml/templates/list.haml +12 -0
- data/test/haml/templates/nuke_inner_whitespace.haml +32 -0
- data/test/haml/templates/nuke_outer_whitespace.haml +144 -0
- data/test/haml/templates/original_engine.haml +17 -0
- data/test/haml/templates/partial_layout.haml +10 -0
- data/test/haml/templates/partialize.haml +1 -0
- data/test/haml/templates/partials.haml +12 -0
- data/test/haml/templates/render_layout.haml +2 -0
- data/test/haml/templates/silent_script.haml +40 -0
- data/test/haml/templates/standard.haml +43 -0
- data/test/haml/templates/standard_ugly.haml +43 -0
- data/test/haml/templates/tag_parsing.haml +21 -0
- data/test/haml/templates/very_basic.haml +4 -0
- data/test/haml/templates/whitespace_handling.haml +87 -0
- data/test/haml/util_test.rb +300 -0
- data/test/linked_rails.rb +42 -0
- data/test/test_helper.rb +75 -0
- data/vendor/sass/CONTRIBUTING +3 -0
- data/vendor/sass/MIT-LICENSE +20 -0
- data/vendor/sass/README.md +201 -0
- data/vendor/sass/Rakefile +339 -0
- data/vendor/sass/TODO +39 -0
- data/vendor/sass/VERSION +1 -0
- data/vendor/sass/VERSION_NAME +1 -0
- data/vendor/sass/bin/sass +8 -0
- data/vendor/sass/bin/sass-convert +7 -0
- data/vendor/sass/bin/scss +8 -0
- data/vendor/sass/doc-src/FAQ.md +35 -0
- data/vendor/sass/doc-src/INDENTED_SYNTAX.md +210 -0
- data/vendor/sass/doc-src/SASS_CHANGELOG.md +2214 -0
- data/vendor/sass/doc-src/SASS_REFERENCE.md +1957 -0
- data/vendor/sass/doc-src/SCSS_FOR_SASS_USERS.md +155 -0
- data/vendor/sass/ext/extconf.rb +10 -0
- data/vendor/sass/extra/update_watch.rb +13 -0
- data/vendor/sass/init.rb +18 -0
- data/vendor/sass/lib/sass.rb +72 -0
- data/vendor/sass/lib/sass/cache_stores.rb +15 -0
- data/vendor/sass/lib/sass/cache_stores/base.rb +84 -0
- data/vendor/sass/lib/sass/cache_stores/chain.rb +33 -0
- data/vendor/sass/lib/sass/cache_stores/filesystem.rb +58 -0
- data/vendor/sass/lib/sass/cache_stores/memory.rb +47 -0
- data/vendor/sass/lib/sass/cache_stores/null.rb +25 -0
- data/vendor/sass/lib/sass/callbacks.rb +66 -0
- data/vendor/sass/lib/sass/css.rb +294 -0
- data/vendor/sass/lib/sass/engine.rb +862 -0
- data/vendor/sass/lib/sass/environment.rb +155 -0
- data/vendor/sass/lib/sass/error.rb +201 -0
- data/vendor/sass/lib/sass/exec.rb +659 -0
- data/vendor/sass/lib/sass/importers.rb +22 -0
- data/vendor/sass/lib/sass/importers/base.rb +138 -0
- data/vendor/sass/lib/sass/importers/filesystem.rb +144 -0
- data/vendor/sass/lib/sass/less.rb +382 -0
- data/vendor/sass/lib/sass/plugin.rb +136 -0
- data/vendor/sass/lib/sass/plugin/compiler.rb +358 -0
- data/vendor/sass/lib/sass/plugin/configuration.rb +125 -0
- data/vendor/sass/lib/sass/plugin/generic.rb +15 -0
- data/vendor/sass/lib/sass/plugin/merb.rb +48 -0
- data/vendor/sass/lib/sass/plugin/rack.rb +60 -0
- data/vendor/sass/lib/sass/plugin/rails.rb +47 -0
- data/vendor/sass/lib/sass/plugin/staleness_checker.rb +173 -0
- data/vendor/sass/lib/sass/railtie.rb +9 -0
- data/vendor/sass/lib/sass/repl.rb +58 -0
- data/vendor/sass/lib/sass/root.rb +7 -0
- data/vendor/sass/lib/sass/script.rb +40 -0
- data/vendor/sass/lib/sass/script/bool.rb +18 -0
- data/vendor/sass/lib/sass/script/color.rb +480 -0
- data/vendor/sass/lib/sass/script/css_lexer.rb +29 -0
- data/vendor/sass/lib/sass/script/css_parser.rb +31 -0
- data/vendor/sass/lib/sass/script/funcall.rb +162 -0
- data/vendor/sass/lib/sass/script/functions.rb +1343 -0
- data/vendor/sass/lib/sass/script/interpolation.rb +70 -0
- data/vendor/sass/lib/sass/script/lexer.rb +334 -0
- data/vendor/sass/lib/sass/script/list.rb +76 -0
- data/vendor/sass/lib/sass/script/literal.rb +245 -0
- data/vendor/sass/lib/sass/script/node.rb +91 -0
- data/vendor/sass/lib/sass/script/number.rb +429 -0
- data/vendor/sass/lib/sass/script/operation.rb +91 -0
- data/vendor/sass/lib/sass/script/parser.rb +467 -0
- data/vendor/sass/lib/sass/script/string.rb +51 -0
- data/vendor/sass/lib/sass/script/string_interpolation.rb +94 -0
- data/vendor/sass/lib/sass/script/unary_operation.rb +57 -0
- data/vendor/sass/lib/sass/script/variable.rb +54 -0
- data/vendor/sass/lib/sass/scss.rb +17 -0
- data/vendor/sass/lib/sass/scss/css_parser.rb +46 -0
- data/vendor/sass/lib/sass/scss/parser.rb +920 -0
- data/vendor/sass/lib/sass/scss/rx.rb +127 -0
- data/vendor/sass/lib/sass/scss/sass_parser.rb +11 -0
- data/vendor/sass/lib/sass/scss/script_lexer.rb +15 -0
- data/vendor/sass/lib/sass/scss/script_parser.rb +25 -0
- data/vendor/sass/lib/sass/scss/static_parser.rb +40 -0
- data/vendor/sass/lib/sass/selector.rb +361 -0
- data/vendor/sass/lib/sass/selector/abstract_sequence.rb +62 -0
- data/vendor/sass/lib/sass/selector/comma_sequence.rb +81 -0
- data/vendor/sass/lib/sass/selector/sequence.rb +233 -0
- data/vendor/sass/lib/sass/selector/simple.rb +113 -0
- data/vendor/sass/lib/sass/selector/simple_sequence.rb +134 -0
- data/vendor/sass/lib/sass/shared.rb +78 -0
- data/vendor/sass/lib/sass/tree/charset_node.rb +22 -0
- data/vendor/sass/lib/sass/tree/comment_node.rb +77 -0
- data/vendor/sass/lib/sass/tree/debug_node.rb +18 -0
- data/vendor/sass/lib/sass/tree/directive_node.rb +23 -0
- data/vendor/sass/lib/sass/tree/each_node.rb +24 -0
- data/vendor/sass/lib/sass/tree/extend_node.rb +29 -0
- data/vendor/sass/lib/sass/tree/for_node.rb +36 -0
- data/vendor/sass/lib/sass/tree/function_node.rb +27 -0
- data/vendor/sass/lib/sass/tree/if_node.rb +65 -0
- data/vendor/sass/lib/sass/tree/import_node.rb +68 -0
- data/vendor/sass/lib/sass/tree/media_node.rb +32 -0
- data/vendor/sass/lib/sass/tree/mixin_def_node.rb +27 -0
- data/vendor/sass/lib/sass/tree/mixin_node.rb +32 -0
- data/vendor/sass/lib/sass/tree/node.rb +204 -0
- data/vendor/sass/lib/sass/tree/prop_node.rb +155 -0
- data/vendor/sass/lib/sass/tree/return_node.rb +18 -0
- data/vendor/sass/lib/sass/tree/root_node.rb +28 -0
- data/vendor/sass/lib/sass/tree/rule_node.rb +129 -0
- data/vendor/sass/lib/sass/tree/variable_node.rb +30 -0
- data/vendor/sass/lib/sass/tree/visitors/base.rb +75 -0
- data/vendor/sass/lib/sass/tree/visitors/check_nesting.rb +134 -0
- data/vendor/sass/lib/sass/tree/visitors/convert.rb +255 -0
- data/vendor/sass/lib/sass/tree/visitors/cssize.rb +175 -0
- data/vendor/sass/lib/sass/tree/visitors/perform.rb +301 -0
- data/vendor/sass/lib/sass/tree/visitors/to_css.rb +216 -0
- data/vendor/sass/lib/sass/tree/warn_node.rb +18 -0
- data/vendor/sass/lib/sass/tree/while_node.rb +18 -0
- data/vendor/sass/lib/sass/util.rb +669 -0
- data/vendor/sass/lib/sass/util/subset_map.rb +101 -0
- data/vendor/sass/lib/sass/version.rb +112 -0
- data/vendor/sass/rails/init.rb +1 -0
- data/vendor/sass/sass.gemspec +32 -0
- data/vendor/sass/test/sass/cache_test.rb +74 -0
- data/vendor/sass/test/sass/callbacks_test.rb +61 -0
- data/vendor/sass/test/sass/conversion_test.rb +1203 -0
- data/vendor/sass/test/sass/css2sass_test.rb +364 -0
- data/vendor/sass/test/sass/data/hsl-rgb.txt +319 -0
- data/vendor/sass/test/sass/engine_test.rb +2469 -0
- data/vendor/sass/test/sass/extend_test.rb +1348 -0
- data/vendor/sass/test/sass/functions_test.rb +1025 -0
- data/vendor/sass/test/sass/importer_test.rb +82 -0
- data/vendor/sass/test/sass/less_conversion_test.rb +653 -0
- data/vendor/sass/test/sass/mock_importer.rb +49 -0
- data/vendor/sass/test/sass/more_results/more1.css +9 -0
- data/vendor/sass/test/sass/more_results/more1_with_line_comments.css +26 -0
- data/vendor/sass/test/sass/more_results/more_import.css +29 -0
- data/vendor/sass/test/sass/more_templates/_more_partial.sass +2 -0
- data/vendor/sass/test/sass/more_templates/more1.sass +23 -0
- data/vendor/sass/test/sass/more_templates/more_import.sass +11 -0
- data/vendor/sass/test/sass/plugin_test.rb +469 -0
- data/vendor/sass/test/sass/results/alt.css +4 -0
- data/vendor/sass/test/sass/results/basic.css +9 -0
- data/vendor/sass/test/sass/results/compact.css +5 -0
- data/vendor/sass/test/sass/results/complex.css +86 -0
- data/vendor/sass/test/sass/results/compressed.css +1 -0
- data/vendor/sass/test/sass/results/expanded.css +19 -0
- data/vendor/sass/test/sass/results/if.css +3 -0
- data/vendor/sass/test/sass/results/import.css +31 -0
- data/vendor/sass/test/sass/results/import_charset.css +4 -0
- data/vendor/sass/test/sass/results/import_charset_1_8.css +4 -0
- data/vendor/sass/test/sass/results/import_charset_ibm866.css +4 -0
- data/vendor/sass/test/sass/results/line_numbers.css +49 -0
- data/vendor/sass/test/sass/results/mixins.css +95 -0
- data/vendor/sass/test/sass/results/multiline.css +24 -0
- data/vendor/sass/test/sass/results/nested.css +22 -0
- data/vendor/sass/test/sass/results/options.css +1 -0
- data/vendor/sass/test/sass/results/parent_ref.css +13 -0
- data/vendor/sass/test/sass/results/script.css +16 -0
- data/vendor/sass/test/sass/results/scss_import.css +31 -0
- data/vendor/sass/test/sass/results/scss_importee.css +2 -0
- data/vendor/sass/test/sass/results/subdir/nested_subdir/nested_subdir.css +1 -0
- data/vendor/sass/test/sass/results/subdir/subdir.css +3 -0
- data/vendor/sass/test/sass/results/units.css +11 -0
- data/vendor/sass/test/sass/results/warn.css +0 -0
- data/vendor/sass/test/sass/results/warn_imported.css +0 -0
- data/vendor/sass/test/sass/script_conversion_test.rb +283 -0
- data/vendor/sass/test/sass/script_test.rb +496 -0
- data/vendor/sass/test/sass/scss/css_test.rb +916 -0
- data/vendor/sass/test/sass/scss/rx_test.rb +156 -0
- data/vendor/sass/test/sass/scss/scss_test.rb +1249 -0
- data/vendor/sass/test/sass/scss/test_helper.rb +37 -0
- data/vendor/sass/test/sass/templates/_imported_charset_ibm866.sass +4 -0
- data/vendor/sass/test/sass/templates/_imported_charset_utf8.sass +4 -0
- data/vendor/sass/test/sass/templates/_partial.sass +2 -0
- data/vendor/sass/test/sass/templates/alt.sass +16 -0
- data/vendor/sass/test/sass/templates/basic.sass +23 -0
- data/vendor/sass/test/sass/templates/bork1.sass +2 -0
- data/vendor/sass/test/sass/templates/bork2.sass +2 -0
- data/vendor/sass/test/sass/templates/bork3.sass +2 -0
- data/vendor/sass/test/sass/templates/bork4.sass +2 -0
- data/vendor/sass/test/sass/templates/compact.sass +17 -0
- data/vendor/sass/test/sass/templates/complex.sass +305 -0
- data/vendor/sass/test/sass/templates/compressed.sass +15 -0
- data/vendor/sass/test/sass/templates/expanded.sass +17 -0
- data/vendor/sass/test/sass/templates/if.sass +11 -0
- data/vendor/sass/test/sass/templates/import.sass +12 -0
- data/vendor/sass/test/sass/templates/import_charset.sass +7 -0
- data/vendor/sass/test/sass/templates/import_charset_1_8.sass +4 -0
- data/vendor/sass/test/sass/templates/import_charset_ibm866.sass +9 -0
- data/vendor/sass/test/sass/templates/importee.less +2 -0
- data/vendor/sass/test/sass/templates/importee.sass +19 -0
- data/vendor/sass/test/sass/templates/line_numbers.sass +13 -0
- data/vendor/sass/test/sass/templates/mixin_bork.sass +5 -0
- data/vendor/sass/test/sass/templates/mixins.sass +76 -0
- data/vendor/sass/test/sass/templates/multiline.sass +20 -0
- data/vendor/sass/test/sass/templates/nested.sass +25 -0
- data/vendor/sass/test/sass/templates/nested_bork1.sass +2 -0
- data/vendor/sass/test/sass/templates/nested_bork2.sass +2 -0
- data/vendor/sass/test/sass/templates/nested_bork3.sass +2 -0
- data/vendor/sass/test/sass/templates/nested_bork4.sass +2 -0
- data/vendor/sass/test/sass/templates/nested_import.sass +2 -0
- data/vendor/sass/test/sass/templates/nested_mixin_bork.sass +6 -0
- data/vendor/sass/test/sass/templates/options.sass +2 -0
- data/vendor/sass/test/sass/templates/parent_ref.sass +25 -0
- data/vendor/sass/test/sass/templates/script.sass +101 -0
- data/vendor/sass/test/sass/templates/scss_import.scss +11 -0
- data/vendor/sass/test/sass/templates/scss_importee.scss +1 -0
- data/vendor/sass/test/sass/templates/subdir/nested_subdir/_nested_partial.sass +2 -0
- data/vendor/sass/test/sass/templates/subdir/nested_subdir/nested_subdir.sass +3 -0
- data/vendor/sass/test/sass/templates/subdir/subdir.sass +6 -0
- data/vendor/sass/test/sass/templates/units.sass +11 -0
- data/vendor/sass/test/sass/templates/warn.sass +3 -0
- data/vendor/sass/test/sass/templates/warn_imported.sass +4 -0
- data/vendor/sass/test/sass/test_helper.rb +8 -0
- data/vendor/sass/test/sass/util/subset_map_test.rb +91 -0
- data/vendor/sass/test/sass/util_test.rb +254 -0
- data/vendor/sass/test/test_helper.rb +69 -0
- data/vendor/sass/yard/callbacks.rb +29 -0
- data/vendor/sass/yard/default/fulldoc/html/css/common.sass +26 -0
- data/vendor/sass/yard/default/layout/html/footer.erb +12 -0
- data/vendor/sass/yard/inherited_hash.rb +41 -0
- metadata +458 -0
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
|
2
|
+
<html>
|
|
3
|
+
<head>
|
|
4
|
+
<title>Stop. haml time</title>
|
|
5
|
+
<div id='content'>
|
|
6
|
+
<h1>This is a title!</h1>
|
|
7
|
+
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit</p>
|
|
8
|
+
<p class='foo'>Cigarettes!</p>
|
|
9
|
+
<h2>Man alive!</h2>
|
|
10
|
+
<ul class='things'>
|
|
11
|
+
<li>Slippers</li>
|
|
12
|
+
<li>Shoes</li>
|
|
13
|
+
<li>Bathrobe</li>
|
|
14
|
+
<li>Coffee</li>
|
|
15
|
+
</ul>
|
|
16
|
+
<pre>This is some text that's in a pre block!
|
|
17
|
+
Let's see what happens when it's rendered! What about now, since we're on a new line?</pre>
|
|
18
|
+
</div>
|
|
19
|
+
</head>
|
|
20
|
+
</html>
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
<div>
|
|
2
|
+
<h1>I can count!</h1>
|
|
3
|
+
1
|
|
4
|
+
2
|
|
5
|
+
3
|
|
6
|
+
4
|
|
7
|
+
5
|
|
8
|
+
6
|
|
9
|
+
7
|
|
10
|
+
8
|
|
11
|
+
9
|
|
12
|
+
10
|
|
13
|
+
11
|
|
14
|
+
12
|
|
15
|
+
13
|
|
16
|
+
14
|
|
17
|
+
15
|
|
18
|
+
16
|
|
19
|
+
17
|
|
20
|
+
18
|
|
21
|
+
19
|
|
22
|
+
20
|
|
23
|
+
<h1>I know my ABCs!</h1>
|
|
24
|
+
<ul>
|
|
25
|
+
<li>a</li>
|
|
26
|
+
<li>b</li>
|
|
27
|
+
<li>c</li>
|
|
28
|
+
<li>d</li>
|
|
29
|
+
<li>e</li>
|
|
30
|
+
<li>f</li>
|
|
31
|
+
<li>g</li>
|
|
32
|
+
<li>h</li>
|
|
33
|
+
<li>i</li>
|
|
34
|
+
<li>j</li>
|
|
35
|
+
<li>k</li>
|
|
36
|
+
<li>l</li>
|
|
37
|
+
<li>m</li>
|
|
38
|
+
<li>n</li>
|
|
39
|
+
<li>o</li>
|
|
40
|
+
<li>p</li>
|
|
41
|
+
<li>q</li>
|
|
42
|
+
<li>r</li>
|
|
43
|
+
<li>s</li>
|
|
44
|
+
<li>t</li>
|
|
45
|
+
<li>u</li>
|
|
46
|
+
<li>v</li>
|
|
47
|
+
<li>w</li>
|
|
48
|
+
<li>x</li>
|
|
49
|
+
<li>y</li>
|
|
50
|
+
<li>z</li>
|
|
51
|
+
</ul>
|
|
52
|
+
<h1>I can catch errors!</h1>
|
|
53
|
+
Oh no! "undefined method `silly' for String:Class" happened!
|
|
54
|
+
<p>
|
|
55
|
+
"false" is:
|
|
56
|
+
false
|
|
57
|
+
</p>
|
|
58
|
+
Even!
|
|
59
|
+
Odd!
|
|
60
|
+
Even!
|
|
61
|
+
Odd!
|
|
62
|
+
Even!
|
|
63
|
+
</div>
|
|
64
|
+
<div class='foo'>
|
|
65
|
+
<strong>foobar</strong>
|
|
66
|
+
</div>
|
|
67
|
+
<strong>0</strong>
|
|
68
|
+
<strong>1</strong>
|
|
69
|
+
<strong>2</strong>
|
|
70
|
+
<strong>3</strong>
|
|
71
|
+
<strong>4</strong>
|
|
72
|
+
<div class='test'>
|
|
73
|
+
<p>boom</p>
|
|
74
|
+
</div>
|
|
@@ -0,0 +1,162 @@
|
|
|
1
|
+
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
|
2
|
+
<html lang='en-US' xml:lang='en-US' xmlns='http://www.w3.org/1999/xhtml'>
|
|
3
|
+
<head>
|
|
4
|
+
<title>Hampton Catlin Is Totally Awesome</title>
|
|
5
|
+
<meta content='text/html; charset=utf-8' http-equiv='Content-Type' />
|
|
6
|
+
</head>
|
|
7
|
+
<body>
|
|
8
|
+
<!-- You're In my house now! -->
|
|
9
|
+
<div class='header'>
|
|
10
|
+
Yes, ladies and gentileman. He is just that egotistical.
|
|
11
|
+
Fantastic! This should be multi-line output
|
|
12
|
+
The question is if this would translate! Ahah!
|
|
13
|
+
20
|
|
14
|
+
</div>
|
|
15
|
+
<div id='body'> Quotes should be loved! Just like people!</div>
|
|
16
|
+
0
|
|
17
|
+
1
|
|
18
|
+
2
|
|
19
|
+
3
|
|
20
|
+
4
|
|
21
|
+
5
|
|
22
|
+
6
|
|
23
|
+
7
|
|
24
|
+
8
|
|
25
|
+
9
|
|
26
|
+
10
|
|
27
|
+
11
|
|
28
|
+
12
|
|
29
|
+
13
|
|
30
|
+
14
|
|
31
|
+
15
|
|
32
|
+
16
|
|
33
|
+
17
|
|
34
|
+
18
|
|
35
|
+
19
|
|
36
|
+
20
|
|
37
|
+
21
|
|
38
|
+
22
|
|
39
|
+
23
|
|
40
|
+
24
|
|
41
|
+
25
|
|
42
|
+
26
|
|
43
|
+
27
|
|
44
|
+
28
|
|
45
|
+
29
|
|
46
|
+
30
|
|
47
|
+
31
|
|
48
|
+
32
|
|
49
|
+
33
|
|
50
|
+
34
|
|
51
|
+
35
|
|
52
|
+
36
|
|
53
|
+
37
|
|
54
|
+
38
|
|
55
|
+
39
|
|
56
|
+
40
|
|
57
|
+
41
|
|
58
|
+
42
|
|
59
|
+
43
|
|
60
|
+
44
|
|
61
|
+
45
|
|
62
|
+
46
|
|
63
|
+
47
|
|
64
|
+
48
|
|
65
|
+
49
|
|
66
|
+
50
|
|
67
|
+
51
|
|
68
|
+
52
|
|
69
|
+
53
|
|
70
|
+
54
|
|
71
|
+
55
|
|
72
|
+
56
|
|
73
|
+
57
|
|
74
|
+
58
|
|
75
|
+
59
|
|
76
|
+
60
|
|
77
|
+
61
|
|
78
|
+
62
|
|
79
|
+
63
|
|
80
|
+
64
|
|
81
|
+
65
|
|
82
|
+
66
|
|
83
|
+
67
|
|
84
|
+
68
|
|
85
|
+
69
|
|
86
|
+
70
|
|
87
|
+
71
|
|
88
|
+
72
|
|
89
|
+
73
|
|
90
|
+
74
|
|
91
|
+
75
|
|
92
|
+
76
|
|
93
|
+
77
|
|
94
|
+
78
|
|
95
|
+
79
|
|
96
|
+
80
|
|
97
|
+
81
|
|
98
|
+
82
|
|
99
|
+
83
|
|
100
|
+
84
|
|
101
|
+
85
|
|
102
|
+
86
|
|
103
|
+
87
|
|
104
|
+
88
|
|
105
|
+
89
|
|
106
|
+
90
|
|
107
|
+
91
|
|
108
|
+
92
|
|
109
|
+
93
|
|
110
|
+
94
|
|
111
|
+
95
|
|
112
|
+
96
|
|
113
|
+
97
|
|
114
|
+
98
|
|
115
|
+
99
|
|
116
|
+
100
|
|
117
|
+
101
|
|
118
|
+
102
|
|
119
|
+
103
|
|
120
|
+
104
|
|
121
|
+
105
|
|
122
|
+
106
|
|
123
|
+
107
|
|
124
|
+
108
|
|
125
|
+
109
|
|
126
|
+
110
|
|
127
|
+
111
|
|
128
|
+
112
|
|
129
|
+
113
|
|
130
|
+
114
|
|
131
|
+
115
|
|
132
|
+
116
|
|
133
|
+
117
|
|
134
|
+
118
|
|
135
|
+
119
|
|
136
|
+
Wow.|
|
|
137
|
+
<p code='3'>
|
|
138
|
+
Holy cow multiline tags! A pipe (|) even!
|
|
139
|
+
PipesIgnored|PipesIgnored|PipesIgnored|
|
|
140
|
+
1|2|3
|
|
141
|
+
</p>
|
|
142
|
+
<div class='silent' foo='17'>
|
|
143
|
+
this shouldn't evaluate but now it should!
|
|
144
|
+
</div>
|
|
145
|
+
<ul class='really cool'>
|
|
146
|
+
<li>a</li>
|
|
147
|
+
<li>b</li>
|
|
148
|
+
<li>c</li>
|
|
149
|
+
<li>d</li>
|
|
150
|
+
<li>e</li>
|
|
151
|
+
<li>f</li>
|
|
152
|
+
</ul>
|
|
153
|
+
<div class='of_divs_with_underscore' id='combo'>with this text</div>
|
|
154
|
+
foo
|
|
155
|
+
<div class='footer'>
|
|
156
|
+
<strong class='shout'>
|
|
157
|
+
This is a really long ruby quote. It should be loved and wrapped because its more than 50 characters. This value may change in the future and this test may look stupid.
|
|
158
|
+
So, I'm just making it *really* long. God, I hope this works
|
|
159
|
+
</strong>
|
|
160
|
+
</div>
|
|
161
|
+
</body>
|
|
162
|
+
</html>
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
<div class='tags'>
|
|
2
|
+
<foo>1</foo>
|
|
3
|
+
<FOO>2</FOO>
|
|
4
|
+
<fooBAR>3</fooBAR>
|
|
5
|
+
<fooBar>4</fooBar>
|
|
6
|
+
<foo_bar>5</foo_bar>
|
|
7
|
+
<foo-bar>6</foo-bar>
|
|
8
|
+
<foo:bar>7</foo:bar>
|
|
9
|
+
<foo class='bar'>8</foo>
|
|
10
|
+
<fooBAr_baz:boom_bar>9</fooBAr_baz:boom_bar>
|
|
11
|
+
<foo13>10</foo13>
|
|
12
|
+
<foo2u>11</foo2u>
|
|
13
|
+
</div>
|
|
14
|
+
<div class='classes'>
|
|
15
|
+
<p class='foo bar' id='boom'></p>
|
|
16
|
+
<div class='fooBar'>a</div>
|
|
17
|
+
<div class='foo-bar'>b</div>
|
|
18
|
+
<div class='foo_bar'>c</div>
|
|
19
|
+
<div class='FOOBAR'>d</div>
|
|
20
|
+
<div class='foo16'>e</div>
|
|
21
|
+
<div class='123'>f</div>
|
|
22
|
+
<div class='foo2u'>g</div>
|
|
23
|
+
</div>
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
<div id='whitespace_test'>
|
|
2
|
+
<div class='text_area_test_area'>
|
|
3
|
+
<textarea>Oneline</textarea>
|
|
4
|
+
</div>
|
|
5
|
+
<textarea>BLAH
|
|
6
|
+
</textarea>
|
|
7
|
+
<div class='text_area_test_area'>
|
|
8
|
+
<textarea>Two
lines</textarea>
|
|
9
|
+
</div>
|
|
10
|
+
<textarea>BLAH
|
|
11
|
+
</textarea>
|
|
12
|
+
<div class='text_area_test_area'>
|
|
13
|
+
<textarea>Oneline</textarea>
|
|
14
|
+
</div>
|
|
15
|
+
<textarea>BLAH</textarea>
|
|
16
|
+
<div class='text_area_test_area'>
|
|
17
|
+
<textarea>Two
lines</textarea>
|
|
18
|
+
</div>
|
|
19
|
+
<textarea>BLAH</textarea>
|
|
20
|
+
<div id='flattened'>
|
|
21
|
+
<div class='text_area_test_area'>
|
|
22
|
+
<textarea>Two
lines</textarea>
|
|
23
|
+
</div>
|
|
24
|
+
<textarea>BLAH</textarea>
|
|
25
|
+
</div>
|
|
26
|
+
</div>
|
|
27
|
+
<div class='hithere'>
|
|
28
|
+
Foo bar
|
|
29
|
+
<pre>foo bar</pre>
|
|
30
|
+
<pre>foo
bar</pre>
|
|
31
|
+
<p><pre>foo
bar</pre></p>
|
|
32
|
+
<p>
|
|
33
|
+
foo
|
|
34
|
+
bar
|
|
35
|
+
</p>
|
|
36
|
+
</div>
|
|
37
|
+
<div class='foo'>
|
|
38
|
+
13
|
|
39
|
+
<textarea>
|
|
40
|
+
a
|
|
41
|
+
</textarea>
|
|
42
|
+
<textarea>
a</textarea>
|
|
43
|
+
</div>
|
|
44
|
+
<div id='whitespace_test'>
|
|
45
|
+
<div class='text_area_test_area'>
|
|
46
|
+
<textarea>Oneline</textarea>
|
|
47
|
+
</div>
|
|
48
|
+
<textarea>BLAH
|
|
49
|
+
</textarea>
|
|
50
|
+
<div class='text_area_test_area'>
|
|
51
|
+
<textarea>Two
lines</textarea>
|
|
52
|
+
</div>
|
|
53
|
+
<textarea>BLAH
|
|
54
|
+
</textarea>
|
|
55
|
+
<div class='text_area_test_area'>
|
|
56
|
+
<textarea>Oneline</textarea>
|
|
57
|
+
</div>
|
|
58
|
+
<textarea>BLAH</textarea>
|
|
59
|
+
<div class='text_area_test_area'>
|
|
60
|
+
<textarea>Two
lines</textarea>
|
|
61
|
+
</div>
|
|
62
|
+
<textarea>BLAH</textarea>
|
|
63
|
+
<div id='flattened'>
|
|
64
|
+
<div class='text_area_test_area'>
|
|
65
|
+
<textarea>Two
lines</textarea>
|
|
66
|
+
</div>
|
|
67
|
+
<textarea>BLAH</textarea>
|
|
68
|
+
</div>
|
|
69
|
+
</div>
|
|
70
|
+
<div class='hithere'>
|
|
71
|
+
Foo bar
|
|
72
|
+
<pre>foo bar</pre>
|
|
73
|
+
<pre>foo
bar</pre>
|
|
74
|
+
<p><pre>foo
bar</pre></p>
|
|
75
|
+
<p>
|
|
76
|
+
foo
|
|
77
|
+
bar
|
|
78
|
+
</p>
|
|
79
|
+
<pre> ___
 ,o88888
 ,o8888888'
 ,:o:o:oooo. ,8O88Pd8888"
 ,.::.::o:ooooOoOoO. ,oO8O8Pd888'"
 ,.:.::o:ooOoOoOO8O8OOo.8OOPd8O8O"
 , ..:.::o:ooOoOOOO8OOOOo.FdO8O8"
 , ..:.::o:ooOoOO8O888O8O,COCOO"
 , . ..:.::o:ooOoOOOO8OOOOCOCO"
 . ..:.::o:ooOoOoOO8O8OCCCC"o
 . ..:.::o:ooooOoCoCCC"o:o
 . ..:.::o:o:,cooooCo"oo:o:
 ` . . ..:.:cocoooo"'o:o:::'
 .` . ..::ccccoc"'o:o:o:::'
 :.:. ,c:cccc"':.:.:.:.:.'
 ..:.:"'`::::c:"'..:.:.:.:.:.' http://www.chris.com/ASCII/
 ...:.'.:.::::"' . . . . .'
 .. . ....:."' ` . . . ''
 . . . ...."'
 .. . ."' -hrr-
 .


 It's a planet!
%strong This shouldn't be bold!</pre>
|
|
80
|
+
<strong>This should!</strong>
|
|
81
|
+
<textarea> ___ ___ ___ ___ 
 /\__\ /\ \ /\__\ /\__\
 /:/ / /::\ \ /::| | /:/ /
 /:/__/ /:/\:\ \ /:|:| | /:/ / 
 /::\ \ ___ /::\~\:\ \ /:/|:|__|__ /:/ / 
 /:/\:\ /\__\ /:/\:\ \:\__\ /:/ |::::\__\ /:/__/ 
 \/__\:\/:/ / \/__\:\/:/ / \/__/~~/:/ / \:\ \ 
 \::/ / \::/ / /:/ / \:\ \ 
 /:/ / /:/ / /:/ / \:\ \ 
 /:/ / /:/ / /:/ / \:\__\
 \/__/ \/__/ \/__/ \/__/
 
 Many
 thanks
 to
 http://www.network-science.de/ascii/
|
|
82
|
+
<strong>indeed!</strong></textarea>
|
|
83
|
+
</div>
|
|
84
|
+
<div class='foo'>
|
|
85
|
+
13
|
|
86
|
+
</div>
|
|
87
|
+
<pre> __ ______ __ ______
.----.| |--.|__ |.----.| |--..--------.| __ |
| __|| ||__ || __|| < | || __ |
|____||__|__||______||____||__|__||__|__|__||______|</pre>
|
|
88
|
+
<pre>foo
|
|
89
|
+
bar</pre>
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
# Haml Spec #
|
|
2
|
+
|
|
3
|
+
Haml Spec provides a basic suite of tests for Haml interpreters.
|
|
4
|
+
|
|
5
|
+
It is intented for developers who are creating or maintaining an implementation
|
|
6
|
+
of the [Haml](http://haml-lang.com) markup language.
|
|
7
|
+
|
|
8
|
+
At the moment, there are test runners for the [original Haml](http://github.com/nex3/haml)
|
|
9
|
+
in Ruby, and for [Lua Haml](http://github.com/norman/lua-haml). Support for
|
|
10
|
+
other versions of Haml will be added if their developers/maintainers
|
|
11
|
+
are interested in using it.
|
|
12
|
+
|
|
13
|
+
## The Tests ##
|
|
14
|
+
|
|
15
|
+
The tests are kept in JSON format for portability across languages. Each test
|
|
16
|
+
is a JSON object with expected input, output, local variables and configuration
|
|
17
|
+
parameters (see below). The test suite only provides tests for features which
|
|
18
|
+
are portable, therefore no tests for script are provided, nor for external
|
|
19
|
+
filters such as :markdown or :textile.
|
|
20
|
+
|
|
21
|
+
The one major exception to this are the tests for interpolation, which you may
|
|
22
|
+
need to modify with a regular expression to run under PHP or Perl, which
|
|
23
|
+
require a symbol before variable names. These tests are included despite being
|
|
24
|
+
less than 100% portable because interpolation is an important part of Haml and
|
|
25
|
+
can be tricky to implement.
|
|
26
|
+
|
|
27
|
+
## Running the Tests ##
|
|
28
|
+
|
|
29
|
+
### Ruby ###
|
|
30
|
+
|
|
31
|
+
In order to make it as easy as possible for non-Ruby programmers to run the
|
|
32
|
+
Ruby Haml tests, the Ruby test runner uses test/unit, rather than something
|
|
33
|
+
fancier like Rspec. To run them you probably only need to install `haml`, and
|
|
34
|
+
possibly `ruby` if your platform doesn't come with it by default. If you're
|
|
35
|
+
using Ruby 1.8.x, you'll also need to install `json`:
|
|
36
|
+
|
|
37
|
+
sudo gem install haml
|
|
38
|
+
# for Ruby 1.8.x; check using "ruby --version" if unsure
|
|
39
|
+
sudo gem install json
|
|
40
|
+
|
|
41
|
+
Then, running the Ruby test suite is easy:
|
|
42
|
+
|
|
43
|
+
ruby ruby_haml_test.rb
|
|
44
|
+
|
|
45
|
+
### Lua ###
|
|
46
|
+
|
|
47
|
+
The Lua test depends on [Telescope](http://telescope.luaforge.net/),
|
|
48
|
+
[jason4lua](http://json.luaforge.net/), and
|
|
49
|
+
[Lua Haml](http://github.com/norman/lua-haml). Install and
|
|
50
|
+
run `tsc lua_haml_spec.lua`.
|
|
51
|
+
|
|
52
|
+
## Contributing ##
|
|
53
|
+
|
|
54
|
+
### Getting it ###
|
|
55
|
+
|
|
56
|
+
You can access the [Git repository](http://github.com/norman/haml-spec) at:
|
|
57
|
+
|
|
58
|
+
git://github.com/norman/haml-spec.git
|
|
59
|
+
|
|
60
|
+
Patches are *very* welcome, as are test runners for your Haml implementation.
|
|
61
|
+
|
|
62
|
+
As long as any test you add run against Ruby Haml and are not redundant, I'll
|
|
63
|
+
be very happy to add them.
|
|
64
|
+
|
|
65
|
+
### Test JSON format ###
|
|
66
|
+
|
|
67
|
+
"test name" : {
|
|
68
|
+
"haml" : "haml input",
|
|
69
|
+
"html" : "expected html output",
|
|
70
|
+
"result" : "expected test result",
|
|
71
|
+
"locals" : "local vars",
|
|
72
|
+
"config" : "config params"
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
* test name: This should be a *very* brief description of what's being tested. It can
|
|
76
|
+
be used by the test runners to name test methods, or to exclude certain tests from being
|
|
77
|
+
run.
|
|
78
|
+
* haml: The Haml code to be evaluated. Always required.
|
|
79
|
+
* html: The HTML output that should be generated. Required unless "result" is "error".
|
|
80
|
+
* result: Can be "pass" or "error". If it's absent, then "pass" is assumed. If it's "error",
|
|
81
|
+
then the goal of the test is to make sure that malformed Haml code generates an error.
|
|
82
|
+
* locals: An object containing local variables needed for the test.
|
|
83
|
+
* config: An object containing configuration parameters used to run the test.
|
|
84
|
+
The configuration parameters should be usable directly by Ruby's Haml with no
|
|
85
|
+
modification. If your implementation uses config parameters with different
|
|
86
|
+
names, you may need to process them to make them match your implementation.
|
|
87
|
+
If your implementation has options that do not exist in Ruby's Haml, then you
|
|
88
|
+
should add tests for this in your implementation's test rather than here.
|
|
89
|
+
|
|
90
|
+
## License ##
|
|
91
|
+
|
|
92
|
+
This project is released under the [WTFPL](http://sam.zoy.org/wtfpl/) in order
|
|
93
|
+
to be as usable as possible in any project, commercial or free.
|
|
94
|
+
|
|
95
|
+
## Author ##
|
|
96
|
+
|
|
97
|
+
[Norman Clarke](mailto:norman@njclarke.com)
|