aboutsummaryrefslogtreecommitdiff
path: root/t/test_1.c
diff options
context:
space:
mode:
authorAlexander Pickering <alexandermpickering@gmail.com>2019-09-28 15:28:23 -0400
committerAlexander Pickering <alexandermpickering@gmail.com>2019-09-28 15:28:23 -0400
commitd8987084b7aa3c47642af30a87c0673a2df01fd0 (patch)
treefd8a8f45e144513cf52d8315f1acdc106ee17c04 /t/test_1.c
parentdea57a10e7d7850ea8263b5590c194cfc661c6ce (diff)
downloadlibctemplates-d8987084b7aa3c47642af30a87c0673a2df01fd0.tar.gz
libctemplates-d8987084b7aa3c47642af30a87c0673a2df01fd0.tar.bz2
libctemplates-d8987084b7aa3c47642af30a87c0673a2df01fd0.zip
Bugfix
Fixed a bug where rendering a template multiple times would fail.
Diffstat (limited to 't/test_1.c')
-rw-r--r--t/test_1.c183
1 files changed, 38 insertions, 145 deletions
diff --git a/t/test_1.c b/t/test_1.c
index 068197d..9412ce3 100644
--- a/t/test_1.c
+++ b/t/test_1.c
@@ -73,6 +73,15 @@ char t_18[] = "Test var with spaces between attribute and name:<TMPL_VAR name
char c_18_1[] = "Test var with spaces between attribute and name:Correct!";
char c_18_2[] = "Test var with spaces between attribute and name:Blah";
+#define check(n,n2,a,b)\
+ if(strcmp(a,b) != 0){\
+ fprintf(stderr, "Error in test 1.%d.%d\n",n,n2);\
+ printf("Result should have been '%s'\n was '%s'\n", b, a);\
+ printf("Error: %s\n",TMPL_err(t, NULL));\
+ return -1;\
+ }else{\
+ printf("\n\n##########\n##Test %d.%d passed\n##########\n\n\n",n,n2);\
+ }
#define log(x) printf(x)
#define template(x,y) \
err = TMPL_alloc_template(x,&y);\
@@ -94,11 +103,7 @@ int main(){
vl = TMPL_alloc_varlist();
TMPL_add_var_to_varlist(vl,"what","template");
ret = TMPL_render(t,vl,&dummy);
- if(strcmp(ret,c_1_1) != 0){
- fprintf(stderr,"Error in test file 1, test 1\n");
- printf("Result should have been '%s'\n was '%s'\n",c_1_1,ret);
- return -1;
- }
+ check(1,1,ret,c_1_1);
TMPL_free_template(t);
TMPL_free_varlist(vl);
log("Test 1 complete\n");
@@ -107,11 +112,7 @@ int main(){
template(t_2,t);
vl = TMPL_alloc_varlist();
ret = TMPL_render(t,vl,&dummy);
- if(strcmp(ret,c_2_1) != 0){
- fprintf(stderr,"Error in test file 1, test 2\n");
- printf("Result should have been '%s'\n was '%s'\n",c_2_1,ret);
- return -1;
- }
+ check(2,1,ret,c_2_1);
TMPL_free_template(t);
TMPL_free_varlist(vl);
log("Test 2 complete\n");
@@ -121,11 +122,7 @@ int main(){
vl = TMPL_alloc_varlist();
TMPL_add_var_to_varlist(vl,"what","This");
ret = TMPL_render(t,vl,&dummy);
- if(strcmp(ret,c_3_1) != 0){
- fprintf(stderr,"Error in test file 1, test 3\n");
- printf("Result should have been '%s'\n was '%s'\n",c_3_1,ret);
- return -1;
- }
+ check(3,1,ret,c_3_1);
TMPL_free_template(t);
TMPL_free_varlist(vl);
log("Test 3 complete\n");
@@ -134,11 +131,7 @@ int main(){
template(t_4,t);
vl = TMPL_alloc_varlist();
ret = TMPL_render(t,vl,&dummy);
- if(strcmp(ret,c_4_1) != 0){
- fprintf(stderr,"Error in test file 1, test 4\n");
- printf("Result should have been '%s'\n was '%s'\n",c_4_1,ret);
- return -1;
- }
+ check(4,1,ret,c_4_1);
TMPL_free_template(t);
TMPL_free_varlist(vl);
log("Test 4 complete\n");
@@ -148,11 +141,7 @@ int main(){
vl = TMPL_alloc_varlist();
TMPL_add_var_to_varlist(vl,"what","tag");
ret = TMPL_render(t,vl,&dummy);
- if(strcmp(ret,c_5_1) != 0){
- fprintf(stderr, "Error in test file 1, test 5\n");
- printf("Result should have been '%s'\n was '%s'\n",c_5_1,ret);
- return -1;
- }
+ check(5,1,ret,c_5_1);
TMPL_free_template(t);
TMPL_free_varlist(vl);
log("Test 5 complete\n");
@@ -161,11 +150,7 @@ int main(){
template(t_6,t);
vl = TMPL_alloc_varlist();
ret = TMPL_render(t,vl,&dummy);
- if(strcmp(ret,c_6_1) != 0){
- fprintf(stderr, "Error in test file 1, test 6\n");
- printf("Result should have been '%s'\n was '%s'\n",c_6_1,ret);
- return -1;
- }
+ check(6,1,ret,c_6_1);
TMPL_free_template(t);
TMPL_free_varlist(vl);
log("Test 6 complete\n");
@@ -178,11 +163,7 @@ int main(){
TMPL_add_loop_to_varlist(vl,"loop",l);
}
ret = TMPL_render(t,vl,&dummy);
- if(strcmp(ret,c_7_1) != 0){
- fprintf(stderr, "Error in test file 1, test 7\n");
- printf("Result should have been '%s'\n was '%s'\n",c_7_1,ret);
- return -1;
- }
+ check(7,1,ret,c_7_1);
TMPL_free_varlist(vl);
vl = TMPL_alloc_varlist();
{
@@ -193,11 +174,7 @@ int main(){
TMPL_add_loop_to_varlist(vl,"loop",l);
}
ret = TMPL_render(t,vl,&dummy);
- if(strcmp(ret,c_7_2) != 0){
- fprintf(stderr, "Error in test file 1, test 7\n");
- printf("Result should have been '%s'\n was '%s'\n",c_7_2,ret);
- return -1;
- }
+ check(7,2,ret,c_7_2);
TMPL_free_varlist(vl);
vl = TMPL_alloc_varlist();
{
@@ -214,11 +191,7 @@ int main(){
TMPL_add_loop_to_varlist(vl,"loop",l);
}
ret = TMPL_render(t,vl,&dummy);
- if(strcmp(ret,c_7_3) != 0){
- fprintf(stderr, "Error in test file 1, test 7\n");
- printf("Result should have been '%s'\n was '%s'\n",c_7_3,ret);
- return -1;
- }
+ check(7,3,ret,c_7_3);
TMPL_free_varlist(vl);
TMPL_free_template(t);
log("Test 7 complete\n");
@@ -228,28 +201,16 @@ int main(){
vl = TMPL_alloc_varlist();
TMPL_add_var_to_varlist(vl,"var","correct");
ret = TMPL_render(t,vl,&dummy);
- if(strcmp(ret,c_8_1) != 0){
- fprintf(stderr, "Error in test file 1, test 8\n");
- printf("Result should have been '%s'\n was '%s'\n",c_8_1,ret);
- return -1;
- }
+ check(8,1,ret,c_8_1);
TMPL_free_varlist(vl);
vl = TMPL_alloc_varlist();
TMPL_add_var_to_varlist(vl,"var","incorrect");
ret = TMPL_render(t,vl,&dummy);
- if(strcmp(ret,c_8_2) != 0){
- fprintf(stderr, "Error in test file 1, test 8\n");
- printf("Result should have been '%s'\n was '%s'\n",c_8_2,ret);
- return -1;
- }
+ check(8,2,ret,c_8_2);
TMPL_free_varlist(vl);
vl = TMPL_alloc_varlist();
ret = TMPL_render(t,vl,&dummy);
- if(strcmp(ret,c_8_3) != 0){
- fprintf(stderr, "Error in test file 1, test 8\n");
- printf("Result should have been '%s'\n was '%s'\n",c_8_3,ret);
- return -1;
- }
+ check(8,3,ret,c_8_3);
TMPL_free_template(t);
TMPL_free_varlist(vl);
log("Test 8 complete\n");
@@ -259,19 +220,11 @@ int main(){
vl = TMPL_alloc_varlist();
TMPL_add_var_to_varlist(vl,"var","thing");
ret = TMPL_render(t,vl,&dummy);
- if(strcmp(ret,c_9_1) != 0){
- fprintf(stderr, "Error in test file 1, test 9\n");
- printf("Result should have been '%s'\n was '%s'\n",c_9_1,ret);
- return -1;
- }
+ check(9,1,ret,c_9_1);
TMPL_free_varlist(vl);
vl = TMPL_alloc_varlist();
ret = TMPL_render(t,vl,&dummy);
- if(strcmp(ret,c_9_2) != 0){
- fprintf(stderr, "Error in test file 1, test 9\n");
- printf("Result should have been '%s'\n was '%s'\n",c_9_1,ret);
- return -1;
- }
+ check(9,2,ret,c_9_2);
TMPL_free_varlist(vl);
TMPL_free_template(t);
log("Test 9 complete\n");
@@ -281,19 +234,11 @@ int main(){
vl = TMPL_alloc_varlist();
TMPL_add_var_to_varlist(vl,"var","True");
ret = TMPL_render(t,vl,&dummy);
- if(strcmp(ret, c_10_1) != 0){
- fprintf(stderr, "Error in test file 1, test 10\n");
- printf("Result should have been '%s'\n was '%s'\n",c_10_1,ret);
- return -1;
- }
+ check(10,1,ret,c_10_1);
TMPL_free_varlist(vl);
vl = TMPL_alloc_varlist();
ret = TMPL_render(t,vl,&dummy);
- if(strcmp(ret, c_10_2) != 0){
- fprintf(stderr, "Error in test file 1, test 10\n");
- printf("Result should have been '%s'\n was '%s'\n",c_10_2,ret);
- return -1;
- }
+ check(10,2,ret,c_10_2);
TMPL_free_varlist(vl);
TMPL_free_template(t);
log("Test 10 complete\n");
@@ -303,19 +248,11 @@ int main(){
vl = TMPL_alloc_varlist();
TMPL_add_var_to_varlist(vl,"var","thing");
ret = TMPL_render(t,vl,&dummy);
- if(strcmp(ret, c_11_1) != 0){
- fprintf(stderr, "Error in test file 1, test 11\n");
- printf("Result should have been '%s'\n was '%s'\n",c_11_1,ret);
- return -1;
- }
+ check(11,1,ret,c_11_1);
TMPL_free_varlist(vl);
vl = TMPL_alloc_varlist();
ret = TMPL_render(t,vl,&dummy);
- if(strcmp(ret, c_11_2) != 0){
- fprintf(stderr, "Error in test file 1, test 11\n");
- printf("Result should have been '%s'\n was '%s'\n",c_11_2,ret);
- return -1;
- }
+ check(11,2,ret,c_11_2);
TMPL_free_varlist(vl);
TMPL_free_template(t);
log("Test 11 complete\n");
@@ -325,28 +262,16 @@ int main(){
vl = TMPL_alloc_varlist();
TMPL_add_var_to_varlist(vl,"var","thing");
ret = TMPL_render(t,vl,&dummy);
- if(strcmp(ret, c_12_1) != 0){
- fprintf(stderr, "Error in test file 1, test 12\n");
- printf("Result should have been '%s'\n was '%s'\n",c_12_1,ret);
- return -1;
- }
+ check(12,1,ret,c_12_1);
TMPL_free_varlist(vl);
vl = TMPL_alloc_varlist();
TMPL_add_var_to_varlist(vl,"var2","thing");
ret = TMPL_render(t,vl,&dummy);
- if(strcmp(ret, c_12_2) != 0){
- fprintf(stderr, "Error in test file 1, test 12\n");
- printf("Result should have been '%s'\n was '%s'\n",c_12_2,ret);
- return -1;
- }
+ check(12,2,ret,c_12_2);
TMPL_free_varlist(vl);
vl = TMPL_alloc_varlist();
ret = TMPL_render(t,vl,&dummy);
- if(strcmp(ret, c_12_3) != 0){
- fprintf(stderr, "Error in test file 1, test 12\n");
- printf("Result should have been '%s'\n was '%s'\n",c_12_3,ret);
- return -1;
- }
+ check(12,3,ret,c_12_3);
TMPL_free_varlist(vl);
TMPL_free_template(t);
log("Test 12 complete\n");
@@ -356,28 +281,16 @@ int main(){
vl = TMPL_alloc_varlist();
TMPL_add_var_to_varlist(vl,"var","one");
ret = TMPL_render(t,vl,&dummy);
- if(strcmp(ret, c_13_1) != 0){
- fprintf(stderr, "Error in test file 1, test 13\n");
- printf("Result should have been '%s'\n was '%s'\n",c_13_1,ret);
- return -1;
- }
+ check(13,1,ret,c_13_1);
TMPL_free_varlist(vl);
vl = TMPL_alloc_varlist();
TMPL_add_var_to_varlist(vl,"var2","two");
ret = TMPL_render(t,vl,&dummy);
- if(strcmp(ret, c_13_2) != 0){
- fprintf(stderr, "Error in test file 1, test 13\n");
- printf("Result should have been '%s'\n was '%s'\n",c_13_2,ret);
- return -1;
- }
+ check(13,2,ret,c_13_2);
TMPL_free_varlist(vl);
vl = TMPL_alloc_varlist();
ret = TMPL_render(t,vl,&dummy);
- if(strcmp(ret, c_13_3) != 0){
- fprintf(stderr, "Error in test file 1, test 13\n");
- printf("Result should have been '%s'\n was '%s'\n",c_13_3,ret);
- return -1;
- }
+ check(13,3,ret,c_13_3);
TMPL_free_varlist(vl);
TMPL_free_template(t);
log("Test 13 complete\n");
@@ -387,11 +300,7 @@ int main(){
vl = TMPL_alloc_varlist();
TMPL_add_var_to_varlist(vl,"var","");
ret = TMPL_render(t,vl,&dummy);
- if(strcmp(ret, c_14_1) != 0){
- fprintf(stderr, "Error in test file 1, test 14\n");
- printf("Result should have been '%s'\n was '%s'\n",c_14_1,ret);
- return -1;
- }
+ check(14,1,ret,c_14_1);
TMPL_free_varlist(vl);
TMPL_free_template(t);
log("Test 14 complete\n");
@@ -401,11 +310,7 @@ int main(){
vl = TMPL_alloc_varlist();
TMPL_add_var_to_varlist(vl,"var","");
ret = TMPL_render(t,vl,&dummy);
- if(strcmp(ret, c_15_1) != 0){
- fprintf(stderr, "Error in test file 1, test 15\n");
- printf("Result should have been '%s'\n was '%s'\n",c_15_1,ret);
- return -1;
- }
+ check(15,1,ret,c_15_1);
TMPL_free_varlist(vl);
TMPL_free_template(t);
log("Test 15 complete\n");
@@ -415,11 +320,7 @@ int main(){
vl = TMPL_alloc_varlist();
TMPL_add_var_to_varlist(vl,"test","Test");
ret = TMPL_render(t,vl,&dummy);
- if(strcmp(ret,c_16_1) != 0){
- fprintf(stderr, "Error in test file 1, test 16\n");
- printf("Result should have been '%s\n was '%s'\n",c_16_1,ret);
- return -1;
- }
+ check(16,1,ret,c_16_1);
TMPL_free_varlist(vl);
TMPL_free_template(t);
log("Test 16 complete\n");
@@ -428,11 +329,7 @@ int main(){
template(t_17,t);
vl = TMPL_alloc_varlist();
ret = TMPL_render(t,vl,&dummy);
- if(strcmp(ret,c_17_1) != 0){
- fprintf(stderr, "Error in test file 1, test 17\n");
- printf("Result should have been '%s\n was '%s'\n",c_17_1,ret);
- return -1;
- }
+ check(17,1,ret,c_17_1);
TMPL_free_varlist(vl);
TMPL_free_template(t);
log("Test 17 complete\n");
@@ -441,11 +338,7 @@ int main(){
template(t_18,t);
vl = TMPL_alloc_varlist();
ret = TMPL_render(t,vl,&dummy);
- if(strcmp(ret,c_18_1) != 0){
- fprintf(stderr, "Error in test file 1, test 18\n");
- printf("Result should have been '%s\n was '%s'\n",c_18_1,ret);
- return -1;
- }
+ check(18,1,ret,c_18_1);
TMPL_free_varlist(vl);
TMPL_free_template(t);
log("Test 18 complete\n");