aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--camel/ChangeLog16
-rw-r--r--camel/tests/folder/test1.c68
-rw-r--r--camel/tests/folder/test2.c67
-rw-r--r--camel/tests/folder/test3.c66
-rw-r--r--camel/tests/folder/test4.c74
-rw-r--r--camel/tests/folder/test5.c76
-rw-r--r--camel/tests/folder/test6.c76
-rw-r--r--camel/tests/folder/test7.c75
-rw-r--r--camel/tests/folder/test8.c68
-rw-r--r--camel/tests/folder/test9.c66
-rw-r--r--camel/tests/smime/pgp-mime.c82
-rw-r--r--camel/tests/smime/pgp.c82
12 files changed, 727 insertions, 89 deletions
diff --git a/camel/ChangeLog b/camel/ChangeLog
index 62674276b9..5a42731323 100644
--- a/camel/ChangeLog
+++ b/camel/ChangeLog
@@ -1,3 +1,19 @@
+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.
+
2001-05-11 Dan Winship <danw@ximian.com>
* camel-mime-utils.c (header_location_decode): Decode
diff --git a/camel/tests/folder/test1.c b/camel/tests/folder/test1.c
index e7d1ac0604..769254f512 100644
--- a/camel/tests/folder/test1.c
+++ b/camel/tests/folder/test1.c
@@ -8,13 +8,67 @@
#include <camel/camel-session.h>
#include <camel/camel-store.h>
-/* god, who designed this horrid interface */
-static char *auth_callback(CamelAuthCallbackMode mode,
- char *data, gboolean secret,
- CamelService *service, char *item,
- CamelException *ex)
+#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)
{
- return NULL;
+ ;
+}
+
+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]))
@@ -39,7 +93,7 @@ int main(int argc, char **argv)
/* clear out any camel-test data */
system("/bin/rm -rf /tmp/camel-test");
- session = camel_session_new("/tmp/camel-test", auth_callback, NULL, NULL);
+ session = camel_test_session_new ("/tmp/camel-test");
/* todo: cross-check everything with folder_info checks as well */
/* todo: subscriptions? */
diff --git a/camel/tests/folder/test2.c b/camel/tests/folder/test2.c
index 47e0f44feb..899e6425bf 100644
--- a/camel/tests/folder/test2.c
+++ b/camel/tests/folder/test2.c
@@ -13,15 +13,68 @@
#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)
+#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)
{
- return NULL;
+ 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]))
@@ -44,7 +97,7 @@ int main(int argc, char **argv)
ex = camel_exception_new();
- session = camel_session_new("/tmp/camel-test", auth_callback, NULL, NULL);
+ session = camel_test_session_new ("/tmp/camel-test");
/* we iterate over all stores we want to test, with indexing or indexing turned on or off */
for (i=0;i<ARRAY_LEN(stores);i++) {
diff --git a/camel/tests/folder/test3.c b/camel/tests/folder/test3.c
index 99369e5317..4fb67c1423 100644
--- a/camel/tests/folder/test3.c
+++ b/camel/tests/folder/test3.c
@@ -15,16 +15,68 @@
#define ARRAY_LEN(x) (sizeof(x)/sizeof(x[0]))
+#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))
-/* god, who designed this horrid interface */
-static char *auth_callback(CamelAuthCallbackMode mode,
- char *data, gboolean secret,
- CamelService *service, char *item,
- CamelException *ex)
+
+typedef struct _CamelTestSession {
+ CamelSession parent_object;
+
+} CamelTestSession;
+
+typedef struct _CamelTestSessionClass {
+ CamelSessionClass parent_class;
+
+} CamelTestSessionClass;
+
+static void
+init (CamelTestSession *session)
{
- return NULL;
+ ;
}
+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;
+}
static void
test_folder_search_sub(CamelFolder *folder, const char *expr, int expected)
@@ -172,7 +224,7 @@ int main(int argc, char **argv)
/* clear out any camel-test data */
system("/bin/rm -rf /tmp/camel-test");
- session = camel_session_new("/tmp/camel-test", auth_callback, NULL, NULL);
+ session = camel_test_session_new ("/tmp/camel-test");
/* todo: cross-check everything with folder_info checks as well */
/* todo: work out how to do imap/pop/nntp tests */
diff --git a/camel/tests/folder/test4.c b/camel/tests/folder/test4.c
index bae2b7bb0b..af0bc79e87 100644
--- a/camel/tests/folder/test4.c
+++ b/camel/tests/folder/test4.c
@@ -8,15 +8,6 @@
#include <camel/camel-session.h>
#include <camel/camel-store.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;
@@ -27,6 +18,69 @@ 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]))
@@ -48,7 +102,7 @@ int main(int argc, char **argv)
/* clear out any camel-test data */
system("/bin/rm -rf /tmp/camel-test");
- session = camel_session_new("/tmp/camel-test", auth_callback, regtimeout, unregtimeout);
+ session = camel_test_session_new ("/tmp/camel-test");
/* todo: cross-check everything with folder_info checks as well */
/* todo: subscriptions? */
diff --git a/camel/tests/folder/test5.c b/camel/tests/folder/test5.c
index 9e2544d7e5..c2a3e9af19 100644
--- a/camel/tests/folder/test5.c
+++ b/camel/tests/folder/test5.c
@@ -8,15 +8,6 @@
#include <camel/camel-session.h>
#include <camel/camel-store.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;
@@ -28,6 +19,71 @@ static int unregtimeout()
}
+#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[] = {
@@ -48,7 +104,7 @@ int main(int argc, char **argv)
/* clear out any camel-test data */
system("/bin/rm -rf /tmp/camel-test");
- session = camel_session_new("/tmp/camel-test", auth_callback, regtimeout, unregtimeout);
+ session = camel_test_session_new ("/tmp/camel-test");
/* todo: cross-check everything with folder_info checks as well */
/* todo: subscriptions? */
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]);
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]);
diff --git a/camel/tests/folder/test8.c b/camel/tests/folder/test8.c
index 5665f96f2a..3b9e0eec14 100644
--- a/camel/tests/folder/test8.c
+++ b/camel/tests/folder/test8.c
@@ -24,13 +24,67 @@ int main(int argc, char **argv)
#include <pthread.h>
-/* god, who designed this horrid interface */
-static char *auth_callback(CamelAuthCallbackMode mode,
- char *data, gboolean secret,
- CamelService *service, char *item,
- CamelException *ex)
+
+#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)
{
- return NULL;
+ 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]))
@@ -157,7 +211,7 @@ int main(int argc, char **argv)
/* clear out any camel-test data */
system("/bin/rm -rf /tmp/camel-test");
- session = camel_session_new("/tmp/camel-test", auth_callback, NULL, NULL);
+ session = camel_test_session_new ("/tmp/camel-test");
for (j=0;j<ARRAY_LEN(local_providers);j++) {
for (index=0;index<2;index++) {
diff --git a/camel/tests/folder/test9.c b/camel/tests/folder/test9.c
index 3b757815b0..f96773d191 100644
--- a/camel/tests/folder/test9.c
+++ b/camel/tests/folder/test9.c
@@ -17,14 +17,66 @@
#define ARRAY_LEN(x) (sizeof(x)/sizeof(x[0]))
+#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)
+{
+ ;
+}
-/* god, who designed this horrid interface */
-static char *auth_callback(CamelAuthCallbackMode mode,
- char *data, gboolean secret,
- CamelService *service, char *item,
- CamelException *ex)
+static void
+class_init (CamelTestSessionClass *camel_test_session_class)
{
- return NULL;
+ 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;
}
struct {
@@ -116,7 +168,7 @@ int main(int argc, char **argv)
camel_test_start("Simple filtering of mbox");
- session = camel_session_new("/tmp/camel-test", auth_callback, NULL, NULL);
+ session = camel_test_session_new ("/tmp/camel-test");
/* todo: cross-check everything with folder_info checks as well */
/* todo: work out how to do imap/pop/nntp tests */
diff --git a/camel/tests/smime/pgp-mime.c b/camel/tests/smime/pgp-mime.c
index 8564d1bda7..0da41c2542 100644
--- a/camel/tests/smime/pgp-mime.c
+++ b/camel/tests/smime/pgp-mime.c
@@ -12,15 +12,84 @@ static char test_msg[] = "Since we need to make sure that\nFrom lines work okay,
"as well as test 8bit chars and other fun stuff? 8bit chars: Dražen Kačar\n\nOkay, I guess that covers"
"the basics at least...\n";
-/* god, who designed this horrid interface */
-static gpointer auth_callback (CamelAuthCallbackMode mode,
- char *data, gboolean secret,
- CamelService *service, char *item,
- CamelException *ex)
+
+#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 char *get_password (CamelSession *session, const char *prompt,
+ gboolean secret, CamelService *service,
+ const char *item, CamelException *ex);
+
+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->get_password = get_password;
+}
+
+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 char *
+get_password (CamelSession *session, const char *prompt, gboolean secret,
+ CamelService *service, const char *item, CamelException *ex)
{
return g_strdup ("PGP/MIME is rfc2015, now go and read it.");
}
+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;
+}
+
+
int main (int argc, char **argv)
{
CamelSession *session;
@@ -37,8 +106,7 @@ int main (int argc, char **argv)
/* clear out any camel-test data */
system("/bin/rm -rf /tmp/camel-test");
- session = camel_session_new ("/tmp/camel-test",
- auth_callback, NULL, NULL);
+ session = camel_test_session_new ("/tmp/camel-test");
ctx = camel_pgp_context_new (session, CAMEL_PGP_TYPE_GPG, "/usr/bin/gpg");
diff --git a/camel/tests/smime/pgp.c b/camel/tests/smime/pgp.c
index 30ee7b96dd..c80d8c2712 100644
--- a/camel/tests/smime/pgp.c
+++ b/camel/tests/smime/pgp.c
@@ -8,15 +8,84 @@
#include "camel-test.h"
-/* god, who designed this horrid interface */
-static gpointer auth_callback (CamelAuthCallbackMode mode,
- char *data, gboolean secret,
- CamelService *service, char *item,
- CamelException *ex)
+
+#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 char *get_password (CamelSession *session, const char *prompt,
+ gboolean secret, CamelService *service,
+ const char *item, CamelException *ex);
+
+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->get_password = get_password;
+}
+
+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 char *
+get_password (CamelSession *session, const char *prompt, gboolean secret,
+ CamelService *service, const char *item, CamelException *ex)
{
return g_strdup ("PGP/MIME is rfc2015, now go and read it.");
}
+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;
+}
+
+
int main (int argc, char **argv)
{
CamelSession *session;
@@ -35,8 +104,7 @@ int main (int argc, char **argv)
/* clear out any camel-test data */
system("/bin/rm -rf /tmp/camel-test");
- session = camel_session_new ("/tmp/camel-test",
- auth_callback, NULL, NULL);
+ session = camel_test_session_new ("/tmp/camel-test");
ctx = camel_pgp_context_new (session, CAMEL_PGP_TYPE_GPG, "/usr/bin/gpg");