liquid 2.2.2 → 2.3.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (51) hide show
  1. data/{History.txt → History.md} +26 -23
  2. data/README.md +18 -16
  3. data/lib/liquid.rb +1 -4
  4. data/lib/liquid/block.rb +2 -2
  5. data/lib/liquid/context.rb +29 -33
  6. data/lib/liquid/drop.rb +11 -13
  7. data/lib/liquid/extensions.rb +13 -7
  8. data/lib/liquid/file_system.rb +2 -2
  9. data/lib/liquid/htmltags.rb +5 -4
  10. data/lib/liquid/standardfilters.rb +12 -1
  11. data/lib/liquid/strainer.rb +1 -1
  12. data/lib/liquid/tags/capture.rb +1 -1
  13. data/lib/liquid/tags/case.rb +4 -8
  14. data/lib/liquid/tags/decrement.rb +39 -0
  15. data/lib/liquid/tags/for.rb +20 -5
  16. data/lib/liquid/tags/include.rb +21 -12
  17. data/lib/liquid/tags/increment.rb +35 -0
  18. data/lib/liquid/tags/raw.rb +21 -0
  19. data/lib/liquid/tags/unless.rb +5 -5
  20. data/lib/liquid/template.rb +3 -2
  21. data/lib/liquid/variable.rb +1 -1
  22. data/test/liquid/assign_test.rb +15 -0
  23. data/test/liquid/block_test.rb +58 -0
  24. data/test/liquid/capture_test.rb +40 -0
  25. data/test/liquid/condition_test.rb +122 -0
  26. data/test/liquid/context_test.rb +478 -0
  27. data/test/liquid/drop_test.rb +162 -0
  28. data/test/liquid/error_handling_test.rb +81 -0
  29. data/test/liquid/file_system_test.rb +29 -0
  30. data/test/liquid/filter_test.rb +106 -0
  31. data/test/liquid/module_ex_test.rb +87 -0
  32. data/test/liquid/output_test.rb +116 -0
  33. data/test/liquid/parsing_quirks_test.rb +52 -0
  34. data/test/liquid/regexp_test.rb +44 -0
  35. data/test/liquid/security_test.rb +41 -0
  36. data/test/liquid/standard_filter_test.rb +191 -0
  37. data/test/liquid/strainer_test.rb +25 -0
  38. data/test/liquid/tags/html_tag_test.rb +29 -0
  39. data/test/liquid/tags/if_else_tag_test.rb +160 -0
  40. data/test/liquid/tags/include_tag_test.rb +139 -0
  41. data/test/liquid/tags/increment_tag_test.rb +24 -0
  42. data/test/liquid/tags/raw_tag_test.rb +15 -0
  43. data/test/liquid/tags/standard_tag_test.rb +461 -0
  44. data/test/liquid/tags/statements_test.rb +134 -0
  45. data/test/liquid/tags/unless_else_tag_test.rb +26 -0
  46. data/test/liquid/template_test.rb +74 -0
  47. data/test/liquid/variable_test.rb +170 -0
  48. data/test/test_helper.rb +29 -0
  49. metadata +67 -16
  50. data/Manifest.txt +0 -34
  51. data/lib/liquid/tags/literal.rb +0 -42
@@ -1,34 +0,0 @@
1
- CHANGELOG
2
- History.txt
3
- MIT-LICENSE
4
- Manifest.txt
5
- README.md
6
- Rakefile
7
- init.rb
8
- lib/extras/liquid_view.rb
9
- lib/liquid.rb
10
- lib/liquid/block.rb
11
- lib/liquid/condition.rb
12
- lib/liquid/context.rb
13
- lib/liquid/document.rb
14
- lib/liquid/drop.rb
15
- lib/liquid/errors.rb
16
- lib/liquid/extensions.rb
17
- lib/liquid/file_system.rb
18
- lib/liquid/htmltags.rb
19
- lib/liquid/module_ex.rb
20
- lib/liquid/standardfilters.rb
21
- lib/liquid/strainer.rb
22
- lib/liquid/tag.rb
23
- lib/liquid/tags/assign.rb
24
- lib/liquid/tags/capture.rb
25
- lib/liquid/tags/case.rb
26
- lib/liquid/tags/comment.rb
27
- lib/liquid/tags/cycle.rb
28
- lib/liquid/tags/for.rb
29
- lib/liquid/tags/if.rb
30
- lib/liquid/tags/ifchanged.rb
31
- lib/liquid/tags/include.rb
32
- lib/liquid/tags/unless.rb
33
- lib/liquid/template.rb
34
- lib/liquid/variable.rb
@@ -1,42 +0,0 @@
1
- module Liquid
2
-
3
- class Literal < Block
4
-
5
- # Class methods
6
-
7
- # Converts a shorthand Liquid literal into its long representation.
8
- #
9
- # Currently the Template parser only knows how to handle the long version.
10
- # So, it always checks if it is in the presence of a literal, in which case it gets converted through this method.
11
- #
12
- # Example:
13
- # Liquid::Literal "{{{ hello world }}}" #=> "{% literal %} hello world {% endliteral %}"
14
- def self.from_shorthand(literal)
15
- literal =~ LiteralShorthand ? "{% literal %}#{$1}{% endliteral %}" : literal
16
- end
17
-
18
- # Public instance methods
19
-
20
- def parse(tokens) # :nodoc:
21
- @nodelist ||= []
22
- @nodelist.clear
23
-
24
- while token = tokens.shift
25
- if token =~ FullToken && block_delimiter == $1
26
- end_tag
27
- return
28
- else
29
- @nodelist << token
30
- end
31
- end
32
-
33
- # Make sure that its ok to end parsing in the current block.
34
- # Effectively this method will throw and exception unless the current block is
35
- # of type Document
36
- assert_missing_delimitation!
37
- end # parse
38
-
39
- end
40
-
41
- Template.register_tag('literal', Literal)
42
- end