gnucash stable: [test-commodities.cpp] add some tests for gnc_quote_sources
Christopher Lam
clam at code.gnucash.org
Sat Feb 17 09:52:19 EST 2024
Updated via https://github.com/Gnucash/gnucash/commit/90353919 (commit)
from https://github.com/Gnucash/gnucash/commit/f0dc23a6 (commit)
commit 90353919072c2d13a65b396f4d7c5ebd502eca26
Author: Christopher Lam <christopher.lck at gmail.com>
Date: Sat Feb 17 22:43:52 2024 +0800
[test-commodities.cpp] add some tests for gnc_quote_sources
diff --git a/libgnucash/engine/test/test-commodities.cpp b/libgnucash/engine/test/test-commodities.cpp
index 09ce302fb3..64c579e048 100644
--- a/libgnucash/engine/test/test-commodities.cpp
+++ b/libgnucash/engine/test/test-commodities.cpp
@@ -30,6 +30,32 @@
#include "test-engine-stuff.h"
#include "test-stuff.h"
+static void
+test_quote_sources ()
+{
+ do_test (gnc_quote_source_num_entries(SOURCE_CURRENCY) == 1, "source currency = 1 source");
+ do_test (gnc_quote_source_lookup_by_ti (SOURCE_CURRENCY, 0) != nullptr, "lookup_by_ti currency exists");
+ do_test (gnc_quote_source_lookup_by_internal("currency") != nullptr, "lookup_by_internal: currency exists");
+ do_test (gnc_quote_source_lookup_by_internal("CURRENCY") != nullptr, "lookup_by_internal: CURRENCY exists"); // old internal name
+
+ do_test (gnc_quote_source_num_entries(SOURCE_UNKNOWN) == 0, "source unknown = 0 source");
+ do_test (gnc_quote_source_lookup_by_ti (SOURCE_UNKNOWN, 0) == nullptr, "lookup_by_ti unknown fails");
+
+ do_test (gnc_quote_source_num_entries((QuoteSourceType)500) == 0, "invalid = 0 entries");
+ do_test (gnc_quote_source_lookup_by_ti ((QuoteSourceType)500, 0) == nullptr, "lookup_by_ti invalid returns null, same as new_quote_sources");
+
+ gnc_quote_source_add_new ("test-source", true);
+
+ do_test (gnc_quote_source_num_entries(SOURCE_UNKNOWN) == 1, "source unknown = 1 source");
+ do_test (gnc_quote_source_lookup_by_ti (SOURCE_UNKNOWN, 0) != nullptr, "lookup_by_ti unknown exists");
+
+ do_test (gnc_quote_source_num_entries((QuoteSourceType)500) == 1, "invalid = 1 entry from new_quote_sources");
+ do_test (gnc_quote_source_lookup_by_ti ((QuoteSourceType)500, 0) != nullptr, "lookup_by_ti invalid returns new_quote_sources");
+
+ // internal name:
+ do_test (gnc_quote_source_lookup_by_internal("treasure") == nullptr, "lookup_by_internal: treasure doesn't exist");
+}
+
static void
test_commodity(void)
{
@@ -205,6 +231,7 @@ main (int argc, char **argv)
gnc_commodity_table_register();
test_commodity();
+ test_quote_sources ();
print_test_results();
Summary of changes:
libgnucash/engine/test/test-commodities.cpp | 27 +++++++++++++++++++++++++++
1 file changed, 27 insertions(+)
More information about the gnucash-changes
mailing list