QOrganizerJournal OrganizerItemTransform::convertCJournalToQJournal(CJournal *cjournal) { QOrganizerJournal retn; // Start time QDateTime tempdt = QDateTime::fromTime_t(cjournal->getDateStart()); if (!tempdt.isNull()) retn.setDateTime( tempdt ); return retn; }
void tst_QOrganizerItemDetails::type() { QOrganizerItem oi; QOrganizerItemType t1, t2; QOrganizerEvent e; QOrganizerNote n; QOrganizerTodo t; QOrganizerJournal j; QOrganizerEventOccurrence eo; QOrganizerTodoOccurrence to; QVERIFY(e.type() == QOrganizerItemType::TypeEvent); QVERIFY(n.type() == QOrganizerItemType::TypeNote); QVERIFY(t.type() == QOrganizerItemType::TypeTodo); QVERIFY(j.type() == QOrganizerItemType::TypeJournal); QVERIFY(eo.type() == QOrganizerItemType::TypeEventOccurrence); QVERIFY(to.type() == QOrganizerItemType::TypeTodoOccurrence); // test property set t1.setType(QOrganizerItemType::TypeEvent); QCOMPARE(t1.type(), QOrganizerItemType::TypeEvent); QCOMPARE(static_cast<QOrganizerItemType::ItemType>(t1.value(QOrganizerItemType::FieldType).toInt()), QOrganizerItemType::TypeEvent); // test property add QVERIFY(oi.saveDetail(&t1)); QCOMPARE(oi.details(QOrganizerItemDetail::TypeItemType).count(), 1); QCOMPARE(QOrganizerItemType(oi.details(QOrganizerItemDetail::TypeItemType).value(0)).type(), t1.type()); // test property update t1.setType(QOrganizerItemType::TypeTodo); QVERIFY(oi.saveDetail(&t1)); QCOMPARE(static_cast<QOrganizerItemType::ItemType>(oi.details(QOrganizerItemDetail::TypeItemType).value(0).value(QOrganizerItemType::FieldType).toInt()), QOrganizerItemType::TypeTodo); // test property remove QVERIFY(!oi.removeDetail(&t1)); // cannot remove type QCOMPARE(oi.details(QOrganizerItemDetail::TypeItemType).count(), 1); t2.setType(QOrganizerItemType::TypeNote); QVERIFY(oi.saveDetail(&t2)); // overwrites t1 QCOMPARE(oi.details(QOrganizerItemDetail::TypeItemType).count(), 1); QVERIFY(!oi.removeDetail(&t2)); // cannot remove type - "succeeds" but count remains unchanged QCOMPARE(oi.details(QOrganizerItemDetail::TypeItemType).count(), 1); QVERIFY(!oi.removeDetail(&t2)); QCOMPARE(oi.details(QOrganizerItemDetail::TypeItemType).count(), 1); }
void tst_QOrganizerItemDetails::journalTime() { QOrganizerJournalTime r; QOrganizerJournal j; QVERIFY(r.isEmpty()); r.setEntryDateTime(QDateTime(QDate(2010, 10, 13))); QVERIFY(r.entryDateTime() == QDateTime(QDate(2010, 10, 13))); // add QOrganizerJournalTime r2; r2.setEntryDateTime(QDateTime(QDate(2010, 10, 23))); QVERIFY(j.saveDetail(&r)); QVERIFY(j.details<QOrganizerJournalTime>().size() == 1); QVERIFY(j.detail<QOrganizerJournalTime>() == r); QVERIFY(j.saveDetail(&r2)); // note that we don't enforce uniqueness in organizeritem; that's done by the manager! QVERIFY(j.details<QOrganizerJournalTime>().size() == 2); QVERIFY(j.removeDetail(&r2)); QVERIFY(j.details<QOrganizerJournalTime>().size() == 1); QVERIFY(j.detail<QOrganizerJournalTime>() == r); // update r.setEntryDateTime(QDateTime(QDate(2010, 11, 05))); QVERIFY(j.detail<QOrganizerJournalTime>() != r); QVERIFY(j.saveDetail(&r)); QVERIFY(j.detail<QOrganizerJournalTime>() == r); QVERIFY(j.details<QOrganizerJournalTime>().size() == 1); // remove QVERIFY(j.removeDetail(&r)); QVERIFY(j.details<QOrganizerJournalTime>().size() == 0); }
void tst_QVersitOrganizerExporter::testExport_data() { QTest::addColumn<QList<QOrganizerItem> >("items"); QTest::addColumn<QVersitDocument>("expectedDocument"); { QVersitDocument document(QVersitDocument::ICalendar20Type); document.setComponentType(QLatin1String("VCALENDAR")); QVersitDocument nested(QVersitDocument::ICalendar20Type); nested.setComponentType(QLatin1String("VEVENT")); QVersitProperty property; property.setName(QLatin1String("SUMMARY")); property.setValue(QLatin1String("Bastille Day Party")); nested.addProperty(property); property.setName(QLatin1String("DTSTART")); property.setValue(QLatin1String("19970714T170000Z")); nested.addProperty(property); property.setName(QLatin1String("DTEND")); property.setValue(QLatin1String("19970715T035959Z")); nested.addProperty(property); document.addSubDocument(nested); nested.clear(); nested.setType(QVersitDocument::ICalendar20Type); nested.setComponentType(QLatin1String("VTODO")); property.setName(QLatin1String("SUMMARY")); property.setValue(QLatin1String("Take out the garbage")); nested.addProperty(property); property.setName(QLatin1String("DTSTART")); property.setValue(QLatin1String("20100609T080000")); nested.addProperty(property); property.setName(QLatin1String("DUE")); property.setValue(QLatin1String("20100610T080000")); nested.addProperty(property); document.addSubDocument(nested); nested.clear(); nested.setType(QVersitDocument::ICalendar20Type); nested.setComponentType(QLatin1String("VJOURNAL")); property.setName(QLatin1String("SUMMARY")); property.setValue(QLatin1String("Trip to Thailand")); nested.addProperty(property); property.setName(QLatin1String("DTSTART")); property.setValue(QLatin1String("20100615T112300")); nested.addProperty(property); document.addSubDocument(nested); QOrganizerEvent event; event.setDisplayLabel(QLatin1String("Bastille Day Party")); event.setStartDateTime(QDateTime(QDate(1997, 7, 14), QTime(17, 0, 0), Qt::UTC)); event.setEndDateTime(QDateTime(QDate(1997, 7, 15), QTime(3, 59, 59), Qt::UTC)); QOrganizerTodo todo; todo.setDisplayLabel(QLatin1String("Take out the garbage")); todo.setStartDateTime(QDateTime(QDate(2010, 6, 9), QTime(8, 0, 0))); todo.setDueDateTime(QDateTime(QDate(2010, 6, 10), QTime(8, 0, 0))); QOrganizerJournal journal; journal.setDisplayLabel(QLatin1String("Trip to Thailand")); journal.setDateTime(QDateTime(QDate(2010, 6, 15), QTime(11, 23, 0))); QList<QOrganizerItem> items; items << static_cast<QOrganizerItem>(event); items << static_cast<QOrganizerItem>(todo); items << static_cast<QOrganizerItem>(journal); QTest::newRow("sample event, todo and journal") << items << document; } { QVersitDocument document(QVersitDocument::ICalendar20Type); document.setComponentType(QLatin1String("VCALENDAR")); QVersitDocument nested(QVersitDocument::ICalendar20Type); nested.setComponentType(QLatin1String("VEVENT")); QVersitProperty property; property.setName(QLatin1String("UID")); property.setValue(QLatin1String("1234")); nested.addProperty(property); property.setName(QLatin1String("RECURRENCE-ID")); property.setValue(QLatin1String("20100608")); nested.addProperty(property); document.addSubDocument(nested); // An event occurrence with OriginalDate and Guid set QOrganizerEventOccurrence event; event.setGuid(QLatin1String("1234")); event.setOriginalDate(QDate(2010, 6, 8)); QList<QOrganizerItem> items; items << static_cast<QOrganizerItem>(event); QTest::newRow("event occurrence exception") << items << document; } }