aboutsummaryrefslogtreecommitdiffstats
path: root/camel/tests/folder/test7.c
diff options
context:
space:
mode:
authorJeffrey Stedfast <fejj@ximian.com>2001-05-15 04:08:25 +0800
committerJeffrey Stedfast <fejj@src.gnome.org>2001-05-15 04:08:25 +0800
commitd538a34c4bbc028828dac7c147eace3cd8e2a0e2 (patch)
treef0037216a7457ca9ee18ae8fb057f4397328d780 /camel/tests/folder/test7.c
parent02ff1e11ae73af6c2b90108b5228158505478ed0 (diff)
downloadgsoc2013-evolution-d538a34c4bbc028828dac7c147eace3cd8e2a0e2.tar
gsoc2013-evolution-d538a34c4bbc028828dac7c147eace3cd8e2a0e2.tar.gz
gsoc2013-evolution-d538a34c4bbc028828dac7c147eace3cd8e2a0e2.tar.bz2
gsoc2013-evolution-d538a34c4bbc028828dac7c147eace3cd8e2a0e2.tar.lz
gsoc2013-evolution-d538a34c4bbc028828dac7c147eace3cd8e2a0e2.tar.xz
gsoc2013-evolution-d538a34c4bbc028828dac7c147eace3cd8e2a0e2.tar.zst
gsoc2013-evolution-d538a34c4bbc028828dac7c147eace3cd8e2a0e2.zip
Subclass CamelSession since we can no longer specify the passwd callback
2001-05-14 Jeffrey Stedfast <fejj@ximian.com> * tests/folder/test9.c: * tests/folder/test8.c: * tests/folder/test7.c: * tests/folder/test6.c: * tests/folder/test5.c: * tests/folder/test4.c: * tests/folder/test3.c: * tests/folder/test2.c: * tests/folder/test1.c: * tests/smime/pgp-mime.c: * tests/smime/pgp.c: Subclass CamelSession since we can no longer specify the passwd callback any other way and update code accordingly. svn path=/trunk/; revision=9796
Diffstat (limited to 'camel/tests/folder/test7.c')
-rw-r--r--camel/tests/folder/test7.c75
1 files changed, 65 insertions, 10 deletions
diff --git a/camel/tests/folder/test7.c b/camel/tests/folder/test7.c
index 7acacebbcd..5e5015ac0d 100644
--- a/camel/tests/folder/test7.c
+++ b/camel/tests/folder/test7.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,70 @@ 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 +106,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]);