Dylan Thacker-Smith
950f062041
Allow filters to redefine Object methods to make them invokable.
2015-02-03 13:51:33 -05:00
Florian Weingarten
7cfee1616a
Use VariableSignature as Syntax for Capture tag to allow hyphens in variable names
2015-01-09 14:15:26 +00:00
Justin Li
3080f95a4f
Make render_length tests stricter
2014-12-11 10:41:47 -05:00
Justin Li
cc57908c03
Add test for render_length persisting between block bodies
2014-12-11 10:38:47 -05:00
Justin Li
4df4f218cf
Use same template instance
2014-12-09 17:25:15 -05:00
Justin Li
1593b784a7
Simplify interface for setting template resource limits
2014-12-04 16:18:21 -05:00
Justin Li
db00ec8b32
Move resource limit tracking to its own class
2014-12-04 16:18:09 -05:00
Justin Li
737be1a0c1
Use Timeout#timeout for warnings tests
2014-11-12 17:03:48 -05:00
Justin Li
422bafd66a
Fix #warnings taking exponential time to compute
2014-11-12 16:12:00 -05:00
Justin Li
95b031ee04
Add quirks test for extra dots in ranges
2014-11-05 11:41:12 -05:00
Justin Li
4d97a714a9
Add quirks test for variables with number prefixes
2014-11-05 10:56:58 -05:00
Dylan Thacker-Smith
2fd8ad08c0
Remove unused local variable that was accidentally added.
2014-11-03 17:07:42 -05:00
Dylan Thacker-Smith
73fcd42403
Create a BlockBody class to decouple block body parsing from tags.
2014-11-03 17:07:42 -05:00
Justin Li
fcb23a4cd2
Disallow filters with no variable in strict mode
2014-10-27 13:34:27 -04:00
Justin Li
a206c8301d
Fix test leaking error_mode, fix equality check for VariableLookup
2014-10-22 15:40:41 -04:00
Justin Li
887b05e6ed
Clarify test name
2014-10-21 14:06:30 -04:00
Justin Li
5d68e8803f
Ensure nil works as a variable name
2014-10-21 14:03:10 -04:00
Justin Li
dedd1d3dc0
Fix case where a variable name is falsy
2014-10-21 12:09:26 -04:00
Dylan Thacker-Smith
b9ac3fef8f
Remove the quotes from the partial string in the profiler timing objects.
2014-10-18 16:26:18 -04:00
Dylan Thacker-Smith
d84870d7a5
Test line number of errors in nested blocks.
2014-10-03 16:25:12 -05:00
Florian Weingarten
584b492e70
Line numbers for all parse errors
2014-10-03 21:00:31 +00:00
Dylan Thacker-Smith
cf5ccede50
Avoid modifying the default resources limits hash.
2014-10-01 18:51:06 -05:00
Evan Huus
23622a9739
Merge pull request #440 from Shopify/drop-tainting
...
Variable tainting
2014-09-22 13:43:35 -04:00
Florian Weingarten
be3d261e11
Regression test for including assignments
2014-09-18 10:37:44 +00:00
Evan Huus
eeb061ef44
Address code review comments
...
- clean up comment wording
- fix potentially leaky tests
2014-09-16 17:23:26 +00:00
Evan Huus
67b2c320a1
Add tainting tests
2014-09-16 17:23:26 +00:00
Dylan Thacker-Smith
a5717a3f8d
Fix flaky test which assumes total_render_time can't be 0.
...
jruby has millisecond precision for Time.now, so total_render_time can be 0
due to this lack of precision.
2014-09-15 17:26:55 -04:00
Jason Hiltz-Laforge
aafdf4adb0
Fix JRuby builds
2014-09-08 20:41:22 +00:00
Florian Weingarten
c83e1c7b6d
prefix for Liquid::Error instances
2014-09-05 14:12:30 +00:00
Florian Weingarten
17cc8fdbb3
put line number in parentheses
2014-09-05 14:12:30 +00:00
Tristan Hume
27c1019385
Add line numbers to warnings
2014-09-05 14:12:30 +00:00
Florian Weingarten
5eff375094
Optional line numbers for liquid errors
2014-09-05 14:12:29 +00:00
Tristan Hume
68af2d6e2a
Pass options to include tags
2014-08-26 10:50:25 -04:00
Derrick Reimer
0b847e553c
Add url_encode standard filter
2014-08-15 08:45:40 -07:00
Florian Weingarten
c2663258be
Merge pull request #364 from collectiveidea/instrument-rendering-with-hooks
...
Profiling the rendering of a liquid template
2014-08-13 23:04:29 +02:00
Florian Weingarten
35808390ee
Merge pull request #414 from Shopify/to_liquid_context
...
Call to_liquid in Context invoke
2014-08-12 22:05:52 +02:00
Florian Weingarten
1678c07548
Call to_liquid in Context invoke
2014-08-12 19:54:12 +00:00
Jason Roelofs
173a58d36a
Profile liquid rendering
...
Add a simple profiling system to liquid rendering. Each
liquid tag ({{ }} and {% %}) is processed through this profiling,
keeping track of the partial name (in the case of {% include %}), line
number, and the time it took to render the tag. In the case of {%
include %}, the profiler keeps track of the name of the partial and
properly links back tag rendering to the partial and line number for
easy lookup and dive down. With this, it's now possible to track down
exactly how long each tag takes to render.
These hooks get installed and uninstalled on an as-need basis so by
default there is no impact on the overall liquid execution speed.
2014-08-12 15:37:21 -04:00
Tristan Hume
f31e309770
Merge pull request #416 from Shopify/filter-quirks
...
Make Filter Quirks Tests Actual Integration Tests
2014-08-12 10:08:05 -04:00
Tristan Hume
ffe1036e15
Make tests actual integration tests
2014-08-12 09:27:46 -04:00
Tristan Hume
d5e57a8ea4
Merge pull request #412 from Shopify/assign-strict
...
Pass through options on assign tag
2014-08-11 15:37:49 -04:00
Tristan Hume
4db22be8ba
Add tests for assign tag fix
2014-08-11 13:06:01 -04:00
Tristan Hume
dc58a4d648
Add quirks test for unanchored filter args
2014-08-11 11:58:36 -04:00
Jean Boussier
df6b442816
Cast input to string before spliting
2014-08-07 14:01:44 -04:00
Florian Weingarten
fb6f9c1c13
Slice filter for arrays.
2014-08-05 17:59:31 +00:00
Florian Weingarten
66ae7f3ec0
Merge pull request #406 from Shopify/slice_filter
...
slice filter
2014-08-05 17:14:01 +02:00
Florian Weingarten
e5b0487fef
Merge pull request #312 from Shopify/uniq_filter
...
uniq filter
2014-08-05 16:22:48 +02:00
Florian Weingarten
baea0a6bf7
slice filter
2014-08-04 16:47:08 +00:00
Florian Weingarten
33e7b8e373
uniq filter
2014-07-29 13:09:34 +00:00
Florian Weingarten
a2f0f2547d
with_global_filter test helper
2014-07-28 19:28:22 +00:00