2020-04-08 15:00:29 -05:00
|
|
|
#ifndef GMOCK_QOFBOOK_H
|
|
|
|
#define GMOCK_QOFBOOK_H
|
|
|
|
|
|
|
|
#include <gmock/gmock.h>
|
|
|
|
|
|
|
|
#include <qofbook.h>
|
|
|
|
#include <qofbook-p.h>
|
|
|
|
|
|
|
|
#include "gmock-gobject.h"
|
|
|
|
#include "gmock-Split.h"
|
|
|
|
|
|
|
|
|
2020-09-20 15:33:51 -05:00
|
|
|
GType qof_mockbook_get_type(void);
|
2020-04-08 15:00:29 -05:00
|
|
|
|
2020-09-20 15:33:51 -05:00
|
|
|
#define QOF_TYPE_MOCKBOOK (qof_mockbook_get_type ())
|
|
|
|
#define QOF_IS_MOCKBOOK(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), QOF_TYPE_MOCKBOOK))
|
2020-04-08 15:00:29 -05:00
|
|
|
|
|
|
|
|
|
|
|
// mock up for QofBook
|
|
|
|
class QofMockBook : public QofBook
|
|
|
|
{
|
|
|
|
public:
|
|
|
|
QofMockBook()
|
|
|
|
{
|
|
|
|
hash_of_collections = nullptr;
|
|
|
|
data_tables = nullptr;
|
|
|
|
data_table_finalizers = nullptr;
|
|
|
|
|
|
|
|
book_open = 'n';
|
|
|
|
read_only = TRUE;
|
|
|
|
session_dirty = FALSE;
|
|
|
|
|
|
|
|
version = 0;
|
|
|
|
|
|
|
|
cached_num_field_source_isvalid = FALSE;
|
|
|
|
cached_num_days_autoreadonly_isvalid = FALSE;
|
|
|
|
}
|
|
|
|
void* operator new(size_t size)
|
|
|
|
{
|
2020-09-20 15:33:51 -05:00
|
|
|
return mock_g_object_new (QOF_TYPE_MOCKBOOK, NULL, size);
|
2020-04-08 15:00:29 -05:00
|
|
|
}
|
|
|
|
|
|
|
|
// define separate free() function since destructor is protected
|
|
|
|
void free()
|
|
|
|
{
|
|
|
|
delete this;
|
|
|
|
}
|
|
|
|
void operator delete(void* book, size_t size)
|
|
|
|
{
|
|
|
|
mock_g_object_unref(book, size);
|
|
|
|
}
|
|
|
|
|
2020-07-09 14:36:01 -05:00
|
|
|
MOCK_METHOD0(malloc_split, Split *());
|
2020-09-20 16:36:34 -05:00
|
|
|
MOCK_CONST_METHOD0(use_split_action_for_num_field, gboolean());
|
2020-04-08 15:00:29 -05:00
|
|
|
|
|
|
|
protected:
|
|
|
|
// Protect destructor to avoid MockQofBook objects to be created on stack. MockQofBook
|
|
|
|
// objects can only be dynamically created, since they are derived from GObject.
|
|
|
|
~QofMockBook() {}
|
|
|
|
};
|
|
|
|
|
|
|
|
#endif
|