You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
gnucash/libgnucash/engine/test
John Ralls e31f4c3f95
Fix unlocalized date in status bar.
7 years ago
..
CMakeLists.txt Provide a single static instance of C++ locale. 7 years ago
README
dummy.cpp
gtest-gnc-datetime.cpp Fix unlocalized date in status bar. 7 years ago
gtest-gnc-int128.cpp
gtest-gnc-numeric.cpp One more catch-by-value error. 8 years ago
gtest-gnc-rational.cpp
gtest-gnc-timezone.cpp Bug 795405 - All Dates in Price Database Off-By-One After 3.0 Upgrade 8 years ago
gtest-import-map.cpp Fix the gtests for the changes made to ImapInfo structure 8 years ago
gtest-qofquerycore.cpp Add a few unit tests for qofquerycore 8 years ago
srfi64-extras.scm srfi64-extras.scm: centralize (gnc:test-runner) 8 years ago
test-account-object.cpp kvp frame to template and correcting failure macro 8 years ago
test-account.scm
test-address.c
test-business.c
test-commodities.cpp
test-create-account.scm
test-customer.c
test-employee.c
test-engine-kvp-properties.c Fix memory leak using qof_instance_get on a GncGUID 8 years ago
test-engine.c Enable gnc-uri test suite 7 years ago
test-extras.scm [test-extras] gnc-pricedb-create skips if commodity = currency 7 years ago
test-gnc-date.c Fix broken compile of test-gnc-date.c on Ubuntu 14.04. 7 years ago
test-gnc-guid-old.cpp
test-gnc-guid.cpp Fix travis test failure: It seems the boost bug is fixed. 8 years ago
test-gnc-uri-utils.c gnc-uri - refer to 'scheme' instead of 'protocol' as that's the more formal term used in uris 7 years ago
test-group-vs-book.cpp
test-guid.cpp
test-job.c
test-kvp-frame.cpp Fix memory leak in char* type KvpValue and fix improper uses 8 years ago
test-kvp-value.cpp Convert GNC_TYPE_TIMESPEC to GNC_TYPE_TIME64, Kvp::Type::Timespec to Kvp::Type::Time64 8 years ago
test-link.c
test-load-engine.c
test-lots.cpp
test-numeric.cpp Bug 796820 - References to 'Gnome Bugzilla' should be changed to 'GnuCash Bugzilla' 8 years ago
test-object.c
test-qof-string-cache.c
test-qof.c Update bug tracker URL 8 years ago
test-qofbackend.c
test-qofbook.c Don't create 2 new books for every new session. 8 years ago
test-qofinstance.cpp Timespec removal, engine odds-and-ends. 8 years ago
test-qofobject.c
test-qofsession-old.cpp
test-qofsession.cpp Bug 796878 - test-qofsession fails on x86_32. 8 years ago
test-query.cpp
test-querynew.c
test-recurrence.c
test-scm-query-import.scm
test-scm-query.cpp
test-split-vs-account.cpp
test-split.scm TP->T64: libgnucash/engine/test/test-split.scm 8 years ago
test-transaction-reversal.cpp
test-transaction-voiding.cpp Transaction getVoidTime uses time64. 8 years ago
test-vendor.c
utest-Account.cpp Remove Timespec from pricedb. 8 years ago
utest-Budget.c Remove Timespec from pricedb. 8 years ago
utest-Entry.c A more detailed revision of gncEntry and gncInvoice related rounding 8 years ago
utest-Invoice.c Fix gncInvoice test failure. 8 years ago
utest-Split.cpp Some more magic number replacements. 8 years ago
utest-Transaction.cpp Fix memory leak in char* type KvpValue and fix improper uses 8 years ago
utest-gnc-pricedb.c Remove Timespec from pricedb. 8 years ago

README


This directory contains unit test cases to exercise basic
GnuCash engine functions.

To run the tests, just do 'make check'


Notes on test of dirty/clean flag:
---------------------------------
This test is currently performed in part in
test-customer
test-employee
test-job
test-vendor

The test cases will check if the dirty flag is unset on creation
of an object and if the dirty flag is set when the object
is modified.

There used to be a test also to check if the dirty flag is
cleared again upon committing the change.
This test has been removed, because it can only be successful
if a backend is set up. That's because the 'dirty' flag is
supposed to be cleared by the backend only.

We are in the engine test code however. In here it's not possible
to load a backend without creating some circular dependencies
between gnucash modules.

Just for completeness, this was said on the dirty flag tests before
these test cases got moved to the engine:
"An object cannot be marked 'clean' unless it has actually
been saved to a file or sql db. (Or, in the case of the file
backend, the 'dirtiness' of the data has been duly noted, and
will be taken care of for the next file save.
Until its saved, it lives in perpetual dirtiness. Thus, the
test cases need to specify a backend, then do the commit,
then test the dirty flag.

Actually, the use of the dirty flag in gnucash is, at this time,
mildly ambiguous, and its semantics are not clearly defined."