"Fossies" - the Fresh Open Source Software Archive  

Source code changes of the file "libgnucash/engine/test/gtest-qofquerycore.cpp" between
gnucash-5.0.tar.bz2 and gnucash-5.1.tar.bz2

About: GnuCash is personal and small-business financial-accounting software.

gtest-qofquerycore.cpp  (gnucash-5.0.tar.bz2):gtest-qofquerycore.cpp  (gnucash-5.1.tar.bz2)
skipping to change at line 32 skipping to change at line 32
* * * *
\ *********************************************************************/ \ *********************************************************************/
#include <config.h> #include <config.h>
#include <glib.h> #include <glib.h>
#include "../test-core/test-engine-stuff.h" #include "../test-core/test-engine-stuff.h"
#include "../qofquerycore.h" #include "../qofquerycore.h"
#include "../qofquerycore-p.h" #include "../qofquerycore-p.h"
#include <gtest/gtest.h> #include <gtest/gtest.h>
TEST(qof_query_construct_predicate, string) class QofQueryCoreTest : public ::testing::Test {
protected:
QofQueryCoreTest() {
qof_query_core_init();
}
~QofQueryCoreTest() {
qof_query_core_shutdown();
}
};
TEST_F(QofQueryCoreTest, construct_predicate_string)
{ {
query_string_def *pdata; query_string_def *pdata;
pdata = (query_string_def*)qof_query_string_predicate( pdata = (query_string_def*)qof_query_string_predicate(
QOF_COMPARE_EQUAL, QOF_COMPARE_EQUAL,
"Test", "Test",
QOF_STRING_MATCH_NORMAL, QOF_STRING_MATCH_NORMAL,
FALSE FALSE
); );
EXPECT_STREQ (QOF_TYPE_STRING, pdata->pd.type_name); EXPECT_STREQ (QOF_TYPE_STRING, pdata->pd.type_name);
EXPECT_EQ (QOF_COMPARE_EQUAL, pdata->pd.how); EXPECT_EQ (QOF_COMPARE_EQUAL, pdata->pd.how);
EXPECT_EQ (QOF_STRING_MATCH_NORMAL, pdata->options); EXPECT_EQ (QOF_STRING_MATCH_NORMAL, pdata->options);
EXPECT_STREQ ("Test", pdata->matchstring); EXPECT_STREQ ("Test", pdata->matchstring);
EXPECT_EQ (FALSE, pdata->is_regex); EXPECT_EQ (FALSE, pdata->is_regex);
qof_query_core_predicate_free ((QofQueryPredData*) pdata);
} }
TEST(qof_query_construct_predicate, date) TEST_F(QofQueryCoreTest, construct_predicate_date)
{ {
query_date_def *pdata; query_date_def *pdata;
pdata = (query_date_def*)qof_query_date_predicate( pdata = (query_date_def*)qof_query_date_predicate(
QOF_COMPARE_LT, QOF_COMPARE_LT,
QOF_DATE_MATCH_DAY, QOF_DATE_MATCH_DAY,
1524772012 1524772012
); );
EXPECT_STREQ (QOF_TYPE_DATE, pdata->pd.type_name); EXPECT_STREQ (QOF_TYPE_DATE, pdata->pd.type_name);
EXPECT_EQ (QOF_COMPARE_LT, pdata->pd.how); EXPECT_EQ (QOF_COMPARE_LT, pdata->pd.how);
EXPECT_EQ (QOF_DATE_MATCH_DAY, pdata->options); EXPECT_EQ (QOF_DATE_MATCH_DAY, pdata->options);
EXPECT_EQ (1524772012, pdata->date); EXPECT_EQ (1524772012, pdata->date);
qof_query_core_predicate_free ((QofQueryPredData*) pdata);
} }
TEST(qof_query_construct_predicate, numeric) TEST_F(QofQueryCoreTest, construct_predicate_numeric)
{ {
query_numeric_def *pdata; query_numeric_def *pdata;
pdata = (query_numeric_def*)qof_query_numeric_predicate( pdata = (query_numeric_def*)qof_query_numeric_predicate(
QOF_COMPARE_LTE, QOF_COMPARE_LTE,
QOF_NUMERIC_MATCH_CREDIT, QOF_NUMERIC_MATCH_CREDIT,
{ 500, 100 } { 500, 100 }
); );
EXPECT_STREQ (QOF_TYPE_NUMERIC, pdata->pd.type_name); EXPECT_STREQ (QOF_TYPE_NUMERIC, pdata->pd.type_name);
EXPECT_EQ (QOF_COMPARE_LTE, pdata->pd.how); EXPECT_EQ (QOF_COMPARE_LTE, pdata->pd.how);
EXPECT_EQ (QOF_NUMERIC_MATCH_CREDIT, pdata->options); EXPECT_EQ (QOF_NUMERIC_MATCH_CREDIT, pdata->options);
EXPECT_TRUE (gnc_numeric_eq({ 500, 100 }, pdata->amount)); EXPECT_TRUE (gnc_numeric_eq({ 500, 100 }, pdata->amount));
qof_query_core_predicate_free ((QofQueryPredData*) pdata);
} }
TEST(qof_query_construct_predicate, guid) TEST_F(QofQueryCoreTest, construct_predicate_guid)
{ {
GncGUID *guid = guid_new(); GncGUID *guid = guid_new();
GList *guidlist = g_list_prepend (NULL, guid); GList *guidlist = g_list_prepend (NULL, guid);
query_guid_def *pdata; query_guid_def *pdata;
pdata = (query_guid_def*)qof_query_guid_predicate( pdata = (query_guid_def*)qof_query_guid_predicate(
QOF_GUID_MATCH_ANY, QOF_GUID_MATCH_ANY,
guidlist guidlist
); );
EXPECT_STREQ (QOF_TYPE_GUID, pdata->pd.type_name); EXPECT_STREQ (QOF_TYPE_GUID, pdata->pd.type_name);
EXPECT_EQ (QOF_GUID_MATCH_ANY, pdata->options); EXPECT_EQ (QOF_GUID_MATCH_ANY, pdata->options);
EXPECT_TRUE (guid_equal (guid, (const GncGUID*)pdata->guids->data)); EXPECT_TRUE (guid_equal (guid, (const GncGUID*)pdata->guids->data));
EXPECT_EQ (NULL, pdata->guids->next); EXPECT_EQ (NULL, pdata->guids->next);
qof_query_core_predicate_free ((QofQueryPredData*) pdata);
} }
TEST(qof_query_construct_predicate, int32) TEST_F(QofQueryCoreTest, construct_predicate_int32)
{ {
query_int32_def *pdata; query_int32_def *pdata;
pdata = (query_int32_def*)qof_query_int32_predicate( pdata = (query_int32_def*)qof_query_int32_predicate(
QOF_COMPARE_EQUAL, QOF_COMPARE_EQUAL,
-613 -613
); );
EXPECT_STREQ (QOF_TYPE_INT32, pdata->pd.type_name); EXPECT_STREQ (QOF_TYPE_INT32, pdata->pd.type_name);
EXPECT_EQ (QOF_COMPARE_EQUAL, pdata->pd.how); EXPECT_EQ (QOF_COMPARE_EQUAL, pdata->pd.how);
EXPECT_EQ (-613, pdata->val); EXPECT_EQ (-613, pdata->val);
qof_query_core_predicate_free ((QofQueryPredData*) pdata);
} }
TEST(qof_query_construct_predicate, int64) TEST_F(QofQueryCoreTest, query_construct_predicate_int64)
{ {
query_int64_def *pdata; query_int64_def *pdata;
pdata = (query_int64_def*)qof_query_int64_predicate( pdata = (query_int64_def*)qof_query_int64_predicate(
QOF_COMPARE_GT, QOF_COMPARE_GT,
1000000 1000000
); );
EXPECT_STREQ (QOF_TYPE_INT64, pdata->pd.type_name); EXPECT_STREQ (QOF_TYPE_INT64, pdata->pd.type_name);
EXPECT_EQ (QOF_COMPARE_GT, pdata->pd.how); EXPECT_EQ (QOF_COMPARE_GT, pdata->pd.how);
EXPECT_EQ (1000000, pdata->val); EXPECT_EQ (1000000, pdata->val);
qof_query_core_predicate_free ((QofQueryPredData*) pdata);
} }
TEST(qof_query_construct_predicate, double) TEST_F(QofQueryCoreTest, construct_predicate_double)
{ {
query_double_def *pdata; query_double_def *pdata;
pdata = (query_double_def*)qof_query_double_predicate( pdata = (query_double_def*)qof_query_double_predicate(
QOF_COMPARE_GTE, QOF_COMPARE_GTE,
10.05 10.05
); );
EXPECT_STREQ (QOF_TYPE_DOUBLE, pdata->pd.type_name); EXPECT_STREQ (QOF_TYPE_DOUBLE, pdata->pd.type_name);
EXPECT_EQ (QOF_COMPARE_GTE, pdata->pd.how); EXPECT_EQ (QOF_COMPARE_GTE, pdata->pd.how);
EXPECT_EQ (10.05, pdata->val); EXPECT_EQ (10.05, pdata->val);
qof_query_core_predicate_free ((QofQueryPredData*) pdata);
} }
TEST(qof_query_construct_predicate, boolean) TEST_F(QofQueryCoreTest, construct_predicate_boolean)
{ {
query_boolean_def *pdata; query_boolean_def *pdata;
pdata = (query_boolean_def*)qof_query_boolean_predicate( pdata = (query_boolean_def*)qof_query_boolean_predicate(
QOF_COMPARE_NEQ, QOF_COMPARE_NEQ,
TRUE TRUE
); );
EXPECT_STREQ (QOF_TYPE_BOOLEAN, pdata->pd.type_name); EXPECT_STREQ (QOF_TYPE_BOOLEAN, pdata->pd.type_name);
EXPECT_EQ (QOF_COMPARE_NEQ, pdata->pd.how); EXPECT_EQ (QOF_COMPARE_NEQ, pdata->pd.how);
EXPECT_EQ (TRUE, pdata->val); EXPECT_EQ (TRUE, pdata->val);
qof_query_core_predicate_free ((QofQueryPredData*) pdata);
} }
TEST(qof_query_construct_predicate, char) TEST_F(QofQueryCoreTest, construct_predicate_char)
{ {
query_char_def *pdata; query_char_def *pdata;
pdata = (query_char_def*)qof_query_char_predicate( pdata = (query_char_def*)qof_query_char_predicate(
QOF_CHAR_MATCH_ANY, QOF_CHAR_MATCH_ANY,
"Foo" "Foo"
); );
EXPECT_STREQ (QOF_TYPE_CHAR, pdata->pd.type_name); EXPECT_STREQ (QOF_TYPE_CHAR, pdata->pd.type_name);
EXPECT_EQ (QOF_COMPARE_EQUAL, pdata->pd.how); EXPECT_EQ (QOF_COMPARE_EQUAL, pdata->pd.how);
EXPECT_EQ (QOF_CHAR_MATCH_ANY, pdata->options); EXPECT_EQ (QOF_CHAR_MATCH_ANY, pdata->options);
EXPECT_STREQ ("Foo", pdata->char_list); EXPECT_STREQ ("Foo", pdata->char_list);
qof_query_core_predicate_free ((QofQueryPredData*) pdata);
} }
TEST(qof_query_core_predicate_copy, date) TEST_F(QofQueryCoreTest, date_predicate_copy)
{ {
qof_query_core_init();
query_date_def *pdata, *pdata2; query_date_def *pdata, *pdata2;
pdata = (query_date_def*)qof_query_date_predicate( pdata = (query_date_def*)qof_query_date_predicate(
QOF_COMPARE_LT, QOF_COMPARE_LT,
QOF_DATE_MATCH_DAY, QOF_DATE_MATCH_DAY,
1524772012 1524772012
); );
pdata2 = (query_date_def*) qof_query_core_predicate_copy ((QofQueryPredData* )pdata); pdata2 = (query_date_def*) qof_query_core_predicate_copy ((QofQueryPredData* )pdata);
EXPECT_STREQ (pdata2->pd.type_name, pdata->pd.type_name); EXPECT_STREQ (pdata2->pd.type_name, pdata->pd.type_name);
EXPECT_EQ (pdata2->pd.how, pdata->pd.how); EXPECT_EQ (pdata2->pd.how, pdata->pd.how);
EXPECT_EQ (pdata2->options, pdata->options); EXPECT_EQ (pdata2->options, pdata->options);
EXPECT_EQ (pdata2->date, pdata->date); EXPECT_EQ (pdata2->date, pdata->date);
qof_query_core_predicate_free ((QofQueryPredData*) pdata);
qof_query_core_predicate_free ((QofQueryPredData*) pdata2);
} }
TEST(qof_query_core_predicate_get_date, date) TEST_F(QofQueryCoreTest, date_predicate_get_date)
{ {
qof_query_core_init();
time64 date; time64 date;
QofQueryPredData *pdata; QofQueryPredData *pdata;
pdata = qof_query_date_predicate( pdata = qof_query_date_predicate(
QOF_COMPARE_LT, QOF_COMPARE_LT,
QOF_DATE_MATCH_DAY, QOF_DATE_MATCH_DAY,
1524772012 1524772012
); );
EXPECT_TRUE (qof_query_date_predicate_get_date(pdata, &date)); EXPECT_TRUE (qof_query_date_predicate_get_date(pdata, &date));
EXPECT_EQ (1524772012, date); EXPECT_EQ (1524772012, date);
qof_query_core_predicate_free (pdata);
} }
TEST(qof_query_core_predicate_get_date, numeric) TEST_F(QofQueryCoreTest, numeric_predicate_get_date)
{ {
qof_query_core_init();
time64 date; time64 date;
QofQueryPredData *pdata; QofQueryPredData *pdata;
pdata = qof_query_numeric_predicate( pdata = qof_query_numeric_predicate(
QOF_COMPARE_LT, QOF_COMPARE_LT,
QOF_NUMERIC_MATCH_CREDIT, QOF_NUMERIC_MATCH_CREDIT,
{ 1000, 100 } { 1000, 100 }
); );
EXPECT_FALSE (qof_query_date_predicate_get_date(pdata, &date)); EXPECT_FALSE (qof_query_date_predicate_get_date(pdata, &date));
qof_query_core_predicate_free (pdata);
} }
 End of changes. 30 change blocks. 
18 lines changed or deleted 35 lines changed or added

Home  |  About  |  Features  |  All  |  Newest  |  Dox  |  Diffs  |  RSS Feeds  |  Screenshots  |  Comments  |  Imprint  |  Privacy  |  HTTP(S)