X-Git-Url: http://Server1/repobrowser/?a=blobdiff_plain;f=source%2Ftests%2Fxestiacalendar_caldav.h;h=e8932b8ae1347ff3ce07a73d8f8d6a8985a31846;hb=ab879c1534ebf031eb3f632bb51782315c7d93f0;hp=1bb636650801b86331d2805a95de2a40f8c173fd;hpb=497e770ff0c01c48bb7212916de151f139f024e4;p=xestiacalendar%2F.git diff --git a/source/tests/xestiacalendar_caldav.h b/source/tests/xestiacalendar_caldav.h index 1bb6366..e8932b8 100644 --- a/source/tests/xestiacalendar_caldav.h +++ b/source/tests/xestiacalendar_caldav.h @@ -1,4 +1,4 @@ -// xestiacalendar_icaleventload.h - Xestia Calendar CalDAV Object Unit Tests +// xestiacalendar_caldav.h - Xestia Calendar CalDAV Object Unit Tests // // (c) 2016 Xestia Software Development. // @@ -17,6 +17,7 @@ // with Xestia Calendar. If not, see #include "../objects/CalDAV/CalDAV.h" +#include "xestiacalendar_testcommon.h" #include #include @@ -24,15 +25,44 @@ using namespace std; TEST(CalDAV, BasicTests){ + CalDAVConnectionData ConnPlain; + CalDAVConnectionData ConnNormal; + CalDAVConnectionData ConnFail; + CalDAVConnectionData ConnTimeout; + ProcessConnectionDataFileResult DataFileResult; + bool ValidDataPlain = false; bool ValidDataNormal = false; bool ValidDataFail = false; bool ValidDataTimeout = false; // Attempt to read the caldavtest-plain.auth file. + + DataFileResult = ProcessConnectionDataFile("caldavtest-plain.auth", &ConnPlain); + if (DataFileResult == PROCESSCONNECTIONDATAFILE_OK){ + ValidDataPlain = true; + } + + // Attempt to read the caldavtest.auth file. + + DataFileResult = ProcessConnectionDataFile("caldavtest.auth", &ConnNormal); + if (DataFileResult == PROCESSCONNECTIONDATAFILE_OK){ + ValidDataNormal = true; + } + // Attempt to read the caldavtest-fail.auth file. + + DataFileResult = ProcessConnectionDataFile("caldavtest-fail.auth", &ConnFail); + if (DataFileResult == PROCESSCONNECTIONDATAFILE_OK){ + ValidDataFail = true; + } + // Attempt to read the caldavtest-timeout.auth file. - // Attempt to read the caldavtest.auth file. + + DataFileResult = ProcessConnectionDataFile("caldavtest-fail.auth", &ConnTimeout); + if (DataFileResult == PROCESSCONNECTIONDATAFILE_OK){ + ValidDataTimeout = true; + } if (ValidDataPlain == false){ @@ -102,8 +132,55 @@ TEST(CalDAV, BasicTests){ // (*nix version) Setup an initial connection (just plain // text). + CalDAV CalDAVPlain; + CalDAVPlain.SetupConnectionData(&ConnPlain); + + CalDAVStatus CalDAVPlainStatus = CalDAVPlain.GetConnectionData(); + + // Verify that the settings match with the CalDAVConnectionData + // passed. + + 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).