diff options
Diffstat (limited to 'camel/tests/folder/test6.c')
-rw-r--r-- | camel/tests/folder/test6.c | 76 |
1 files changed, 66 insertions, 10 deletions
diff --git a/camel/tests/folder/test6.c b/camel/tests/folder/test6.c index 6f4e387fca..cbd980a992 100644 --- a/camel/tests/folder/test6.c +++ b/camel/tests/folder/test6.c @@ -12,15 +12,6 @@ #include <camel/camel-folder-summary.h> #include <camel/camel-mime-message.h> -/* god, who designed this horrid interface */ -static char *auth_callback(CamelAuthCallbackMode mode, - char *data, gboolean secret, - CamelService *service, char *item, - CamelException *ex) -{ - return NULL; -} - static int regtimeout() { return 1; @@ -31,6 +22,71 @@ static int unregtimeout() return 1; } +#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 */ + camel_session_class->register_timeout = regtimeout; + camel_session_class->remove_timeout = unregtimeout; +} + +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 *remote_providers[] = { @@ -51,7 +107,7 @@ int main(int argc, char **argv) ex = camel_exception_new(); - session = camel_session_new("/tmp/camel-test", auth_callback, regtimeout, unregtimeout); + session = camel_test_session_new ("/tmp/camel-test"); for (i=0;i<ARRAY_LEN(remote_providers);i++) { path = getenv(remote_providers[i]); |