[librest/wip/baedert/gtask: 20/25] tests/oauth: Port to GTest api



commit 8518b246b0ff970525c6381f299a267dd854b2dc
Author: Timm Bäder <mail baedert org>
Date:   Sat Apr 23 16:26:04 2016 +0200

    tests/oauth: Port to GTest api

 tests/oauth.c |   73 ++++++++++++++++++++++++++++++++++++++++++++------------
 1 files changed, 57 insertions(+), 16 deletions(-)
---
diff --git a/tests/oauth.c b/tests/oauth.c
index 4d368ad..8c11f90 100644
--- a/tests/oauth.c
+++ b/tests/oauth.c
@@ -24,66 +24,107 @@
 #include <rest/oauth-proxy-private.h>
 #include <stdio.h>
 
-int
-main (int argc, char **argv)
+static void
+test_auth ()
 {
   RestProxy *proxy;
   OAuthProxy *oproxy;
-  OAuthProxyPrivate *priv;
+  GError *error = NULL;
+
+  /* Create the proxy */
+  proxy = oauth_proxy_new ("key", "secret",
+                           "http://oauthbin.com/v1/";,
+                           FALSE);
+  oproxy = OAUTH_PROXY (proxy);
+  g_assert (oproxy);
+
+  /* First stage authentication, this gets a request token */
+  oauth_proxy_request_token (oproxy, "request-token", NULL, &error);
+  if (error != NULL && g_error_matches (error, REST_PROXY_ERROR, REST_PROXY_ERROR_CONNECTION))
+    return;
+
+  g_assert_no_error (error);
+  g_assert_cmpstr (oauth_proxy_get_token (oproxy), ==, "requestkey");
+  g_assert_cmpstr (oauth_proxy_get_token_secret (oproxy), ==, "requestsecret");
+
+  /* Second stage authentication, this gets an access token */
+  oauth_proxy_access_token (OAUTH_PROXY (proxy), "access-token", NULL, &error);
+  g_assert_no_error (error);
+
+  g_assert_cmpstr (oauth_proxy_get_token (oproxy), ==, "accesskey");
+  g_assert_cmpstr (oauth_proxy_get_token_secret (oproxy), ==, "accesssecret");
+
+  g_object_unref (proxy);
+}
+
+static void
+test_calls ()
+{
+  RestProxy *proxy;
   RestProxyCall *call;
+  OAuthProxy *oproxy;
   GError *error = NULL;
 
+
   /* Create the proxy */
   proxy = oauth_proxy_new ("key", "secret",
                            "http://oauthbin.com/v1/";,
                            FALSE);
   oproxy = OAUTH_PROXY (proxy);
   g_assert (oproxy);
-  priv = PROXY_GET_PRIVATE (oproxy);
 
   /* First stage authentication, this gets a request token */
   oauth_proxy_request_token (oproxy, "request-token", NULL, &error);
   if (error != NULL && g_error_matches (error, REST_PROXY_ERROR, REST_PROXY_ERROR_CONNECTION))
-    return 0;
+    return;
 
   g_assert_no_error (error);
-  g_assert_cmpstr (priv->token, ==, "requestkey");
-  g_assert_cmpstr (priv->token_secret, ==, "requestsecret");
+  g_assert_cmpstr (oauth_proxy_get_token (oproxy), ==, "requestkey");
+  g_assert_cmpstr (oauth_proxy_get_token_secret (oproxy), ==, "requestsecret");
 
   /* Second stage authentication, this gets an access token */
   oauth_proxy_access_token (OAUTH_PROXY (proxy), "access-token", NULL, &error);
   g_assert_no_error (error);
 
-  g_assert_cmpstr (priv->token, ==, "accesskey");
-  g_assert_cmpstr (priv->token_secret, ==, "accesssecret");
+  g_assert_cmpstr (oauth_proxy_get_token (oproxy), ==, "accesskey");
+  g_assert_cmpstr (oauth_proxy_get_token_secret (oproxy), ==, "accesssecret");
 
   /* Make some test calls */
 
   call = rest_proxy_new_call (proxy);
   rest_proxy_call_set_function (call, "echo");
   rest_proxy_call_add_param (call, "foo", "bar");
-  if (!rest_proxy_call_sync (call, &error))
-    g_error ("Cannot make call: %s", error->message);
+  rest_proxy_call_sync (call, &error);
+  g_assert_no_error (error);
   g_assert_cmpstr (rest_proxy_call_get_payload (call), ==, "foo=bar");
   g_object_unref (call);
 
   call = rest_proxy_new_call (proxy);
   rest_proxy_call_set_function (call, "echo");
   rest_proxy_call_add_param (call, "numbers", "1234567890");
-  if (!rest_proxy_call_sync (call, &error))
-    g_error ("Cannot make call: %s", error->message);
+  rest_proxy_call_sync (call, &error);
+  g_assert_no_error (error);
   g_assert_cmpstr (rest_proxy_call_get_payload (call), ==, "numbers=1234567890");
   g_object_unref (call);
 
   call = rest_proxy_new_call (proxy);
   rest_proxy_call_set_function (call, "echo");
   rest_proxy_call_add_param (call, "escape", "!+£$%^&*()");
-  if (!rest_proxy_call_sync (call, &error))
-    g_error ("Cannot make call: %s", error->message);
+  rest_proxy_call_sync (call, &error);
+  g_assert_no_error (error);
   g_assert_cmpstr (rest_proxy_call_get_payload (call), ==, "escape=%21%2B%C2%A3%24%25%5E%26%2A%28%29");
   g_object_unref (call);
 
+
   g_object_unref (proxy);
+}
+
+int
+main (int argc, char **argv)
+{
+  g_test_init (&argc, &argv, NULL);
+  g_test_add_func ("/oauth/first-stage-auth", test_auth);
+  g_test_add_func ("/oauth/test-calls", test_calls);
 
-  return 0;
+  return g_test_run ();
 }


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