-// xestiacalendar_icaleventload.h - Xestia Calendar CalDAV Object Unit Tests
+// xestiacalendar_caldav.h - Xestia Calendar CalDAV Object Unit Tests
//
// (c) 2016 Xestia Software Development.
//
// (*nix version) Setup an initial connection (just plain
// text).
+ CalDAV CalDAVPlain;
+ CalDAVPlain.SetupConnectionData(&ConnPlain);
+
+ // Verify that the settings match with the CalDAVConnectionData
+ // passed.
+
+ CalDAVStatus CalDAVPlainStatus = CalDAVPlain.GetConnectionData();
+
+ ASSERT_EQ(CalDAVPlainStatus.Hostname, ConnPlain.Hostname);
+ ASSERT_EQ(CalDAVPlainStatus.Username, ConnPlain.Username);
+ ASSERT_EQ(CalDAVPlainStatus.Port, ConnPlain.Port);
+ ASSERT_EQ(CalDAVPlainStatus.Prefix, ConnPlain.Prefix);
+ ASSERT_EQ(CalDAVPlainStatus.UseSSL, ConnPlain.UseSSL);
+
// Verify that the connection was successful.
+ CalDAVServerResult ConnResult = CalDAVPlain.Connect();
+
+ ASSERT_EQ(CALDAVQUERYRESULT_OK, ConnResult.Result);
+ ASSERT_EQ(200, ConnResult.HTTPCode);
+ ASSERT_EQ(CURLE_OK, ConnResult.Code);
+
+ // Do another connection and this time the connection should
+ // fail due to being an invalid host name.
+
+ CalDAVConnectionData ConnPlainFail;
+ ConnPlainFail.Hostname = "server.invalid";
+ ConnPlainFail.Username = "fail";
+ ConnPlainFail.Password = "fail";
+ ConnPlainFail.Port = 80;
+ ConnPlainFail.UseSSL = false;
+
+ // Setup the CalDAV connection object.
+
+ CalDAV CalDAVPlainFail;
+ CalDAVPlainFail.SetupConnectionData(&ConnPlainFail);
+
+ // Setup the CalDAVStatus object.
+
+ CalDAVStatus CalDAVPlainFailStatus = CalDAVPlain.GetConnectionData();
+
+ // Connect and fail.
+
+ ConnResult = CalDAVPlainFail.Connect();
+
+ ASSERT_EQ(CALDAVQUERYRESULT_SERVERERROR, ConnResult.Result);
+ ASSERT_EQ(0, ConnResult.HTTPCode);
+ ASSERT_EQ(CURLE_COULDNT_RESOLVE_HOST, ConnResult.Code);
+
// (*nix version) Setup an initial connection (with a valid
// SSL certificate).