[Gnucash-changes] port over to new typenames.
Linas Vepstas
linas at cvs.gnucash.org
Thu Jul 8 23:07:35 EDT 2004
Log Message:
-----------
port over to new typenames.
Make sure that accounts are properly anchored in a book.
Modified Files:
--------------
gnucash/src/engine/test-core:
test-engine-stuff.c
Revision Data
-------------
Index: test-engine-stuff.c
===================================================================
RCS file: /home/cvs/cvsroot/gnucash/src/engine/test-core/test-engine-stuff.c,v
retrieving revision 1.74
retrieving revision 1.75
diff -Lsrc/engine/test-core/test-engine-stuff.c -Lsrc/engine/test-core/test-engine-stuff.c -u -r1.74 -r1.75
--- src/engine/test-core/test-engine-stuff.c
+++ src/engine/test-core/test-engine-stuff.c
@@ -27,8 +27,10 @@
#include <sys/stat.h>
#include <unistd.h>
+#include "Account.h"
#include "AccountP.h"
#include "Group.h"
+#include "GroupP.h"
#include "gnc-date.h"
#include "gnc-engine.h"
#include "gnc-engine-util.h"
@@ -178,7 +180,7 @@
for (i = 0; i < count; i++)
{
KvpValueType kvpt;
- kvp_value *value;
+ KvpValue *value;
kvpt = glist_strings_only ? KVP_TYPE_STRING : -2;
@@ -263,9 +265,9 @@
/* ========================================================== */
/* KVP stuff */
-static kvp_frame* get_random_kvp_frame_depth (gint depth);
+static KvpFrame* get_random_kvp_frame_depth (gint depth);
-static kvp_value*
+static KvpValue*
get_random_kvp_value_depth (int type, gint depth)
{
int datype = type;
@@ -296,7 +298,7 @@
break;
case KVP_TYPE_DOUBLE:
- return NULL;
+ return NULL;
break;
case KVP_TYPE_NUMERIC:
@@ -306,7 +308,7 @@
case KVP_TYPE_STRING:
{
gchar *tmp_str;
- kvp_value *ret;
+ KvpValue *ret;
tmp_str = get_random_string();
if(!tmp_str)
{
@@ -322,7 +324,7 @@
case KVP_TYPE_GUID:
{
GUID *tmp_guid;
- kvp_value *ret;
+ KvpValue *ret;
tmp_guid = get_random_guid();
ret = kvp_value_new_guid(tmp_guid);
g_free(tmp_guid);
@@ -340,7 +342,7 @@
case KVP_TYPE_BINARY:
{
bin_data *tmp_data;
- kvp_value *ret;
+ KvpValue *ret;
tmp_data = get_random_binary_data();
ret = kvp_value_new_binary(tmp_data->data, tmp_data->len);
g_free(tmp_data->data);
@@ -355,8 +357,8 @@
case KVP_TYPE_FRAME:
{
- kvp_frame *tmp_frame;
- kvp_value *ret;
+ KvpFrame *tmp_frame;
+ KvpValue *ret;
tmp_frame = get_random_kvp_frame_depth(depth + 1);
ret = kvp_value_new_frame(tmp_frame);
kvp_frame_delete(tmp_frame);
@@ -370,10 +372,10 @@
}
}
-static kvp_frame*
+static KvpFrame*
get_random_kvp_frame_depth (gint depth)
{
- kvp_frame *ret;
+ KvpFrame *ret;
int vals_to_add;
gboolean val_added;
@@ -388,7 +390,7 @@
for (;vals_to_add > 0; vals_to_add--)
{
gchar *key;
- kvp_value *val;
+ KvpValue *val;
do
{
@@ -413,13 +415,13 @@
return ret;
}
-kvp_frame*
+KvpFrame *
get_random_kvp_frame (void)
{
return get_random_kvp_frame_depth (0);
}
-kvp_value *
+KvpValue *
get_random_kvp_value(int type)
{
return get_random_kvp_value_depth (type, 0);
@@ -525,7 +527,7 @@
int ran_int;
gnc_commodity_table *table;
- table = gnc_book_get_commodity_table (book);
+ table = gnc_commodity_table_get_table (book);
#if 0
if (table &&
@@ -825,7 +827,7 @@
}
static void
-make_random_group (QofBook *book, AccountGroup * group)
+make_random_group (QofBook *book, AccountGroup *group)
{
int depth;
@@ -845,7 +847,12 @@
g_return_val_if_fail (book, NULL);
- group = xaccMallocAccountGroup (book);
+ group = xaccGetAccountGroup (book);
+ if (!group)
+ {
+ group = xaccMallocAccountGroup (book);
+ xaccSetAccountGroup (book, group);
+ }
make_random_group (book, group);
@@ -1156,6 +1163,7 @@
Account*
get_random_account(QofBook *book)
{
+ AccountGroup *grp;
Account *ret;
int tmp_int;
@@ -1175,6 +1183,13 @@
xaccAccountSetSlots_nc(ret, get_random_kvp_frame());
+ grp = xaccGetAccountGroup (book);
+ if (!grp)
+ {
+ grp = xaccMallocAccountGroup (book);
+ xaccSetAccountGroup (book, grp);
+ }
+ xaccGroupInsertAccount (grp, ret);
xaccAccountCommitEdit(ret);
return ret;
@@ -1304,9 +1319,12 @@
if (!account_list)
{
- account_list = xaccGroupGetSubAccounts (gnc_book_get_group (book));
+ account_list = xaccGroupGetSubAccounts (xaccGetAccountGroup (book));
}
+ /* Gotta have at least two different accounts */
+ if (1 >= g_list_length (account_list)) return NULL;
+
ret = xaccMallocTransaction(book);
xaccTransBeginEdit(ret);
@@ -1319,7 +1337,8 @@
trn_add_ran_timespec(ret, xaccTransSetDatePostedTS);
trn_add_ran_timespec(ret, xaccTransSetDateEnteredTS);
- xaccTransSetSlots_nc(ret, get_random_kvp_frame());
+ KvpFrame *f = get_random_kvp_frame();
+ xaccTransSetSlots_nc(ret, f);
add_random_splits(book, ret, account_list);
@@ -1528,7 +1547,7 @@
while (num_terms-- > 0)
{
gint pr_type;
- kvp_value *value;
+ KvpValue *value;
Timespec *start;
Timespec *end;
GList *guids;
@@ -1700,8 +1719,8 @@
book = qof_book_new ();
- make_random_group (book, gnc_book_get_group (book));
- make_random_pricedb (book, gnc_book_get_pricedb (book));
+ get_random_group (book);
+ get_random_pricedb (book);
return book;
}
@@ -1716,8 +1735,8 @@
book = qof_session_get_book (session);
- make_random_group (book, gnc_book_get_group (book));
- make_random_pricedb (book, gnc_book_get_pricedb (book));
+ get_random_group (book);
+ get_random_pricedb (book);
return session;
}
@@ -1733,13 +1752,13 @@
g_return_if_fail (book);
- accounts = xaccGroupGetSubAccounts (gnc_book_get_group (book));
+ accounts = xaccGroupGetSubAccounts (xaccGetAccountGroup (book));
g_return_if_fail (accounts);
num_accounts = g_list_length (accounts);
- table = gnc_book_get_commodity_table (book);
+ table = gnc_commodity_table_get_table (book);
while (num_transactions--)
{
@@ -1757,11 +1776,11 @@
{
g_return_if_fail (book);
- make_random_changes_to_group (book, gnc_book_get_group (book));
- make_random_changes_to_pricedb (book, gnc_book_get_pricedb (book));
+ make_random_changes_to_group (book, xaccGetAccountGroup (book));
+ make_random_changes_to_pricedb (book, gnc_pricedb_get_db (book));
#if 0
- make_random_changes_to_commodity_table (gnc_book_get_commodity_table (book));
+ make_random_changes_to_commodity_table (gnc_commodity_table_get_table (book));
#endif
}
@@ -1781,7 +1800,7 @@
} KVPQueryData;
static void
-add_kvp_value_query (const char *key, kvp_value *value, gpointer data)
+add_kvp_value_query (const char *key, KvpValue *value, gpointer data)
{
KVPQueryData *kqd = data;
GSList *node;
@@ -1802,7 +1821,7 @@
}
static void
-add_kvp_query (Query *q, kvp_frame *frame, QofIdType where)
+add_kvp_query (Query *q, KvpFrame *frame, QofIdType where)
{
KVPQueryData kqd;
More information about the gnucash-changes
mailing list