Changeset View
Changeset View
Standalone View
Standalone View
tests/testhelpers.h
Show All 38 Lines | |||||
Q_DECLARE_METATYPE(Kolab::Contact); | Q_DECLARE_METATYPE(Kolab::Contact); | ||||
Q_DECLARE_METATYPE(Kolab::Period); | Q_DECLARE_METATYPE(Kolab::Period); | ||||
Q_DECLARE_METATYPE(std::vector<Kolab::FreebusyPeriod>); | Q_DECLARE_METATYPE(std::vector<Kolab::FreebusyPeriod>); | ||||
Q_DECLARE_METATYPE(KCalCore::Event); | Q_DECLARE_METATYPE(KCalCore::Event); | ||||
Q_DECLARE_METATYPE(KCalCore::Todo); | Q_DECLARE_METATYPE(KCalCore::Todo); | ||||
Q_DECLARE_METATYPE(KCalCore::Journal); | Q_DECLARE_METATYPE(KCalCore::Journal); | ||||
namespace { | |||||
// Appends a C string to a QByteArray and delete[]s the string argument. | |||||
// Returns a reference to the QByteArray. | |||||
QByteArray &append(QByteArray &ba, const char *string) | |||||
{ | |||||
ba += QByteArray(string); | |||||
delete[] string; | |||||
return ba; | |||||
} | |||||
} | |||||
namespace QTest { | namespace QTest { | ||||
template<> | template<> | ||||
char *toString(const Kolab::cDateTime &dt) | char *toString(const Kolab::cDateTime &dt) | ||||
{ | { | ||||
QByteArray ba = "Kolab::cDateTime("; | QByteArray ba = "Kolab::cDateTime("; | ||||
ba += QByteArray::number(dt.year()) + ", " + QByteArray::number(dt.month())+ ", " + QByteArray::number(dt.day()) + ", "; | ba += QByteArray::number(dt.year()) + ", " + QByteArray::number(dt.month())+ ", " + QByteArray::number(dt.day()) + ", "; | ||||
ba += QByteArray::number(dt.hour()) + ", " + QByteArray::number(dt.minute()) + ", " + QByteArray::number(dt.second())+ ", "; | ba += QByteArray::number(dt.hour()) + ", " + QByteArray::number(dt.minute()) + ", " + QByteArray::number(dt.second())+ ", "; | ||||
▲ Show 20 Lines • Show All 63 Lines • ▼ Show 20 Lines | char *toString(const KCalCore::DateList &l) | ||||
return qstrdup(ba.data()); | return qstrdup(ba.data()); | ||||
} | } | ||||
template<> | template<> | ||||
char *toString(const KCalCore::DateTimeList &l) | char *toString(const KCalCore::DateTimeList &l) | ||||
{ | { | ||||
QByteArray ba = "KCalCore::DateTimeList("; | QByteArray ba = "KCalCore::DateTimeList("; | ||||
foreach(const QDateTime &i, l) { | foreach(const QDateTime &i, l) { | ||||
ba += toString(i); | append(ba, toString(i)); | ||||
} | } | ||||
ba += ")"; | ba += ")"; | ||||
return qstrdup(ba.data()); | return qstrdup(ba.data()); | ||||
} | } | ||||
template<> | template<> | ||||
char *toString(const KCalCore::Recurrence &at) | char *toString(const KCalCore::Recurrence &at) | ||||
{ | { | ||||
// at.dump(); | // at.dump(); | ||||
KCalCore::RecurrenceRule *r = at.defaultRRule(); | KCalCore::RecurrenceRule *r = at.defaultRRule(); | ||||
QByteArray ba; | QByteArray ba; | ||||
if (!r) { | if (!r) { | ||||
ba += "Recurrence( )"; | ba += "Recurrence( )"; | ||||
} else { | } else { | ||||
Q_ASSERT(r); | Q_ASSERT(r); | ||||
Q_ASSERT(at.rRules().size() == 1); | Q_ASSERT(at.rRules().size() == 1); | ||||
ba += "Recurrence("; | ba += "Recurrence("; | ||||
ba += QByteArray::number(r->recurrenceType()) + "\n"; | ba += QByteArray::number(r->recurrenceType()) + "\n"; | ||||
ba += QByteArray::number(r->frequency()) + "\n"; | ba += QByteArray::number(r->frequency()) + "\n"; | ||||
ba += QByteArray::number(r->duration()) + "\n"; | ba += QByteArray::number(r->duration()) + "\n"; | ||||
ba += QByteArray(toString(r->startDt())) + "\n"; | append(ba, toString(r->startDt())) += "\n"; | ||||
ba += QByteArray(toString(r->endDt())) + "\n"; | append(ba, toString(r->endDt())) += "\n"; | ||||
ba += QByteArray(toString(r->bySeconds())) + "\n"; | append(ba, toString(r->bySeconds())) += "\n"; | ||||
ba += QByteArray(toString(r->byMinutes())) + "\n"; | append(ba, toString(r->byMinutes())) += "\n"; | ||||
ba += QByteArray(toString(r->byHours())) + "\n"; | append(ba, toString(r->byHours())) += "\n"; | ||||
ba += QByteArray(toString(r->byDays())) + "\n"; | append(ba, toString(r->byDays())) += "\n"; | ||||
ba += QByteArray(toString(r->byMonthDays())) + "\n"; | append(ba, toString(r->byMonthDays())) += "\n"; | ||||
ba += QByteArray(toString(r->byYearDays())) + "\n"; | append(ba, toString(r->byYearDays())) += "\n"; | ||||
ba += QByteArray(toString(r->byMonths())) + "\n"; | append(ba, toString(r->byMonths())) += "\n"; | ||||
ba += ")\n"; | ba += ")\n"; | ||||
ba += QByteArray(toString(at.exDates())) + "\n"; | append(ba, toString(at.exDates())) += "\n"; | ||||
ba += QByteArray(toString(at.exDateTimes())) + "\n"; | append(ba, toString(at.exDateTimes())) += "\n"; | ||||
ba += QByteArray(toString(at.rDates())) + "\n"; | append(ba, toString(at.rDates())) += "\n"; | ||||
ba += QByteArray(toString(at.rDateTimes())) + "\n"; | append(ba, toString(at.rDateTimes())) += "\n"; | ||||
} | } | ||||
return qstrdup(ba.data()); | return qstrdup(ba.data()); | ||||
} | } | ||||
template<> | template<> | ||||
char *toString(const Kolab::RecurrenceRule &at) | char *toString(const Kolab::RecurrenceRule &at) | ||||
{ | { | ||||
QByteArray ba; | QByteArray ba; | ||||
ba += "KolabRecurrenceRule("; | ba += "KolabRecurrenceRule("; | ||||
ba += QByteArray::number(at.weekStart()) + "\n"; | ba += QByteArray::number(at.weekStart()) + "\n"; | ||||
ba += QByteArray::number(at.frequency()) + "\n"; | ba += QByteArray::number(at.frequency()) + "\n"; | ||||
ba += QByteArray::number(at.interval()) + "\n"; | ba += QByteArray::number(at.interval()) + "\n"; | ||||
ba += QByteArray::number(at.count()) + "\n"; | ba += QByteArray::number(at.count()) + "\n"; | ||||
ba += QByteArray(toString(at.end())) + "\n"; | append(ba, toString(at.end())) += "\n"; | ||||
ba += QByteArray(toString(at.bysecond())) + "\n"; | append(ba, toString(at.bysecond())) += "\n"; | ||||
ba += QByteArray(toString(at.byminute())) + "\n"; | append(ba, toString(at.byminute())) += "\n"; | ||||
ba += QByteArray(toString(at.byhour())) + "\n"; | append(ba, toString(at.byhour())) += "\n"; | ||||
ba += QByteArray(toString(at.byday())) + "\n"; | append(ba, toString(at.byday())) += "\n"; | ||||
ba += QByteArray(toString(at.bymonthday())) + "\n"; | append(ba, toString(at.bymonthday())) += "\n"; | ||||
ba += QByteArray(toString(at.byyearday())) + "\n"; | append(ba, toString(at.byyearday())) += "\n"; | ||||
ba += QByteArray(toString(at.byweekno())) + "\n"; | append(ba, toString(at.byweekno())) += "\n"; | ||||
ba += QByteArray(toString(at.bymonth())) + "\n"; | append(ba, toString(at.bymonth())) += "\n"; | ||||
ba += ")"; | ba += ")"; | ||||
return qstrdup(ba.data()); | return qstrdup(ba.data()); | ||||
} | } | ||||
template<> | template<> | ||||
char *toString(const KCalCore::Duration &d) | char *toString(const KCalCore::Duration &d) | ||||
{ | { | ||||
QByteArray ba; | QByteArray ba; | ||||
Show All 15 Lines | char *toString(const Kolab::ContactReference &a) | ||||
return qstrdup(ba.data()); | return qstrdup(ba.data()); | ||||
} | } | ||||
template<> | template<> | ||||
char *toString(const std::vector<Kolab::ContactReference> &v) | char *toString(const std::vector<Kolab::ContactReference> &v) | ||||
{ | { | ||||
QByteArray ba = "vector<Kolab::ContactReference>("; | QByteArray ba = "vector<Kolab::ContactReference>("; | ||||
for (std::size_t i = 0; i < v.size(); i++) { | for (std::size_t i = 0; i < v.size(); i++) { | ||||
ba += QByteArray(toString(v.at(i)))+ "\n"; | append(ba, toString(v.at(i))) += "\n"; | ||||
} | } | ||||
ba += ")"; | ba += ")"; | ||||
return qstrdup(ba.data()); | return qstrdup(ba.data()); | ||||
} | } | ||||
template<> | template<> | ||||
char *toString(const Kolab::Attendee &a) | char *toString(const Kolab::Attendee &a) | ||||
{ | { | ||||
QByteArray ba = "Kolab::Attendee("; | QByteArray ba = "Kolab::Attendee("; | ||||
ba += QByteArray::fromStdString(a.contact().email()) + "\n"; | ba += QByteArray::fromStdString(a.contact().email()) + "\n"; | ||||
ba += QByteArray::fromStdString(a.contact().name()) + "\n"; | ba += QByteArray::fromStdString(a.contact().name()) + "\n"; | ||||
ba += QByteArray::number(a.partStat()) + "\n"; | ba += QByteArray::number(a.partStat()) + "\n"; | ||||
ba += QByteArray::number(a.role()) + "\n"; | ba += QByteArray::number(a.role()) + "\n"; | ||||
ba += QByteArray::number(a.rsvp()) + "\n"; | ba += QByteArray::number(a.rsvp()) + "\n"; | ||||
ba += QByteArray::fromStdString(a.contact().uid())+"\n"; | ba += QByteArray::fromStdString(a.contact().uid())+"\n"; | ||||
ba += QByteArray(toString(a.delegatedTo()))+"\n"; | append(ba, toString(a.delegatedTo())) += "\n"; | ||||
ba += QByteArray(toString(a.delegatedFrom()))+ "\n"; | append(ba, toString(a.delegatedFrom())) += "\n"; | ||||
ba += QByteArray::number(a.cutype())+ "\n"; | ba += QByteArray::number(a.cutype())+ "\n"; | ||||
ba += ")"; | ba += ")"; | ||||
return qstrdup(ba.data()); | return qstrdup(ba.data()); | ||||
} | } | ||||
template<> | template<> | ||||
char *toString(const std::vector<Kolab::Attendee> &v) | char *toString(const std::vector<Kolab::Attendee> &v) | ||||
{ | { | ||||
QByteArray ba = "vector<Kolab::Attendee>("; | QByteArray ba = "vector<Kolab::Attendee>("; | ||||
for (std::size_t i = 0; i < v.size(); i++) { | for (std::size_t i = 0; i < v.size(); i++) { | ||||
ba += QByteArray(toString(v.at(i)))+ "\n"; | append(ba, toString(v.at(i))) += "\n"; | ||||
ba += QByteArray("#######################")+ "\n"; | ba += QByteArray("#######################")+ "\n"; | ||||
} | } | ||||
ba += ")"; | ba += ")"; | ||||
return qstrdup(ba.data()); | return qstrdup(ba.data()); | ||||
} | } | ||||
template<> | template<> | ||||
char *toString(const Kolab::CustomProperty &a) | char *toString(const Kolab::CustomProperty &a) | ||||
{ | { | ||||
QByteArray ba = "Kolab::CustomProperty("; | QByteArray ba = "Kolab::CustomProperty("; | ||||
ba += QByteArray::fromStdString(a.identifier) + ", "; | ba += QByteArray::fromStdString(a.identifier) + ", "; | ||||
ba += QByteArray::fromStdString(a.value); | ba += QByteArray::fromStdString(a.value); | ||||
ba += ")"; | ba += ")"; | ||||
return qstrdup(ba.data()); | return qstrdup(ba.data()); | ||||
} | } | ||||
template<> | template<> | ||||
char *toString(const std::vector<Kolab::CustomProperty> &v) | char *toString(const std::vector<Kolab::CustomProperty> &v) | ||||
{ | { | ||||
QByteArray ba = "vector<Kolab::CustomProperty>("; | QByteArray ba = "vector<Kolab::CustomProperty>("; | ||||
for (std::size_t i = 0; i < v.size(); i++) { | for (std::size_t i = 0; i < v.size(); i++) { | ||||
ba += QByteArray(toString(v.at(i)))+ "\n"; | append(ba, toString(v.at(i))) += "\n"; | ||||
} | } | ||||
ba += ")"; | ba += ")"; | ||||
return qstrdup(ba.data()); | return qstrdup(ba.data()); | ||||
} | } | ||||
template<> | template<> | ||||
char *toString(const Kolab::Period &p) | char *toString(const Kolab::Period &p) | ||||
{ | { | ||||
QByteArray ba = "Kolab::Period("; | QByteArray ba = "Kolab::Period("; | ||||
ba += QByteArray(toString(p.start))+ "\n"; | append(ba, toString(p.start)) += "\n"; | ||||
ba += QByteArray(toString(p.end))+ "\n"; | append(ba, toString(p.end)) += "\n"; | ||||
ba += ")"; | ba += ")"; | ||||
return qstrdup(ba.data()); | return qstrdup(ba.data()); | ||||
} | } | ||||
template<> | template<> | ||||
char *toString(const std::vector<Kolab::Period> &v) | char *toString(const std::vector<Kolab::Period> &v) | ||||
{ | { | ||||
QByteArray ba = "vector<Kolab::Period>("; | QByteArray ba = "vector<Kolab::Period>("; | ||||
for (std::size_t i = 0; i < v.size(); i++) { | for (std::size_t i = 0; i < v.size(); i++) { | ||||
ba += QByteArray(toString(v.at(i)))+ "\n"; | append(ba, toString(v.at(i))) += "\n"; | ||||
} | } | ||||
ba += ")"; | ba += ")"; | ||||
return qstrdup(ba.data()); | return qstrdup(ba.data()); | ||||
} | } | ||||
template<> | template<> | ||||
char *toString(const Kolab::FreebusyPeriod &p) | char *toString(const Kolab::FreebusyPeriod &p) | ||||
{ | { | ||||
QByteArray ba = "Kolab::FreebusyPeriod("; | QByteArray ba = "Kolab::FreebusyPeriod("; | ||||
ba += QByteArray::number(p.type())+ "\n"; | ba += QByteArray::number(p.type())+ "\n"; | ||||
ba += QByteArray::fromStdString(p.eventUid())+ "\n"; | ba += QByteArray::fromStdString(p.eventUid())+ "\n"; | ||||
ba += QByteArray::fromStdString(p.eventLocation())+ "\n"; | ba += QByteArray::fromStdString(p.eventLocation())+ "\n"; | ||||
ba += QByteArray::fromStdString(p.eventSummary())+ "\n"; | ba += QByteArray::fromStdString(p.eventSummary())+ "\n"; | ||||
ba += QByteArray(toString(p.periods()))+ "\n"; | append(ba, toString(p.periods())) += "\n"; | ||||
ba += ")"; | ba += ")"; | ||||
return qstrdup(ba.data()); | return qstrdup(ba.data()); | ||||
} | } | ||||
template<> | template<> | ||||
char *toString(const Kolab::Duration &p) | char *toString(const Kolab::Duration &p) | ||||
{ | { | ||||
QByteArray ba = "Kolab::Duration"; | QByteArray ba = "Kolab::Duration"; | ||||
Show All 14 Lines |