aboutsummaryrefslogtreecommitdiff
path: root/t
diff options
context:
space:
mode:
Diffstat (limited to 't')
-rw-r--r--t/test_1.c98
-rw-r--r--t/test_3.c18
2 files changed, 49 insertions, 67 deletions
diff --git a/t/test_1.c b/t/test_1.c
index 9412ce3..34ee9e2 100644
--- a/t/test_1.c
+++ b/t/test_1.c
@@ -73,10 +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){\
+#define check(n,n2,t,vl,b)\
+ ret = TMPL_render(t,vl,&dummy);\
+ if(ret == NULL){\
+ printf("Error in test 1.%d.%d",n,n2);\
+ printf("%s",TMPL_err(t,NULL));\
+ }\
+ if(strcmp(ret,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("Result should have been '%s'\n was '%s'\n", b, ret);\
printf("Error: %s\n",TMPL_err(t, NULL));\
return -1;\
}else{\
@@ -102,8 +107,7 @@ int main(){
template(t_1,t);
vl = TMPL_alloc_varlist();
TMPL_add_var_to_varlist(vl,"what","template");
- ret = TMPL_render(t,vl,&dummy);
- check(1,1,ret,c_1_1);
+ check(1,1,t,vl,c_1_1);
TMPL_free_template(t);
TMPL_free_varlist(vl);
log("Test 1 complete\n");
@@ -111,8 +115,7 @@ int main(){
/*Test 2: Variable with default parameter*/
template(t_2,t);
vl = TMPL_alloc_varlist();
- ret = TMPL_render(t,vl,&dummy);
- check(2,1,ret,c_2_1);
+ check(2,1,t,vl,c_2_1);
TMPL_free_template(t);
TMPL_free_varlist(vl);
log("Test 2 complete\n");
@@ -121,8 +124,7 @@ int main(){
template(t_3,t);
vl = TMPL_alloc_varlist();
TMPL_add_var_to_varlist(vl,"what","This");
- ret = TMPL_render(t,vl,&dummy);
- check(3,1,ret,c_3_1);
+ check(3,1,t,vl,c_3_1);
TMPL_free_template(t);
TMPL_free_varlist(vl);
log("Test 3 complete\n");
@@ -130,8 +132,7 @@ int main(){
/*Test 4: Starts with a tag with a default value*/
template(t_4,t);
vl = TMPL_alloc_varlist();
- ret = TMPL_render(t,vl,&dummy);
- check(4,1,ret,c_4_1);
+ check(4,1,t,vl,c_4_1);
TMPL_free_template(t);
TMPL_free_varlist(vl);
log("Test 4 complete\n");
@@ -140,8 +141,7 @@ int main(){
template(t_5,t);
vl = TMPL_alloc_varlist();
TMPL_add_var_to_varlist(vl,"what","tag");
- ret = TMPL_render(t,vl,&dummy);
- check(5,1,ret,c_5_1);
+ check(5,1,t,vl,c_5_1);
TMPL_free_template(t);
TMPL_free_varlist(vl);
log("Test 5 complete\n");
@@ -149,8 +149,7 @@ int main(){
/*Test 6: Ends with a tag with a default value*/
template(t_6,t);
vl = TMPL_alloc_varlist();
- ret = TMPL_render(t,vl,&dummy);
- check(6,1,ret,c_6_1);
+ check(6,1,t,vl,c_6_1);
TMPL_free_template(t);
TMPL_free_varlist(vl);
log("Test 6 complete\n");
@@ -162,8 +161,7 @@ int main(){
struct TMPL_loop* l = TMPL_alloc_loop();
TMPL_add_loop_to_varlist(vl,"loop",l);
}
- ret = TMPL_render(t,vl,&dummy);
- check(7,1,ret,c_7_1);
+ check(7,1,t,vl,c_7_1);
TMPL_free_varlist(vl);
vl = TMPL_alloc_varlist();
{
@@ -173,8 +171,7 @@ int main(){
TMPL_add_varlist_to_loop(l,vl_2);
TMPL_add_loop_to_varlist(vl,"loop",l);
}
- ret = TMPL_render(t,vl,&dummy);
- check(7,2,ret,c_7_2);
+ check(7,2,t,vl,c_7_2);
TMPL_free_varlist(vl);
vl = TMPL_alloc_varlist();
{
@@ -190,8 +187,7 @@ int main(){
TMPL_add_varlist_to_loop(l,vl_4);
TMPL_add_loop_to_varlist(vl,"loop",l);
}
- ret = TMPL_render(t,vl,&dummy);
- check(7,3,ret,c_7_3);
+ check(7,3,t,vl,c_7_3);
TMPL_free_varlist(vl);
TMPL_free_template(t);
log("Test 7 complete\n");
@@ -200,17 +196,14 @@ int main(){
template(t_8,t);
vl = TMPL_alloc_varlist();
TMPL_add_var_to_varlist(vl,"var","correct");
- ret = TMPL_render(t,vl,&dummy);
- check(8,1,ret,c_8_1);
+ check(8,1,t,vl,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);
- check(8,2,ret,c_8_2);
+ check(8,2,t,vl,c_8_2);
TMPL_free_varlist(vl);
vl = TMPL_alloc_varlist();
- ret = TMPL_render(t,vl,&dummy);
- check(8,3,ret,c_8_3);
+ check(8,3,t,vl,c_8_3);
TMPL_free_template(t);
TMPL_free_varlist(vl);
log("Test 8 complete\n");
@@ -219,12 +212,10 @@ int main(){
template(t_9,t);
vl = TMPL_alloc_varlist();
TMPL_add_var_to_varlist(vl,"var","thing");
- ret = TMPL_render(t,vl,&dummy);
- check(9,1,ret,c_9_1);
+ check(9,1,t,vl,c_9_1);
TMPL_free_varlist(vl);
vl = TMPL_alloc_varlist();
- ret = TMPL_render(t,vl,&dummy);
- check(9,2,ret,c_9_2);
+ check(9,2,t,vl,c_9_2);
TMPL_free_varlist(vl);
TMPL_free_template(t);
log("Test 9 complete\n");
@@ -233,12 +224,10 @@ int main(){
template(t_10,t);
vl = TMPL_alloc_varlist();
TMPL_add_var_to_varlist(vl,"var","True");
- ret = TMPL_render(t,vl,&dummy);
- check(10,1,ret,c_10_1);
+ check(10,1,t,vl,c_10_1);
TMPL_free_varlist(vl);
vl = TMPL_alloc_varlist();
- ret = TMPL_render(t,vl,&dummy);
- check(10,2,ret,c_10_2);
+ check(10,2,t,vl,c_10_2);
TMPL_free_varlist(vl);
TMPL_free_template(t);
log("Test 10 complete\n");
@@ -247,12 +236,10 @@ int main(){
template(t_11,t);
vl = TMPL_alloc_varlist();
TMPL_add_var_to_varlist(vl,"var","thing");
- ret = TMPL_render(t,vl,&dummy);
- check(11,1,ret,c_11_1);
+ check(11,1,t,vl,c_11_1);
TMPL_free_varlist(vl);
vl = TMPL_alloc_varlist();
- ret = TMPL_render(t,vl,&dummy);
- check(11,2,ret,c_11_2);
+ check(11,2,t,vl,c_11_2);
TMPL_free_varlist(vl);
TMPL_free_template(t);
log("Test 11 complete\n");
@@ -261,17 +248,14 @@ int main(){
template(t_12,t);
vl = TMPL_alloc_varlist();
TMPL_add_var_to_varlist(vl,"var","thing");
- ret = TMPL_render(t,vl,&dummy);
- check(12,1,ret,c_12_1);
+ check(12,1,t,vl,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);
- check(12,2,ret,c_12_2);
+ check(12,2,t,vl,c_12_2);
TMPL_free_varlist(vl);
vl = TMPL_alloc_varlist();
- ret = TMPL_render(t,vl,&dummy);
- check(12,3,ret,c_12_3);
+ check(12,3,t,vl,c_12_3);
TMPL_free_varlist(vl);
TMPL_free_template(t);
log("Test 12 complete\n");
@@ -280,17 +264,14 @@ int main(){
template(t_13,t);
vl = TMPL_alloc_varlist();
TMPL_add_var_to_varlist(vl,"var","one");
- ret = TMPL_render(t,vl,&dummy);
- check(13,1,ret,c_13_1);
+ check(13,1,t,vl,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);
- check(13,2,ret,c_13_2);
+ check(13,2,t,vl,c_13_2);
TMPL_free_varlist(vl);
vl = TMPL_alloc_varlist();
- ret = TMPL_render(t,vl,&dummy);
- check(13,3,ret,c_13_3);
+ check(13,3,t,vl,c_13_3);
TMPL_free_varlist(vl);
TMPL_free_template(t);
log("Test 13 complete\n");
@@ -299,8 +280,7 @@ int main(){
template(t_14,t);
vl = TMPL_alloc_varlist();
TMPL_add_var_to_varlist(vl,"var","");
- ret = TMPL_render(t,vl,&dummy);
- check(14,1,ret,c_14_1);
+ check(14,1,t,vl,c_14_1);
TMPL_free_varlist(vl);
TMPL_free_template(t);
log("Test 14 complete\n");
@@ -309,8 +289,7 @@ int main(){
template(t_15,t);
vl = TMPL_alloc_varlist();
TMPL_add_var_to_varlist(vl,"var","");
- ret = TMPL_render(t,vl,&dummy);
- check(15,1,ret,c_15_1);
+ check(15,1,t,vl,c_15_1);
TMPL_free_varlist(vl);
TMPL_free_template(t);
log("Test 15 complete\n");
@@ -319,8 +298,7 @@ int main(){
template(t_16,t);
vl = TMPL_alloc_varlist();
TMPL_add_var_to_varlist(vl,"test","Test");
- ret = TMPL_render(t,vl,&dummy);
- check(16,1,ret,c_16_1);
+ check(16,1,t,vl,c_16_1);
TMPL_free_varlist(vl);
TMPL_free_template(t);
log("Test 16 complete\n");
@@ -328,8 +306,7 @@ int main(){
/*Test 17: var with multiple spaces in between, and a default*/
template(t_17,t);
vl = TMPL_alloc_varlist();
- ret = TMPL_render(t,vl,&dummy);
- check(17,1,ret,c_17_1);
+ check(17,1,t,vl,c_17_1);
TMPL_free_varlist(vl);
TMPL_free_template(t);
log("Test 17 complete\n");
@@ -337,8 +314,7 @@ int main(){
/*Test 18: spaces between attribute and value*/
template(t_18,t);
vl = TMPL_alloc_varlist();
- ret = TMPL_render(t,vl,&dummy);
- check(18,1,ret,c_18_1);
+ check(18,1,t,vl,c_18_1);
TMPL_free_varlist(vl);
TMPL_free_template(t);
log("Test 18 complete\n");
diff --git a/t/test_3.c b/t/test_3.c
index dc55aa6..5cb2b0c 100644
--- a/t/test_3.c
+++ b/t/test_3.c
@@ -6,6 +6,7 @@
char t_1[] = "What is a loop with no items?<TMPL_LOOP name=\"loop1\">Something<TMPL_END>\nA sad little pile of bits!";
char c_1_1[] = "What is a loop with no items?\nA sad little pile of bits!";
char c_1_2[] = "What is a loop with no items?\nA sad little pile of bits!";
+char c_2_3[] = "Render error: Variable \"loop1\" was not bound to a value\n";
#define log(x) printf(x)
@@ -20,7 +21,7 @@ char c_1_2[] = "What is a loop with no items?\nA sad little pile of bits!";
printf("\n\n##########\n##Test %d.%d passed\n##########\n\n\n",n,n2);\
}
-#define check_isnull(n,n2,a)\
+#define check_isnull(n,n2,a,t,e)\
if(a != NULL){\
fprintf(stderr, "Error in test 3.%d.%d\n",n,n2);\
printf("Result should have been NULL\n was '%s'\n", a);\
@@ -28,6 +29,11 @@ char c_1_2[] = "What is a loop with no items?\nA sad little pile of bits!";
printf(TMPL_err(t, NULL));\
return -1;\
}else{\
+ if(strcmp(TMPL_err(t,NULL),e) != 0){\
+ fprintf(stderr, "Error in test 3.%d.%d\n",n,n2);\
+ printf("Error was: '%s'\nShould have been: '%s'\n",TMPL_err(t,NULL),e);\
+ return -1;\
+ }\
printf("\n\n##########\n##Test %d.%d passed\n##########\n\n\n",n,n2);\
}
@@ -39,10 +45,10 @@ char c_1_2[] = "What is a loop with no items?\nA sad little pile of bits!";
}
int main(){
- log("Running tests2\n");
+ log("Running tests3\n");
struct TMPL_templates* t;
- struct TMPL_varlist *vl,*vl1,*vl2;
- struct TMPL_loop *l1,*l2;
+ struct TMPL_varlist *vl;
+ struct TMPL_loop *l1;
char* ret;
size_t dummy;
int err;
@@ -63,10 +69,10 @@ int main(){
l1 = TMPL_alloc_loop();
TMPL_add_loop_to_varlist(vl,"notaloop",l1);
ret = TMPL_render(t,vl,&dummy);
- check_isnull(1,2,ret);
+ check_isnull(1,2,ret,t,c_2_3);
TMPL_free_template(t);
TMPL_free_varlist(vl);
- log("Test 2 complete\n");
+ log("Test 3 complete\n");
return 0;
}