/* store testing */ #include "camel-test.h" #include "folders.h" #include #include #include #include #define CAMEL_TEST_SESSION_TYPE (camel_test_session_get_type ()) #define CAMEL_TEST_SESSION(obj) (CAMEL_CHECK_CAST((obj), CAMEL_TEST_SESSION_TYPE, CamelTestSession)) #define CAMEL_TEST_SESSION_CLASS(k) (CAMEL_CHECK_CLASS_CAST ((k), CAMEL_TEST_SESSION_TYPE, CamelTestSessionClass)) #define CAMEL_TEST_IS_SESSION(o) (CAMEL_CHECK_TYPE((o), CAMEL_TEST_SESSION_TYPE)) typedef struct _CamelTestSession { CamelSession parent_object; } CamelTestSession; typedef struct _CamelTestSessionClass { CamelSessionClass parent_class; } CamelTestSessionClass; static void init (CamelTestSession *session) { ; } static void class_init (CamelTestSessionClass *camel_test_session_class) { CamelSessionClass *camel_session_class = CAMEL_SESSION_CLASS (camel_test_session_class); /* virtual method override */ } static CamelType camel_test_session_get_type (void) { static CamelType type = CAMEL_INVALID_TYPE; if (type == CAMEL_INVALID_TYPE) { type = camel_type_register ( camel_test_session_get_type (), "CamelTestSession", sizeof (CamelTestSession), sizeof (CamelTestSessionClass), (CamelObjectClassInitFunc) class_init, NULL, (CamelObjectInitFunc) init, NULL); } return type; } static CamelSession * camel_test_session_new (const char *path) { CamelSession *session; session = CAMEL_SESSION (camel_object_new (CAMEL_TEST_SESSION_TYPE)); camel_session_construct (session, path); return session; } #define ARRAY_LEN(x) (sizeof(x)/sizeof(x[0])) static char *local_providers[] = { "mbox", "mh", "maildir" }; int main(int argc, char **argv) { CamelSession *session; CamelException *ex; int i; char *path; camel_test_init(argc, argv); ex = camel_exception_new(); /* clear out any camel-test data */ system("/bin/rm -rf /tmp/camel-test"); session = camel_test_session_new ("/tmp/camel-test"); /* todo: cross-check everything with folder_info checks as well */ /* todo: subscriptions? */ /* todo: work out how to do imap/pop/nntp tests */ for (i=0;i