[libgdata] tests: Tidy up invocation of GDataResolver



commit ef97bbadd915a23e2cc876f80da97ca377533334
Author: Philip Withnall <philip tecnocode co uk>
Date:   Mon Aug 5 16:34:36 2013 +0200

    tests: Tidy up invocation of GDataResolver

 gdata/tests/calendar.c                |   20 ++++++++++++++++++++
 gdata/tests/client-login-authorizer.c |   20 ++++++++++++++++++++
 gdata/tests/common.c                  |   19 -------------------
 gdata/tests/contacts.c                |   20 ++++++++++++++++++++
 gdata/tests/documents.c               |   24 ++++++++++++++++++++++++
 gdata/tests/mock-server.c             |   12 +++++++-----
 gdata/tests/oauth1-authorizer.c       |   20 ++++++++++++++++++++
 gdata/tests/picasaweb.c               |   24 ++++++++++++++++++++++++
 gdata/tests/youtube.c                 |   25 +++++++++++++++++++++++++
 9 files changed, 160 insertions(+), 24 deletions(-)
---
diff --git a/gdata/tests/calendar.c b/gdata/tests/calendar.c
index b69e7c5..5bbbf5c 100644
--- a/gdata/tests/calendar.c
+++ b/gdata/tests/calendar.c
@@ -1426,6 +1426,25 @@ teardown_batch_async (BatchAsyncData *data, gconstpointer service)
        gdata_mock_server_end_trace (mock_server);
 }
 
