gnucash maint: Multiple changes pushed
John Ralls
jralls at code.gnucash.org
Fri Oct 28 18:33:58 EDT 2022
Updated via https://github.com/Gnucash/gnucash/commit/cf088f2a (commit)
via https://github.com/Gnucash/gnucash/commit/8cb8f506 (commit)
via https://github.com/Gnucash/gnucash/commit/d8417c3c (commit)
via https://github.com/Gnucash/gnucash/commit/2774f8f8 (commit)
from https://github.com/Gnucash/gnucash/commit/f5099b3d (commit)
commit cf088f2a70f0dd21af0970cfbf1f11a338a54cbc
Merge: f5099b3d8 8cb8f5067
Author: John Ralls <jralls at ceridwen.us>
Date: Fri Oct 28 15:27:28 2022 -0700
Merge John Ralls's 'Bug798614' into maint.
diff --cc libgnucash/engine/CMakeLists.txt
index b9d11b877,33f9f3d2d..bf2b54463
--- a/libgnucash/engine/CMakeLists.txt
+++ b/libgnucash/engine/CMakeLists.txt
@@@ -145,8 -145,9 +146,9 @@@ set (engine_SOURCE
gnc-date.cpp
gnc-datetime.cpp
gnc-engine.c
+ gnc-euro.c
gnc-event.c
- gnc-features.c
+ gnc-features.cpp
gnc-hooks.c
gnc-int128.cpp
gnc-lot.c
diff --cc po/POTFILES.in
index 3d2a0e7b3,6795e6f2b..51de233da
--- a/po/POTFILES.in
+++ b/po/POTFILES.in
@@@ -640,8 -639,9 +639,9 @@@ libgnucash/engine/gnc-datetime.cp
libgnucash/engine/gncEmployee.c
libgnucash/engine/gnc-engine.c
libgnucash/engine/gncEntry.c
+ libgnucash/engine/gnc-euro.c
libgnucash/engine/gnc-event.c
-libgnucash/engine/gnc-features.c
+libgnucash/engine/gnc-features.cpp
libgnucash/engine/gnc-hooks.c
libgnucash/engine/gncIDSearch.c
libgnucash/engine/gnc-int128.cpp
commit 8cb8f5067dbc7adfd920099de2b11aa1b92b7657
Author: John Ralls <jralls at ceridwen.us>
Date: Sun Sep 11 16:36:52 2022 -0700
Remove non-ISO4217 currency codes from gnc-euro table.
They're not reachable because they don't have commodities associated with them.
diff --git a/libgnucash/engine/gnc-euro.c b/libgnucash/engine/gnc-euro.c
index 1a20e1459..411d6209f 100644
--- a/libgnucash/engine/gnc-euro.c
+++ b/libgnucash/engine/gnc-euro.c
@@ -43,35 +43,22 @@ static gnc_euro_rate_struct gnc_euro_rates[] =
{
{ "ATS", 13.7603 }, /* austrian schilling */
{ "BEF", 40.3399 }, /* belgian franc */
- { "BFR", 40.3399 }, /* belgian franc */
{ "CYP", .585274 }, /* cyprus pound */
{ "DEM", 1.95583 }, /* german mark */
- { "DM", 1.95583 }, /* german mark */
{ "EEK", 15.6466 }, /* Estonian Kroon */
- { "ESC", 200.482 }, /* portuguese escudo */
{ "ESP", 166.386 }, /* spanish peseta */
{ "EUR", 1.00000 }, /* euro */
- { "EURO", 1.00000 }, /* euro */
- { "FF", 6.55957 }, /* french franc */
{ "FIM", 5.94573 }, /* finnmark */
- { "FMK", 5.94573 }, /* finnmark */
{ "FRF", 6.55957 }, /* french franc */
{ "GRD", 340.750 }, /* greek drachma */
- { "HFL", 2.20371 }, /* netherland gulden */
{ "HRK", 7.53450 }, /* Croatian kuna */
{ "IEP", .787564 }, /* irish pound */
- { "IRP", .787564 }, /* irish pound */
{ "ITL", 1936.27 }, /* italian lira */
- { "LFR", 40.3399 }, /* luxembourg franc */
- { "LIT", 1936.27 }, /* italian lira */
{ "LUF", 40.3399 }, /* luxembourg franc */
{ "LVL", .702804 }, /* latvian lats */
{ "MTL", .429300 }, /* maltese lira */
{ "NLG", 2.20371 }, /* netherland gulden */
- { "PTA", 166.386 }, /* spanish peseta */
{ "PTE", 200.482 }, /* portuguese escudo */
- { "S", 13.7603 }, /* austrian schilling */
- { "SCH", 13.7603 }, /* austrian schilling */
{ "SIT", 239.640 }, /* slovenian tolar */
{ "SKK", 30.1260 } /* slovak koruna */
};
commit d8417c3cfa235bf8ac46a0881c5e41f8fef54781
Author: John Ralls <jralls at ceridwen.us>
Date: Sun Sep 11 16:29:57 2022 -0700
Move gnc-euro.[ch] to engine and unit test it.
diff --git a/libgnucash/app-utils/CMakeLists.txt b/libgnucash/app-utils/CMakeLists.txt
index 9a511ed35..6a5714847 100644
--- a/libgnucash/app-utils/CMakeLists.txt
+++ b/libgnucash/app-utils/CMakeLists.txt
@@ -23,7 +23,6 @@ set (app_utils_HEADERS
gnc-accounting-period.h
gnc-addr-quickfill.h
gnc-entry-quickfill.h
- gnc-euro.h
gnc-exp-parser.h
gnc-gsettings.h
gnc-help-utils.h
@@ -60,7 +59,6 @@ set (app_utils_SOURCES
gnc-accounting-period.c
gnc-addr-quickfill.c
gnc-entry-quickfill.c
- gnc-euro.c
gnc-exp-parser.c
gnc-gsettings.cpp
gnc-helpers.c
diff --git a/libgnucash/engine/CMakeLists.txt b/libgnucash/engine/CMakeLists.txt
index 8dde8461b..33f9f3d2d 100644
--- a/libgnucash/engine/CMakeLists.txt
+++ b/libgnucash/engine/CMakeLists.txt
@@ -49,6 +49,7 @@ set (engine_HEADERS
gnc-date.h
gnc-datetime.hpp
gnc-engine.h
+ gnc-euro.h
gnc-event.h
gnc-features.h
gnc-hooks.h
@@ -144,6 +145,7 @@ set (engine_SOURCES
gnc-date.cpp
gnc-datetime.cpp
gnc-engine.c
+ gnc-euro.c
gnc-event.c
gnc-features.c
gnc-hooks.c
diff --git a/libgnucash/app-utils/gnc-euro.c b/libgnucash/engine/gnc-euro.c
similarity index 95%
rename from libgnucash/app-utils/gnc-euro.c
rename to libgnucash/engine/gnc-euro.c
index 86bf98e54..1a20e1459 100644
--- a/libgnucash/app-utils/gnc-euro.c
+++ b/libgnucash/engine/gnc-euro.c
@@ -27,8 +27,7 @@
#include <math.h>
#include <stdlib.h>
#include <string.h>
-
-#include "gnc-ui-util.h"
+#include "gnc-session.h"
/* local structs */
typedef struct
@@ -39,7 +38,7 @@ typedef struct
/* This array MUST be sorted ! */
-/* The rates are per EURO */
+/* The rates are per EURO and are converted to GncNumeric */
static gnc_euro_rate_struct gnc_euro_rates[] =
{
{ "ATS", 13.7603 }, /* austrian schilling */
@@ -157,7 +156,8 @@ gnc_convert_to_euro(const gnc_commodity * currency, gnc_numeric value)
rate = double_to_gnc_numeric (result->rate, 100000, GNC_HOW_RND_ROUND_HALF_UP);
/* EC Regulation 1103/97 states we should use "Round half away from zero"
- * See http://europa.eu/legislation_summaries/economic_and_monetary_affairs/institutional_and_economic_framework/l25025_en.htm */
+ * See https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX%3A31997R1103&qid=1662917247821
+ */
return gnc_numeric_div (value, rate, 100, GNC_HOW_RND_ROUND_HALF_UP);
}
}
@@ -227,9 +227,8 @@ gnc_euro_currency_get_rate (const gnc_commodity *currency)
gnc_commodity *
gnc_get_euro (void)
{
- gnc_commodity_table *table;
-
- table = gnc_commodity_table_get_table (gnc_get_current_book ());
+ QofBook* book = qof_session_get_book (gnc_get_current_session ());
+ gnc_commodity_table *table = gnc_commodity_table_get_table (book);
return gnc_commodity_table_lookup (table, GNC_COMMODITY_NS_CURRENCY, "EUR");
}
diff --git a/libgnucash/app-utils/gnc-euro.h b/libgnucash/engine/gnc-euro.h
similarity index 100%
rename from libgnucash/app-utils/gnc-euro.h
rename to libgnucash/engine/gnc-euro.h
diff --git a/libgnucash/engine/test/CMakeLists.txt b/libgnucash/engine/test/CMakeLists.txt
index 8e44172ff..d1029bb6b 100644
--- a/libgnucash/engine/test/CMakeLists.txt
+++ b/libgnucash/engine/test/CMakeLists.txt
@@ -132,6 +132,9 @@ set(test_qofsession_SOURCES
gnc_add_test(test-qofsession "${test_qofsession_SOURCES}"
gtest_engine_INCLUDES gtest_old_engine_LIBS)
+gnc_add_test(test-gnc-euro gtest-gnc-euro.cpp
+ gtest_engine_INCLUDES gtest_old_engine_LIBS)
+
set(test_gnc_int128_SOURCES
${MODULEPATH}/gnc-int128.cpp
gtest-gnc-int128.cpp)
@@ -197,6 +200,7 @@ gnc_add_test(test-qofquerycore "${test_qofquerycore_SOURCES}"
set(test_engine_SOURCES_DIST
dummy.cpp
+ gtest-gnc-euro.cpp
gtest-gnc-int128.cpp
gtest-gnc-rational.cpp
gtest-gnc-numeric.cpp
diff --git a/libgnucash/engine/test/gtest-gnc-euro.cpp b/libgnucash/engine/test/gtest-gnc-euro.cpp
new file mode 100644
index 000000000..4777d09aa
--- /dev/null
+++ b/libgnucash/engine/test/gtest-gnc-euro.cpp
@@ -0,0 +1,228 @@
+/********************************************************************
+ * gtest-gnc-euro.cpp -- unit tests for Euro currency functions *
+ * Copyright 2022 John Ralls <jralls at ceridwen.us> *
+ * *
+ * This program is free software; you can redistribute it and/or *
+ * modify it under the terms of the GNU General Public License as *
+ * published by the Free Software Foundation; either version 2 of *
+ * the License, or (at your option) any later version. *
+ * *
+ * This program is distributed in the hope that it will be useful, *
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of *
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
+ * GNU General Public License for more details. *
+ * *
+ * You should have received a copy of the GNU General Public License*
+ * along with this program; if not, contact: *
+ * *
+ * Free Software Foundation Voice: +1-617-542-5942 *
+ * 51 Franklin Street, Fifth Floor Fax: +1-617-542-2652 *
+ * Boston, MA 02110-1301, USA gnu at gnu.org *
+\********************************************************************/
+
+#include <gtest/gtest.h>
+#include "../gnc-numeric.hpp"
+extern "C"
+{
+#include <config.h>
+#include "../gnc-euro.h"
+#include "../gnc-commodity.h"
+#include "../gnc-session.h"
+}
+
+class Currencies : public ::testing::Test
+{
+protected:
+ gnc_commodity_table* m_table;
+ Currencies() : m_table{gnc_commodity_table_new()}
+ {
+ QofBook* book = qof_session_get_book (gnc_get_current_session ());
+ qof_book_set_data (book, GNC_COMMODITY_TABLE, m_table);
+
+ if (!gnc_commodity_table_add_default_data(m_table, book))
+ exit(-1);
+ }
+
+ ~Currencies() { gnc_commodity_table_destroy(m_table); }
+};
+
+static const char* currency{"CURRENCY"};
+
+TEST_F(Currencies, is_euro_currency)
+{
+ auto usd = gnc_commodity_table_lookup(m_table, currency, "USD");
+ auto eur = gnc_commodity_table_lookup(m_table, currency, "EUR");
+ auto pte = gnc_commodity_table_lookup(m_table, currency, "PTE");
+
+ ASSERT_NE(eur, nullptr);
+ ASSERT_NE(usd, nullptr);
+ ASSERT_NE(pte, nullptr);
+
+ EXPECT_TRUE(gnc_is_euro_currency(pte));
+ EXPECT_TRUE(gnc_is_euro_currency(eur));
+ EXPECT_FALSE(gnc_is_euro_currency(usd));
+}
+
+TEST_F(Currencies, convert_to_euro)
+{
+ gnc_numeric value{314159, 100};
+ gnc_numeric cyp_eur_amount{536776, 100}; // calc gets 5367.76
+ auto cyp{gnc_commodity_table_lookup(m_table, currency, "CYP")};
+ ASSERT_NE(cyp, nullptr);
+ auto amount{gnc_convert_to_euro(cyp, value)};
+ EXPECT_EQ(cyp_eur_amount.num, amount.num);
+ EXPECT_EQ(cyp_eur_amount.denom, amount.denom);
+ EXPECT_TRUE(gnc_numeric_equal(cyp_eur_amount, amount));
+
+ gnc_numeric grd_eur_amount{922, 100};
+ auto grd{gnc_commodity_table_lookup(m_table, currency, "GRD")};
+ amount = gnc_convert_to_euro(grd, value);
+ EXPECT_EQ(grd_eur_amount.num, amount.num);
+ EXPECT_EQ(grd_eur_amount.denom, amount.denom);
+ EXPECT_TRUE(gnc_numeric_equal(grd_eur_amount, amount));
+
+ gnc_numeric itl_eur_amount{162, 100};
+ auto itl{gnc_commodity_table_lookup(m_table, currency, "ITL")};
+ amount = gnc_convert_to_euro(itl, value);
+ EXPECT_EQ(itl_eur_amount.num, amount.num);
+ EXPECT_EQ(itl_eur_amount.denom, amount.denom);
+ EXPECT_TRUE(gnc_numeric_equal(itl_eur_amount, amount));
+
+ gnc_numeric nlg_eur_amount{142559, 100};
+ auto nlg{gnc_commodity_table_lookup(m_table, currency, "NLG")};
+ amount = gnc_convert_to_euro(nlg, value);
+ EXPECT_EQ(nlg_eur_amount.num, amount.num);
+ EXPECT_EQ(nlg_eur_amount.denom, amount.denom);
+ EXPECT_TRUE(gnc_numeric_equal(nlg_eur_amount, amount));
+
+ auto eur{gnc_commodity_table_lookup(m_table, currency, "EUR")};
+ ASSERT_NE(eur, nullptr);
+ EXPECT_TRUE(gnc_numeric_equal(value,
+ gnc_convert_to_euro(eur, value)));
+}
+
+TEST_F(Currencies, convert_from_euro)
+{
+ gnc_numeric value{314159, 100}; //.787564 * 3141.59 = 2472.20
+ gnc_numeric eur_iep_amount{247419, 100};
+ auto iep{gnc_commodity_table_lookup(m_table, currency, "IEP")};
+ ASSERT_NE(iep, nullptr);
+ auto amount{gnc_convert_from_euro(iep, value)};
+ EXPECT_EQ(eur_iep_amount.num, amount.num);
+ EXPECT_EQ(eur_iep_amount.denom, amount.denom);
+ EXPECT_TRUE(gnc_numeric_equal(eur_iep_amount, amount));
+
+ gnc_numeric eur_itl_amount{6082966, 1};
+ auto itl{gnc_commodity_table_lookup(m_table, currency, "ITL")};
+ amount = gnc_convert_from_euro(itl, value);
+ EXPECT_EQ(eur_itl_amount.num, amount.num);
+ EXPECT_EQ(eur_itl_amount.denom, amount.denom);
+ EXPECT_TRUE(gnc_numeric_equal(eur_itl_amount, amount));
+
+ gnc_numeric eur_fim_amount{1867905, 100};
+ auto fim{gnc_commodity_table_lookup(m_table, currency, "FIM")};
+ EXPECT_NE(fim, nullptr);
+ amount = gnc_convert_from_euro(fim, value);
+ EXPECT_EQ(eur_fim_amount.num, amount.num);
+ EXPECT_EQ(eur_fim_amount.denom, amount.denom);
+ EXPECT_TRUE(gnc_numeric_equal(eur_fim_amount, amount));
+
+ gnc_numeric eur_dm_amount{614442, 100};
+ auto dm{gnc_commodity_table_lookup(m_table, currency, "DEM")};
+ EXPECT_NE(dm, nullptr);
+ amount = gnc_convert_from_euro(dm, value);
+ EXPECT_EQ(eur_dm_amount.num, amount.num);
+ EXPECT_EQ(eur_dm_amount.denom, amount.denom);
+ EXPECT_TRUE(gnc_numeric_equal(eur_dm_amount, amount));
+
+ auto eur{gnc_commodity_table_lookup(m_table, currency, "EUR")};
+ EXPECT_TRUE(gnc_numeric_equal(value,
+ gnc_convert_from_euro(eur, value)));
+}
+
+TEST_F(Currencies, euro_currency_get_rate)
+{
+ auto ats{gnc_commodity_table_lookup(m_table, currency, "ATS")};
+ ASSERT_NE(ats, nullptr);
+ EXPECT_TRUE(gnc_numeric_equal(gnc_numeric{137603, 10000},
+ gnc_euro_currency_get_rate(ats)));
+
+ auto bef{gnc_commodity_table_lookup(m_table, currency, "BEF")};
+ EXPECT_TRUE(gnc_numeric_equal(gnc_numeric{403399, 10000},
+ gnc_euro_currency_get_rate(bef)));
+
+ auto cyp{gnc_commodity_table_lookup(m_table, currency, "CYP")};
+ EXPECT_TRUE(gnc_numeric_equal(gnc_numeric{585274, 1000000},
+ gnc_euro_currency_get_rate(cyp)));
+
+ auto dem{gnc_commodity_table_lookup(m_table, currency, "DEM")};
+ EXPECT_TRUE(gnc_numeric_equal(gnc_numeric{195583, 100000},
+ gnc_euro_currency_get_rate(dem)));
+
+ auto eek{gnc_commodity_table_lookup(m_table, currency, "EEK")};
+ EXPECT_TRUE(gnc_numeric_equal(gnc_numeric{156466, 10000},
+ gnc_euro_currency_get_rate(eek)));
+
+ auto esp{gnc_commodity_table_lookup(m_table, currency, "ESP")};
+ EXPECT_TRUE(gnc_numeric_equal(gnc_numeric{166386, 1000},
+ gnc_euro_currency_get_rate(esp)));
+
+ auto eur{gnc_commodity_table_lookup(m_table, currency, "EUR")};
+ EXPECT_TRUE(gnc_numeric_equal(gnc_numeric{100000, 100000},
+ gnc_euro_currency_get_rate(eur)));
+
+ auto fim{gnc_commodity_table_lookup(m_table, currency, "FIM")};
+ EXPECT_TRUE(gnc_numeric_equal(gnc_numeric{594573, 100000},
+ gnc_euro_currency_get_rate(fim)));
+
+
+ auto frf{gnc_commodity_table_lookup(m_table, currency, "FRF")};
+ EXPECT_TRUE(gnc_numeric_equal(gnc_numeric{655957, 100000},
+ gnc_euro_currency_get_rate(frf)));
+
+ auto grd{gnc_commodity_table_lookup(m_table, currency, "GRD")};
+ EXPECT_TRUE(gnc_numeric_equal(gnc_numeric{340750, 1000},
+ gnc_euro_currency_get_rate(grd)));
+
+
+ auto hrk{gnc_commodity_table_lookup(m_table, currency, "HRK")};
+ EXPECT_TRUE(gnc_numeric_equal(gnc_numeric{753450, 100000},
+ gnc_euro_currency_get_rate(hrk)));
+
+ auto iep{gnc_commodity_table_lookup(m_table, currency, "IEP")};
+ EXPECT_TRUE(gnc_numeric_equal(gnc_numeric{787564, 1000000},
+ gnc_euro_currency_get_rate(iep)));
+
+ auto itl{gnc_commodity_table_lookup(m_table, currency, "ITL")};
+ EXPECT_TRUE(gnc_numeric_equal(gnc_numeric{193627, 100},
+ gnc_euro_currency_get_rate(itl)));
+
+ auto luf{gnc_commodity_table_lookup(m_table, currency, "LUF")};
+ EXPECT_TRUE(gnc_numeric_equal(gnc_numeric{403399, 10000},
+ gnc_euro_currency_get_rate(luf)));
+
+ auto lvl{gnc_commodity_table_lookup(m_table, currency, "LVL")};
+ EXPECT_TRUE(gnc_numeric_equal(gnc_numeric{702804, 1000000},
+ gnc_euro_currency_get_rate(lvl)));
+
+ auto mtl{gnc_commodity_table_lookup(m_table, currency, "MTL")};
+ EXPECT_TRUE(gnc_numeric_equal(gnc_numeric{429300, 1000000},
+ gnc_euro_currency_get_rate(mtl)));
+
+ auto nlg{gnc_commodity_table_lookup(m_table, currency, "NLG")};
+ EXPECT_TRUE(gnc_numeric_equal(gnc_numeric{220371, 100000},
+ gnc_euro_currency_get_rate(nlg)));
+
+ auto pte{gnc_commodity_table_lookup(m_table, currency, "PTE")};
+ EXPECT_TRUE(gnc_numeric_equal(gnc_numeric{200482, 1000},
+ gnc_euro_currency_get_rate(pte)));
+
+ auto sit{gnc_commodity_table_lookup(m_table, currency, "SIT")};
+ EXPECT_TRUE(gnc_numeric_equal(gnc_numeric{239640, 1000},
+ gnc_euro_currency_get_rate(sit)));
+
+ auto skk{gnc_commodity_table_lookup(m_table, currency, "SKK")};
+ EXPECT_TRUE(gnc_numeric_equal(gnc_numeric{301260, 10000},
+ gnc_euro_currency_get_rate(skk)));
+
+}
diff --git a/po/POTFILES.in b/po/POTFILES.in
index 6c9be8e2c..6795e6f2b 100644
--- a/po/POTFILES.in
+++ b/po/POTFILES.in
@@ -534,7 +534,6 @@ libgnucash/app-utils/gnc-accounting-period.c
libgnucash/app-utils/gnc-account-merge.c
libgnucash/app-utils/gnc-addr-quickfill.c
libgnucash/app-utils/gnc-entry-quickfill.c
-libgnucash/app-utils/gnc-euro.c
libgnucash/app-utils/gnc-exp-parser.c
libgnucash/app-utils/gnc-gsettings.cpp
libgnucash/app-utils/gnc-helpers.c
@@ -640,6 +639,7 @@ libgnucash/engine/gnc-datetime.cpp
libgnucash/engine/gncEmployee.c
libgnucash/engine/gnc-engine.c
libgnucash/engine/gncEntry.c
+libgnucash/engine/gnc-euro.c
libgnucash/engine/gnc-event.c
libgnucash/engine/gnc-features.c
libgnucash/engine/gnc-hooks.c
commit 2774f8f88c7cb84b2ef3e2f2735bbca84f17a91a
Author: John Ralls <jralls at ceridwen.us>
Date: Sun Sep 11 10:35:43 2022 -0700
Bug 798614 - Croatia to join the Euro
Add HRK to the conversion array.
diff --git a/libgnucash/app-utils/gnc-euro.c b/libgnucash/app-utils/gnc-euro.c
index b541100df..86bf98e54 100644
--- a/libgnucash/app-utils/gnc-euro.c
+++ b/libgnucash/app-utils/gnc-euro.c
@@ -59,6 +59,7 @@ static gnc_euro_rate_struct gnc_euro_rates[] =
{ "FRF", 6.55957 }, /* french franc */
{ "GRD", 340.750 }, /* greek drachma */
{ "HFL", 2.20371 }, /* netherland gulden */
+ { "HRK", 7.53450 }, /* Croatian kuna */
{ "IEP", .787564 }, /* irish pound */
{ "IRP", .787564 }, /* irish pound */
{ "ITL", 1936.27 }, /* italian lira */
diff --git a/libgnucash/engine/iso-4217-currencies.xml b/libgnucash/engine/iso-4217-currencies.xml
index 93c22311f..2aa62d136 100644
--- a/libgnucash/engine/iso-4217-currencies.xml
+++ b/libgnucash/engine/iso-4217-currencies.xml
@@ -1195,6 +1195,7 @@
local-symbol="L"
/>
<!-- "HRK" - "Croatian Kuna"
+ 2023-01-01 "EUR" 7.53400
-->
<currency
isocode="HRK"
Summary of changes:
libgnucash/app-utils/CMakeLists.txt | 2 -
libgnucash/engine/CMakeLists.txt | 2 +
libgnucash/{app-utils => engine}/gnc-euro.c | 27 +---
libgnucash/{app-utils => engine}/gnc-euro.h | 0
libgnucash/engine/iso-4217-currencies.xml | 1 +
libgnucash/engine/test/CMakeLists.txt | 4 +
libgnucash/engine/test/gtest-gnc-euro.cpp | 228 ++++++++++++++++++++++++++++
po/POTFILES.in | 2 +-
8 files changed, 243 insertions(+), 23 deletions(-)
rename libgnucash/{app-utils => engine}/gnc-euro.c (88%)
rename libgnucash/{app-utils => engine}/gnc-euro.h (100%)
create mode 100644 libgnucash/engine/test/gtest-gnc-euro.cpp
More information about the gnucash-changes
mailing list