aboutsummaryrefslogtreecommitdiffstats
path: root/tests/check_template_parser.c
Commit message (Collapse)AuthorAgeFilesLines
* *: big code reorganization.Rafael G. Martins2016-09-031-1184/+0
| | | | | | | - source and tests are now splitted by target - utils lib is now called common still pending move error.c from blogc to common
* *: fixed includesRafael G. Martins2016-07-071-4/+0
| | | | | this refactoring was done with the help of the 'include-what-you-use' program. if this breaks the build for you, please report!
* template-parser: fixed block scopeRafael G. Martins2016-07-071-6/+148
| | | | | this patch blocks some usage that is obviously wrong and that nobody would want to use, but that should be explicitly blocked by the parser.
* template-parser: minor fixRafael G. Martins2016-07-031-1/+1
|
* Revert "error: improved parser error reporting"Rafael G. Martins2016-07-031-93/+48
| | | | | | this will not work properly for unicode chars This reverts commit 3968529cad2baec099acff5fee47b5fe24624b03.
* error: improved parser error reportingRafael G. Martins2016-07-031-48/+93
| | | | | | now it shows a visual indicator '^' pointing to the position of the error, in the line after the error message. should be helpful for users writing templates, if any.
* template-parser: fixed error messageRafael G. Martins2016-07-031-1/+1
|
* template-parser: renderer: implemented 'else' support in templatesRafael G. Martins2016-07-031-7/+143
| | | | | | | | | yeah, this is stupid. after more than 320 commits and 26 releases, we finally support the 'else' statement in the template engine. I don't know if I'm dumb or what, but it took me that long to find a "simple" solution to this basic issue. yep, no more `{% ifdef FOO %}...{% endif %}{% ifndef FOO %}...{% endif %}` blocks. but seriously, who cares?! :/
* remove squareball for goodRafael G. Martins2016-04-271-1/+1
|
* Revert "*: use squareball error infrastructure"Rafael G. Martins2016-04-271-95/+95
| | | | This reverts commit a2b3551dfb9460470bd79f5648bf597c517c40d4.
* *: use squareball error infrastructureRafael G. Martins2016-03-131-95/+95
|
* build: replace src/utils with squareballRafael G. Martins2016-02-261-40/+40
|
* template-parser: added whitespace cleaners. needs more tests and docsRafael G. Martins2016-01-141-14/+34
|
* fixed copyrightRafael G. Martins2016-01-081-1/+1
|
* template-parser: do not accept variables startins with numbers and _Rafael G. Martins2015-12-291-1/+73
|
* man: renderer: template-parser: added foreach iterator supportRafael G. Martins2015-12-291-7/+114
|
* Revert "build: removing src/utils and replacing with squareball"Rafael G. Martins2015-12-231-31/+31
| | | | This reverts commit 950e6c9148eca244a89d18a21d4ae4e5c3d1c646.
* build: removing src/utils and replacing with squareballRafael G. Martins2015-12-231-31/+31
| | | | | squareball is a new general purpose library for C99, based on the code removed from src/utils
* Allow {% if VALUE1 == VALUE2 %}, with two definesPalmer Dabbelt2015-10-261-3/+3
| | | | | | | | | | | | | | | I was surprised to see that blogc doesn't support testing for equality between two defined values, it just supports comparison between a variable and a constant string. I want to be able to compare two variables so I can build the same source with different "-D" argument on the command line to produce different outputs. This patch adds support for this pattern. I changed the parser to include the '"' at the beginning and end of a string, which allows the renderer to determine if the user passed in a string or a variable name. This is a bit hacky and causes some of the tests to fail -- these tests look at the string values coming out of the parser. I updated the tests to match the new behavior.
* error: improved error reporting for parsersRafael G. Martins2015-10-241-18/+29
| | | | it will now report the line and the approximate position of the error.
* tempalte-parser: added tests with \r\n line endingsRafael G. Martins2015-10-221-0/+71
|
* fixed copyrightRafael G. Martins2015-05-251-1/+1
|
* template-parser: convert "if" operator into enumRafael G. Martins2015-05-171-3/+3
|
* template-parser: minor fixes. testsRafael G. Martins2015-05-171-2/+36
|
* template-parser: added real if statements. ignored by renderer for nowRafael G. Martins2015-05-171-3/+38
|
* template-parser: if -> ifdef, if not -> ifndefRafael G. Martins2015-05-171-41/+25
|
* added global variable supportRafael G. Martins2015-04-271-102/+35
|
* template parser: added more testsRafael G. Martins2015-04-231-0/+406
|
* template parser: added "if not" supportRafael G. Martins2015-04-231-6/+15
|
* refactored blocksRafael G. Martins2015-04-211-18/+18
| | | | | | | | | - changed block names: - single_source -> entry - multiple_sources -> listing - multiple_sources_once -> listing_once - added -t cli option, to build listing pages, instead of guess it from the number of source files provided.
* error: added testsRafael G. Martins2015-04-191-0/+1
|
* fix testRafael G. Martins2015-04-191-2/+2
|
* added loader, error handling and cli. tests neededRafael G. Martins2015-04-181-2/+7
|
* replaced leg-based parser with handmade parser for templatesRafael G. Martins2015-04-171-0/+222
yay! no leg parser needed anymore. parsers still needs some work and error handling, though.