+static void
+mock_server_notify_resolver_cb (GObject *object, GParamSpec *pspec, gpointer user_data)
+{
+       GDataMockServer *server;
+       GDataMockResolver *resolver;
+
+       server = GDATA_MOCK_SERVER (object);
+
+       /* Set up the expected domain names here. This should technically be split up between
+        * the different unit test suites, but that's too much effort. */
+       resolver = gdata_mock_server_get_resolver (server);
+
+       if (resolver != NULL) {
+               const gchar *ip_address = soup_address_get_physical (gdata_mock_server_get_address (server));
+
+               gdata_mock_resolver_add_A (resolver, "www.google.com", ip_address);
+       }
+}
+
 int
 main (int argc, char *argv[])
 {
@@ -1437,6 +1456,7 @@ main (int argc, char *argv[])
        gdata_test_init (argc, argv);
 
        mock_server = gdata_test_get_mock_server ();
+       g_signal_connect (G_OBJECT (mock_server), "notify::resolver", (GCallback) 
mock_server_notify_resolver_cb, NULL);
        trace_directory = g_file_new_for_path (TEST_FILE_DIR "traces/calendar");
        gdata_mock_server_set_trace_directory (mock_server, trace_directory);
        g_object_unref (trace_directory);
diff --git a/gdata/tests/client-login-authorizer.c b/gdata/tests/client-login-authorizer.c
index ceece8e..e87d9f4 100644
--- a/gdata/tests/client-login-authorizer.c
+++ b/gdata/tests/client-login-authorizer.c
@@ -702,6 +702,25 @@ test_client_login_authorizer_process_request_insecure (ClientLoginAuthorizerData
        g_object_unref (message);
 }
 
+static void
+mock_server_notify_resolver_cb (GObject *object, GParamSpec *pspec, gpointer user_data)
+{
+       GDataMockServer *server;
+       GDataMockResolver *resolver;
+
+       server = GDATA_MOCK_SERVER (object);
+
+       /* Set up the expected domain names here. This should technically be split up between
+        * the different unit test suites, but that's too much effort. */
+       resolver = gdata_mock_server_get_resolver (server);
+
+       if (resolver != NULL) {
+               const gchar *ip_address = soup_address_get_physical (gdata_mock_server_get_address (server));
+
+               gdata_mock_resolver_add_A (resolver, "www.google.com", ip_address);
+       }
+}
+
 int
 main (int argc, char *argv[])
 {
@@ -710,6 +729,7 @@ main (int argc, char *argv[])
        gdata_test_init (argc, argv);
 
        mock_server = gdata_test_get_mock_server ();
+       g_signal_connect (G_OBJECT (mock_server), "notify::resolver", (GCallback) 
mock_server_notify_resolver_cb, NULL);
        trace_directory = g_file_new_for_path (TEST_FILE_DIR "traces/client-login-authorizer");
        gdata_mock_server_set_trace_directory (mock_server, trace_directory);
        g_object_unref (trace_directory);
diff --git a/gdata/tests/common.c b/gdata/tests/common.c
index 0918a3a..382ea73 100644
--- a/gdata/tests/common.c
+++ b/gdata/tests/common.c
@@ -791,27 +791,8 @@ gdata_test_set_https_port (GDataMockServer *server)
 void
 gdata_test_mock_server_start_trace (GDataMockServer *server, const gchar *trace_filename)
 {
-       const gchar *ip_address;
-       GDataMockResolver *resolver;
-
        gdata_mock_server_start_trace (server, trace_filename);
        gdata_test_set_https_port (server);
-
-       if (gdata_mock_server_get_enable_online (server) == FALSE) {
-               /* Set up the expected domain names here. This should technically be split up between
-                * the different unit test suites, but that's too much effort. */
-               ip_address = soup_address_get_physical (gdata_mock_server_get_address (server));
-               resolver = gdata_mock_server_get_resolver (server);
-
-               gdata_mock_resolver_add_A (resolver, "www.google.com", ip_address);
-               gdata_mock_resolver_add_A (resolver, "gdata.youtube.com", ip_address);
-               gdata_mock_resolver_add_A (resolver, "uploads.gdata.youtube.com", ip_address);
-               gdata_mock_resolver_add_A (resolver, "picasaweb.google.com", ip_address);
-               gdata_mock_resolver_add_A (resolver, "docs.google.com", ip_address);
-               gdata_mock_resolver_add_A (resolver, "lh3.googleusercontent.com", ip_address);
-               gdata_mock_resolver_add_A (resolver, "lh5.googleusercontent.com", ip_address);
-               gdata_mock_resolver_add_A (resolver, "lh6.googleusercontent.com", ip_address);
-       }
 }
 
 /**
diff --git a/gdata/tests/contacts.c b/gdata/tests/contacts.c
index e1c4ec3..e240993 100644
--- a/gdata/tests/contacts.c
+++ b/gdata/tests/contacts.c
@@ -2529,6 +2529,25 @@ test_contact_id (void)
        g_object_unref (contact);
 }
 
+static void
+mock_server_notify_resolver_cb (GObject *object, GParamSpec *pspec, gpointer user_data)
+{
+       GDataMockServer *server;
+       GDataMockResolver *resolver;
+
+       server = GDATA_MOCK_SERVER (object);
+
+       /* Set up the expected domain names here. This should technically be split up between
+        * the different unit test suites, but that's too much effort. */
+       resolver = gdata_mock_server_get_resolver (server);
+
+       if (resolver != NULL) {
+               const gchar *ip_address = soup_address_get_physical (gdata_mock_server_get_address (server));
+
+               gdata_mock_resolver_add_A (resolver, "www.google.com", ip_address);
+       }
+}
+
 int
 main (int argc, char *argv[])
 {
@@ -2540,6 +2559,7 @@ main (int argc, char *argv[])
        gdata_test_init (argc, argv);
 
        mock_server = gdata_test_get_mock_server ();
+       g_signal_connect (G_OBJECT (mock_server), "notify::resolver", (GCallback) 
mock_server_notify_resolver_cb, NULL);
        trace_directory = g_file_new_for_path (TEST_FILE_DIR "traces/contacts");
        gdata_mock_server_set_trace_directory (mock_server, trace_directory);
        g_object_unref (trace_directory);
diff --git a/gdata/tests/documents.c b/gdata/tests/documents.c
index 65b789a..c3033f8 100644
--- a/gdata/tests/documents.c
+++ b/gdata/tests/documents.c
@@ -2018,6 +2018,29 @@ tear_down_batch_async (BatchAsyncData *data, gconstpointer service)
        gdata_mock_server_end_trace (mock_server);
 }
 
+static void
+mock_server_notify_resolver_cb (GObject *object, GParamSpec *pspec, gpointer user_data)
+{
+       GDataMockServer *server;
+       GDataMockResolver *resolver;
+
+       server = GDATA_MOCK_SERVER (object);
+
+       /* Set up the expected domain names here. This should technically be split up between
+        * the different unit test suites, but that's too much effort. */
+       resolver = gdata_mock_server_get_resolver (server);
+
+       if (resolver != NULL) {
+               const gchar *ip_address = soup_address_get_physical (gdata_mock_server_get_address (server));
+
+               gdata_mock_resolver_add_A (resolver, "www.google.com", ip_address);
+               gdata_mock_resolver_add_A (resolver, "docs.google.com", ip_address);
+               gdata_mock_resolver_add_A (resolver, "lh3.googleusercontent.com", ip_address);
+               gdata_mock_resolver_add_A (resolver, "lh5.googleusercontent.com", ip_address);
+               gdata_mock_resolver_add_A (resolver, "lh6.googleusercontent.com", ip_address);
+       }
+}
+
 int
 main (int argc, char *argv[])
 {
@@ -2029,6 +2052,7 @@ main (int argc, char *argv[])
        gdata_test_init (argc, argv);
 
        mock_server = gdata_test_get_mock_server ();
+       g_signal_connect (G_OBJECT (mock_server), "notify::resolver", (GCallback) 
mock_server_notify_resolver_cb, NULL);
        trace_directory = g_file_new_for_path (TEST_FILE_DIR "traces/documents");
        gdata_mock_server_set_trace_directory (mock_server, trace_directory);
        g_object_unref (trace_directory);
diff --git a/gdata/tests/mock-server.c b/gdata/tests/mock-server.c
index ac4f878..d965d60 100644
--- a/gdata/tests/mock-server.c
+++ b/gdata/tests/mock-server.c
@@ -1177,17 +1177,18 @@ gdata_mock_server_run (GDataMockServer *self)
        priv->address = soup_socket_get_local_address (soup_server_get_listener (priv->server));
        priv->port = soup_server_get_port (priv->server);
 
-       g_object_freeze_notify (G_OBJECT (self));
-       g_object_notify (G_OBJECT (self), "address");
-       g_object_notify (G_OBJECT (self), "port");
-       g_object_thaw_notify (G_OBJECT (self));
-
        /* Set up the resolver. It is expected that callers will grab the resolver (by calling 
gdata_mock_server_get_resolver())
         * immediately after this function returns, and add some expected hostnames by calling 
gdata_mock_resolver_add_A() one or
         * more times, before starting the next test. */
        priv->resolver = gdata_mock_resolver_new ();
        g_resolver_set_default (G_RESOLVER (priv->resolver));
 
+       g_object_freeze_notify (G_OBJECT (self));
+       g_object_notify (G_OBJECT (self), "address");
+       g_object_notify (G_OBJECT (self), "port");
+       g_object_notify (G_OBJECT (self), "resolver");
+       g_object_thaw_notify (G_OBJECT (self));
+
        /* Start the network thread. */
        priv->server_thread = g_thread_new ("mock-server-thread", server_thread_cb, self);
 }
@@ -1227,6 +1228,7 @@ gdata_mock_server_stop (GDataMockServer *self)
        g_object_freeze_notify (G_OBJECT (self));
        g_object_notify (G_OBJECT (self), "address");
        g_object_notify (G_OBJECT (self), "port");
+       g_object_notify (G_OBJECT (self), "resolver");
        g_object_thaw_notify (G_OBJECT (self));
 
        /* Reset the trace file. */
diff --git a/gdata/tests/oauth1-authorizer.c b/gdata/tests/oauth1-authorizer.c
index 897731e..a8a9b4f 100644
--- a/gdata/tests/oauth1-authorizer.c
+++ b/gdata/tests/oauth1-authorizer.c
@@ -1004,6 +1004,25 @@ test_oauth1_authorizer_request_authorization_async_cancellation (OAuth1Authorize
        gdata_mock_server_end_trace (mock_server);
 }
 
+static void
+mock_server_notify_resolver_cb (GObject *object, GParamSpec *pspec, gpointer user_data)
+{
+       GDataMockServer *server;
+       GDataMockResolver *resolver;
+
+       server = GDATA_MOCK_SERVER (object);
+
+       /* Set up the expected domain names here. This should technically be split up between
+        * the different unit test suites, but that's too much effort. */
+       resolver = gdata_mock_server_get_resolver (server);
+
+       if (resolver != NULL) {
+               const gchar *ip_address = soup_address_get_physical (gdata_mock_server_get_address (server));
+
+               gdata_mock_resolver_add_A (resolver, "www.google.com", ip_address);
+       }
+}
+
 int
 main (int argc, char *argv[])
 {
@@ -1012,6 +1031,7 @@ main (int argc, char *argv[])
        gdata_test_init (argc, argv);
 
        mock_server = gdata_test_get_mock_server ();
+       g_signal_connect (G_OBJECT (mock_server), "notify::resolver", (GCallback) 
mock_server_notify_resolver_cb, NULL);
        trace_directory = g_file_new_for_path (TEST_FILE_DIR "traces/oauth1-authorizer");
        gdata_mock_server_set_trace_directory (mock_server, trace_directory);
        g_object_unref (trace_directory);
diff --git a/gdata/tests/picasaweb.c b/gdata/tests/picasaweb.c
index 5c52471..a043d9f 100644
--- a/gdata/tests/picasaweb.c
+++ b/gdata/tests/picasaweb.c
@@ -2061,6 +2061,29 @@ test_query_etag (void)
 /* TODO: test private, public albums, test uploading */
 /* TODO: add queries to update albums, files on the server; test those */
 
+static void
+mock_server_notify_resolver_cb (GObject *object, GParamSpec *pspec, gpointer user_data)
+{
+       GDataMockServer *server;
+       GDataMockResolver *resolver;
+
+       server = GDATA_MOCK_SERVER (object);
+
+       /* Set up the expected domain names here. This should technically be split up between
+        * the different unit test suites, but that's too much effort. */
+       resolver = gdata_mock_server_get_resolver (server);
+
+       if (resolver != NULL) {
+               const gchar *ip_address = soup_address_get_physical (gdata_mock_server_get_address (server));
+
+               gdata_mock_resolver_add_A (resolver, "www.google.com", ip_address);
+               gdata_mock_resolver_add_A (resolver, "picasaweb.google.com", ip_address);
+               gdata_mock_resolver_add_A (resolver, "lh3.googleusercontent.com", ip_address);
+               gdata_mock_resolver_add_A (resolver, "lh5.googleusercontent.com", ip_address);
+               gdata_mock_resolver_add_A (resolver, "lh6.googleusercontent.com", ip_address);
+       }
+}
+
 int
 main (int argc, char *argv[])
 {
@@ -2072,6 +2095,7 @@ main (int argc, char *argv[])
        gdata_test_init (argc, argv);
 
        mock_server = gdata_test_get_mock_server ();
+       g_signal_connect (G_OBJECT (mock_server), "notify::resolver", (GCallback) 
mock_server_notify_resolver_cb, NULL);
        trace_directory = g_file_new_for_path (TEST_FILE_DIR "traces/picasaweb");
        gdata_mock_server_set_trace_directory (mock_server, trace_directory);
        g_object_unref (trace_directory);
diff --git a/gdata/tests/youtube.c b/gdata/tests/youtube.c
index 3b35930..4a98e20 100644
--- a/gdata/tests/youtube.c
+++ b/gdata/tests/youtube.c
@@ -2298,6 +2298,30 @@ teardown_batch (BatchData *data, gconstpointer service)
        g_object_unref (data->new_video2);
 }
 
+static void
+mock_server_notify_resolver_cb (GObject *object, GParamSpec *pspec, gpointer user_data)
+{
+       GDataMockServer *server;
+       GDataMockResolver *resolver;
+
+       server = GDATA_MOCK_SERVER (object);
+
+       /* Set up the expected domain names here. This should technically be split up between
+        * the different unit test suites, but that's too much effort. */
+       resolver = gdata_mock_server_get_resolver (server);
+
+       if (resolver != NULL) {
+               const gchar *ip_address = soup_address_get_physical (gdata_mock_server_get_address (server));
+
+               gdata_mock_resolver_add_A (resolver, "www.google.com", ip_address);
+               gdata_mock_resolver_add_A (resolver, "gdata.youtube.com", ip_address);
+               gdata_mock_resolver_add_A (resolver, "uploads.gdata.youtube.com", ip_address);
+               gdata_mock_resolver_add_A (resolver, "lh3.googleusercontent.com", ip_address);
+               gdata_mock_resolver_add_A (resolver, "lh5.googleusercontent.com", ip_address);
+               gdata_mock_resolver_add_A (resolver, "lh6.googleusercontent.com", ip_address);
+       }
+}
+
 int
 main (int argc, char *argv[])
 {
@@ -2309,6 +2333,7 @@ main (int argc, char *argv[])
        gdata_test_init (argc, argv);
 
        mock_server = gdata_test_get_mock_server ();
+       g_signal_connect (G_OBJECT (mock_server), "notify::resolver", (GCallback) 
mock_server_notify_resolver_cb, NULL);
        trace_directory = g_file_new_for_path (TEST_FILE_DIR "traces/youtube");
        gdata_mock_server_set_trace_directory (mock_server, trace_directory);
        g_object_unref (trace_directory);


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]