Commit Graph
256 Commits
Author SHA1 Message Date
Justin Hileman 7cb2029ec2 Add test for double-rendered sections, prevent mustache injection (see fix for mustache.js: http://hile.mn/fOVoW1 ...) 2010-12-08 08:16:06 -05:00
Justin Hileman 7ffd232c2e Merge branch 'dev' into feature/mustache-spec 2010-11-26 15:53:56 -05:00
Justin Hileman 289cd023d4 Optimize dot notation check
Don't try to traverse dot notation unless there's a dot in the variable name.
2010-11-26 15:45:57 -05:00
Justin Hileman b33b1a7bf2 Remove an extra trim(); 2010-11-26 15:38:45 -05:00
Justin Hileman c1bac31884 Merge branch 'dev' into feature/whitespace-overhaul 2010-11-26 14:33:23 -05:00
Justin Hileman fe91be1fb1 Pre-escape tag type constants (saves us from doing it each time the regex strings are prepared) 2010-11-26 14:07:10 -05:00
Justin Hileman 225a32d5bf Updating _renderTag logic around leftover section tags.
Exceptions are now thrown by _renderSections, so anything left over by the time _renderTag executes should just be discarded.
2010-11-26 14:05:20 -05:00
Justin Hileman 730c3a36e5 Update phpunit config to exclude tests from coverage report. 2010-11-26 14:03:45 -05:00
Justin Hileman 2b8e2f6e84 Capture whitespace before tags, prefix it to partials. 2010-11-24 08:11:09 -05:00
Justin Hileman 3e6b8102b7 Massive overhaul of Mustache.php's whitespace handling.
Move regex preparation into methods, use named subpatterns so the regex makes more sense. Fix the logic around eating newlines adjacent to tags. Update tests to reflect the changes.
2010-11-24 07:45:24 -05:00
Justin Hileman e0ec0d0e18 Swap out spyc for sfYaml.
spyc has a parsing bug which causes partials to fail. I mean, they fail for other reasons too. And we're getting to those. But we don't need to debug YAML parsers while we're at it.
2010-11-24 05:07:35 -05:00
Justin Hileman ab29f6eef4 Merge branch 'dev' into feature/mustache-spec 2010-11-24 04:15:42 -05:00
Justin Hileman d026315a2c Even more ludicrous recursive section / implicit iterator tests. 2010-11-24 04:10:37 -05:00
Justin Hileman fef6234954 Test case for recursive sections with implicit iterators. 2010-11-24 04:02:19 -05:00
Justin Hileman 16115f915b Merge branch 'feature/section-stack' into dev 2010-11-24 03:54:14 -05:00
Justin Hileman fa0e7fac80 Merge branch 'dev' into feature/section-stack 2010-11-24 03:52:22 -05:00
Justin Hileman 1282b8104a A broken example for issue #12 - recursive/nested sections. 2010-11-24 03:52:04 -05:00
Justin Hileman bb04ccd05e Add an inverted section test to base test case. 2010-11-24 03:36:41 -05:00
Justin Hileman 943aa8849a Add test groups for easier test breakdown. 2010-11-24 03:36:23 -05:00
Justin Hileman f143f17b40 Add test groups for easier test breakdown. 2010-11-24 03:26:44 -05:00
Justin Hileman 38accdaf89 More correct sections implementation.
Allows nested sections of the same name, throws exceptions on incorrectly nested sections, e.g.:

    {{#foo}}{{#bar}}{{/foo}}{{/bar}}

Add a set of tests for incorrectly nested sections.
2010-11-24 03:16:18 -05:00
Justin Hileman a39c6f689e Merge branch 'release/0.4.0' 2010-10-30 18:12:58 -04:00
Justin Hileman 35c725089b Revert "Merge branch 'luciferous-master' into dev"
This reverts commit 9202a37cf5, reversing
changes made to 54b5800d42.

Using `is_callable` is problematic as the `__call` magic method interferes with
context all over the place. See http://hile.mn/buBS11 and http://hile.mn/9vy1S6
2010-10-30 18:06:39 -04:00
Justin Hileman 9202a37cf5 Merge branch 'luciferous-master' into dev 2010-10-30 17:16:33 -04:00
Justin Hileman 54b5800d42 Merge branch 'ThePixelDeveloper-master' into dev 2010-10-30 17:13:37 -04:00
Justin Hileman f2d77ad695 Whitespace 2010-10-30 17:13:27 -04:00
Justin Hileman 963faf5de9 Merge branch 'dev' into feature/mustache-spec 2010-10-30 16:53:35 -04:00
Justin Hileman f3cb0877ff Add support for 'less-than' partial notation. 2010-10-30 16:53:14 -04:00
Justin Hileman 596fb3c1d4 Adding test support for the mustache spec.
To run the spec tests, you must initialize the spec submodule:

    git submodule update --init

You can then run just spec tests, if that's the sort of thing you're into:

    cd test
    phpunit --filter Spec

This test currently skips Lambdas -- the Mustache.php implementation is still in a feature branch. It also skips recursive partials to keep [issue #11](http://hile.mn/bYIIYt) from breaking PHPUnit with infinite recursion.
2010-10-30 16:50:38 -04:00
Neuman Vong 65770a03f6 Use is_callable instead of method_exists
To use objects implementing __call().

Closes #18.
2010-10-29 14:07:43 -07:00
Mathew Davies e8f99bb04e Use array_key_exists instead of isset for checking array values. 2010-10-02 21:05:37 +01:00
Justin Hileman e3c7afde46 Moved test for #11 into 'escaped' example. 2010-08-17 15:27:46 -04:00
Jeremy Bush 758027bd91 Fixing Issue #11 2010-08-17 15:24:30 -04:00
Justin Hileman 2bd68f59b1 Merge branch 'release/0.3.0' into dev 2010-08-15 07:21:28 -04:00
Justin Hileman 8b1c9c113c Merge branch 'release/0.3.0' 2010-08-15 07:12:45 -04:00
Justin Hileman 568b6c8512 don't include phpunit in test cases. 2010-08-15 07:12:26 -04:00
Justin Hileman eb01f3052c Merge branch 'feature/test-coverage' into dev 2010-08-15 06:56:02 -04:00
Justin Hileman 31b38b71a2 Test coverage is no longer incomplete. 2010-08-15 06:55:47 -04:00
Justin Hileman f91f74ef1b Clean up comments and whitespace. 2010-08-15 06:55:12 -04:00
Justin Hileman e2546d40c1 Minor test coverage improvements.
Add regression test for newlines in comments. Add rudimentary partials test.
2010-08-15 06:54:54 -04:00
Justin Hileman 39b24c1933 Update mustache object section test to cover class method access for embedded objects. 2010-08-15 06:53:12 -04:00
Justin Hileman 54d91b667b Adjust _renderTag so xdebug relizes that it actually has full test coverage. This commit marks 100% test coverage of Mustache.php. 2010-08-15 06:33:55 -04:00
Justin Hileman 5de845cb2e Add test coverage for edge cases and exceptions. 2010-08-15 06:32:36 -04:00
Justin Hileman de968a42b4 Initialize local pragmas with empty array. 2010-08-15 06:30:15 -04:00
Justin Hileman 582c3278fa Add known issue for whitespace, mark whitespace test as skipped. 2010-08-15 06:28:56 -04:00
Justin Hileman e40a57cba1 Refactor section_iterator_objects example.
Defining an IteratorObject class is unnecessary: the ArrayIterator will do just fine.
2010-08-15 06:27:54 -04:00
Matt Button 196f334621 Re-ordering mustache variable precedence 2010-08-13 13:22:35 -04:00
Justin Hileman 4c85d9f3e4 Merge branch 'feature/test-coverage' of github.com:bobthecow/mustache.php into feature/test-coverage 2010-08-09 09:31:20 -04:00
Justin Hileman fe1493c6e7 Merge branch 'release/0.2.7' 2010-08-03 05:01:58 -04:00
Justin Hileman ec562fea09 Support for newlines inside mustache tags. 2010-08-03 04:58:15 -04:00