Commit Graph
438 Commits
Author SHA1 Message Date
Marco Concetto Rudilosso 7f2cf1fe67 Recursively parse for liquid tag 2023-07-07 11:20:34 +01:00
Marco Concetto Rudilosso 10e0fb795e Allow liquid tag inside liquid tag 2023-07-06 10:45:12 +01:00
Adam Klingbaum 98ce25cb40 Ensure sum filter calls to_liquid 2023-06-22 16:25:11 +00:00
Adam Klingbaum af66bc8a5f Add sum filter to standard filters 2023-06-19 19:11:05 +00:00
Guillaume Malette 649cca1349 [trim] Fix trimming at end of raw block when specified in the opening tag 2023-05-19 11:41:45 -04:00
Michael Go 1d97389fb0 render template name with Liquid Syntax errors 2023-03-02 16:50:55 -04:00
Michael Go 24dceef552 set context's template_name with template's name 2023-02-28 10:55:38 -04:00
Michael Go 428c66ffac add name attribute to Template for more flexibility to set context's template name 2023-02-27 17:11:52 -04:00
Michael Go 0fe4a5d144 render error message with actual template path 2023-02-27 11:01:21 -04:00
Guilherme CarreiroandGitHub 9ab688eada Update rubocop-shopify (2.7.0 -> 2.12.0) (#1687) 2023-02-15 08:40:59 +01:00
Michael GoandGitHub 4599e5459f Merge pull request #1684 from Shopify/fix-variable-lookup-parse-timeout
fix variable lookup parse timing out with missing closing bracket
2023-02-02 10:39:46 -04:00
Dylan Thacker-SmithandGitHub 59c445f0e1 Avoid a couple of duplicate assertions (#1675) 2023-02-02 09:31:01 -05:00
Michael Go bd9c3802c8 add variable parser timeout unit tests 2023-02-01 21:15:35 -04:00
Michael Go 2b40850e4a fix variable lookup parse timing out with missing closing bracket 2023-02-01 19:52:30 -04:00
Marco Concetto Rudilosso ddc32b7bd8 actually test whitespace stripping 2023-02-01 15:52:34 +00:00
Marco Concetto Rudilosso 74e505f6fa Allow raw tag to be used with whitespace control 2023-02-01 13:49:51 +00:00
Michael Go dd257b3d66 add an unit test for double nest variable lookup 2023-01-30 20:36:14 -04:00
Michael Go 1aaf6ed019 recursively parse brackets on variable lookup 2023-01-30 20:19:35 -04:00
Michael Go 0f11c97623 raise invalid integer argument error from tablerow 2023-01-16 18:53:53 -04:00
Dylan Thacker-Smith 619ed3fcd7 Add some additional to_liquid_value assertions 2023-01-13 15:46:12 -05:00
Dylan Thacker-SmithandGitHub bf711a0521 Provide another assertion for to_liquid_value unless tag test (#1672)
Since the original one would pass even if to_liquid_value isn't called on
the BooleanDrop object.
2023-01-11 14:05:27 -05:00
Dylan Thacker-SmithandGitHub c2c6cb2b15 Allow commas to separate for tag attributes (#1658)
For consistency with tags like the `render` tag, where we actually
prefer to use commas to separate attributes
2022-11-29 09:00:55 -05:00
Dylan Thacker-SmithandGitHub 1cd5ec54f0 Merge pull request #1641 from Shopify/assert-template-result-static-env
Use static environment assert_template_result input values
2022-11-02 10:05:52 -04:00
Peter Zhu abed47547c Fix tags in comment 2022-11-01 13:04:41 -04:00
Dylan Thacker-Smith db8e85ab31 Prevent an internal error in include tag from non-string template_name
which would otherwise happen on `template_name.split('/')`
2022-10-28 13:59:00 -04:00
Dylan Thacker-SmithandGitHub 96b5325f87 Remove Usage.increment calls that have been shown to in fact be used (#1645)
I think these were added for undocumented features to see if they were
actually used and they were being used.
2022-10-26 09:21:43 -04:00
Dylan Thacker-SmithandGitHub 6ce4ec1011 tablerow: Avoid accidental special case for constant nil cols (#1644)
It should behave the same as an expression that evaluates to nil
2022-10-25 10:21:03 -04:00
Dylan Thacker-Smith 2c2f5826d5 Change increment/decrement tests to avoid relying on input
So these can be tested using language tests, without needing support
for counter value input, which isn't needed if input is provided
through the static environment.
2022-10-21 11:43:58 -04:00
Dylan Thacker-Smith c0c191cabd Add assertions for truncate filter with large integers 2022-10-11 12:44:33 -04:00
Dylan Thacker-Smith 6765d93938 Avoid internal errors for large arguments to slice filter
Use saturating conversion, which has expected semantics for large integers.
2022-10-11 12:44:32 -04:00
Dylan Thacker-Smith 4f17abfb4a Handle truncatewords word length out of range as if no truncation is needed 2022-10-11 12:44:32 -04:00
Michael Go fbab19ac8c fix tablerow drop's last attribute with missing cols param 2022-10-05 11:15:23 -03:00
Dylan Thacker-SmithandGitHub 456be2f75e Add a test and improve one for testing break (#1616) 2022-09-15 10:08:15 -04:00
Dylan Thacker-SmithandGitHub ff1c35b986 Stop using assert_template_result in some tests depending on language extension (#1622) 2022-09-14 17:03:48 -04:00
Dylan Thacker-Smith 34512df8e9 Use assert_template_result partials option to specify file system state 2022-09-13 10:11:01 -04:00
Dylan Thacker-Smith 4648f0fa64 Add sample usage of render_errors: true assert_template_result option 2022-09-06 16:54:38 -04:00
Dylan Thacker-Smith 3a64b3741f Add sample usage of error_mode test helper option 2022-09-06 16:44:40 -04:00
Dylan Thacker-Smith 57fdc1b5fb Add sample use of partials assert_template_result options 2022-09-06 16:44:39 -04:00
Dylan Thacker-SmithandGitHub 2515f3be09 Use assert_template_result & assert_match_syntax_error in more places (#1611) 2022-09-01 17:40:39 -04:00
Dylan Thacker-Smith 0787660603 Reserve keyword arguments for new options in assert_template_result 2022-09-01 17:38:09 -04:00
Dylan Thacker-Smith 93c252fe5a Stop passing unnecessary assigns to assert_match_syntax_error 2022-09-01 17:38:09 -04:00
Dylan Thacker-Smith df13389940 Stop passing assigns as keyword arguments to assert_template_result 2022-09-01 17:38:08 -04:00
Dylan Thacker-SmithandGitHub ca2d850eea Stop using Liquid::Expression.parse for integration testing (#1610)
Since liquid-c no longer monkey patches it, so we need a higher-level
tests to ensure they are shared across liquid implementations.
2022-09-01 17:37:47 -04:00
Dylan Thacker-SmithandGitHub eb89f22d93 Raise Liquid::SyntaxError instead of NoMethodError for invalid range (#1607) 2022-08-25 12:03:56 -04:00
Dylan Thacker-Smith 41c19929ad Rename and alias Liquid::StaticRegisters to Liquid::Registers 2022-05-04 17:25:52 -04:00
Dylan Thacker-Smith 21f3337dec Test a blank line in a comment tag 2022-04-28 09:38:44 -04:00
Charles-P. ClermontandDylan Thacker-Smith 1f0a0ad55c Add # inline comment tag.
This commit adds a new tag named `#` that behaves like a comment.

Therefore it behaves as you'd expect any tag would work. The difference
with the comment tag is that the comment is in the tag markup and that
there is no block delimiter.

What it looks like in practice:

```liquid
{%- # this is an inline comment -%}
{% # this too is an inline comment %}

{% liquid
  # required args:
  assign product = product

  # optional args:
  assign should_show_border = should_show_border | default: true
  assign should_show_cursor = should_show_cursor | default: true
%}

{% liquid
  # This is a very long comment that spans multiple lines.
  # It looks very similar to what it would look like if you wrote
  # ruby code instead of liquid. But it doesn't have all the clunk
  # of having an open tag and a close tag with so many characters.
%}
```

Co-authored-by: Dylan Thacker-Smith <[email protected]>
2022-04-28 09:38:44 -04:00
Chris AtLeeandDylan Thacker-Smith 6c2c621712 Ensure that partial caches are shared with subcontexts
Make Context use StaticRegisters by default. This makes it easier to
ensure that all subcontexts share the same static registers.

Co-authored-by: Dylan Thacker-Smith <[email protected]>
2022-04-08 10:05:58 -04:00
Thierry JoyalandGitHub 7357dcf185 Merge pull request #1536 from Shopify/flaky-profiler-test-v2
Add artificial execution time in profiler tests
2022-03-07 10:06:13 -05:00
Thierry Joyal 4af38bc549 [StandardFilter] Fix missing @context on iterations 2022-03-07 09:17:07 -05:00