r14537 - gnucash/branches/register-rewrite/src/app-utils/test - Add some expression parser tests.
Chris Shoemaker
chris at cvs.gnucash.org
Mon Jul 17 22:29:50 EDT 2006
Author: chris
Date: 2006-07-17 22:29:49 -0400 (Mon, 17 Jul 2006)
New Revision: 14537
Trac: http://svn.gnucash.org/trac/changeset/14537
Modified:
gnucash/branches/register-rewrite/src/app-utils/test/test-exp-parser.c
Log:
Add some expression parser tests.
Modified: gnucash/branches/register-rewrite/src/app-utils/test/test-exp-parser.c
===================================================================
--- gnucash/branches/register-rewrite/src/app-utils/test/test-exp-parser.c 2006-07-18 02:25:35 UTC (rev 14536)
+++ gnucash/branches/register-rewrite/src/app-utils/test/test-exp-parser.c 2006-07-18 02:29:49 UTC (rev 14537)
@@ -62,7 +62,7 @@
{
gboolean succeeded;
gnc_numeric result;
- char *error_loc;
+ char *error_loc = NULL;
result = gnc_numeric_error( -1 );
printf("Running test \"%s\" [%s] = ", node->test_name, node->exp);
@@ -140,6 +140,18 @@
add_fail_test ("bad expression", " ((((5 + 23)/ ", 17);
add_fail_test ("divide by zero", " 4 / (1 - 1)", -1);
+ /* FIXME: what's the correct error code here? */
+ add_fail_test ("bad expression", ")1", 0);
+ add_fail_test ("bad expression", "1\"%", 0);
+ add_fail_test ("bad expression", "1%\"", 0);
+ add_fail_test ("bad expression", "1(", 0);
+ add_fail_test ("bad expression", "1)", 0);
+ add_fail_test ("bad expression", "=1", 0);
+ add_fail_test ("bad expression", "1 / asdf", 0);
+
+ add_pass_test ("1 + asdf", "1 + asdf", gnc_numeric_create(1, 1));
+ add_pass_test ("1 * asdf", "1 * asdf", gnc_numeric_zero());
+
add_pass_test ("zero", "0", gnc_numeric_zero ());
add_pass_test ("zero with whitespace", "\n\t 0 ", gnc_numeric_zero ());
add_pass_test ("1 + 2", NULL, gnc_numeric_create (3, 1));
More information about the gnucash-changes
mailing list