From: Frederik Gladhorn Date: Fri, 21 Sep 2007 23:31:54 +0000 (+0000) Subject: Initial lesson unit test. X-Git-Tag: v3.94.0~22 X-Git-Url: https://git.rmz.fi/?a=commitdiff_plain;h=ba489f7197ee8bd74e81f6e4b5d84ac6fa203fe7;p=libqmvoc.git Initial lesson unit test. svn path=/trunk/KDE/kdeedu/libkdeedu/; revision=715372 --- diff --git a/keduvocdocument/keduvocdocument.cpp b/keduvocdocument/keduvocdocument.cpp index bae837c..c6a57f6 100644 --- a/keduvocdocument/keduvocdocument.cpp +++ b/keduvocdocument/keduvocdocument.cpp @@ -340,7 +340,7 @@ int KEduVocDocument::open( const KUrl& url ) } if (lesson(defaultLessonNumber).entries().size() == 0) { - deleteLesson(defaultLessonNumber, DeleteEmptyLesson); + removeLesson(defaultLessonNumber, DeleteEmptyLesson); } if ( !read ) { @@ -1023,7 +1023,7 @@ int KEduVocDocument::lessonCount() const return d->m_lessons.count(); } -bool KEduVocDocument::deleteLesson( int lessonIndex, int deleteMode ) +bool KEduVocDocument::removeLesson( int lessonIndex, int deleteMode ) { if (deleteMode == DeleteEmptyLesson) { if (d->m_lessons[lessonIndex].entryCount() > 0) { diff --git a/keduvocdocument/keduvocdocument.h b/keduvocdocument/keduvocdocument.h index a47dca8..bda1058 100644 --- a/keduvocdocument/keduvocdocument.h +++ b/keduvocdocument/keduvocdocument.h @@ -451,7 +451,7 @@ public: * @param deleteMode either KEduVocDocument::DeleteEmptyLesson (delete only if empty) or KEduVocDocument::DeleteEntriesAndLesson (delete including vocabulary in that lesson) * @returns if the deletion was successful. If there are vocabularies in the lesson, but DeleteEmptyLesson, this will return false and not delete the lesson. */ - bool deleteLesson( int lessonIndex, int deleteMode ); + bool removeLesson( int lessonIndex, int deleteMode ); /** DEPRECATED * All lesson descriptions as stringlist. @@ -517,7 +517,7 @@ private: class KEduVocDocumentPrivate; KEduVocDocumentPrivate* const d; - Q_DISABLE_COPY( KEduVocDocument ) + Q_DISABLE_COPY( KEduVocDocument ); }; diff --git a/keduvocdocument/tests/keduvocdocumentvalidatortest.cpp b/keduvocdocument/tests/keduvocdocumentvalidatortest.cpp index ac4c5c4..dbe50cb 100644 --- a/keduvocdocument/tests/keduvocdocumentvalidatortest.cpp +++ b/keduvocdocument/tests/keduvocdocumentvalidatortest.cpp @@ -18,6 +18,11 @@ */ #include "../keduvocdocument.h" +#include "../keduvoclesson.h" +#include "../keduvocexpression.h" +#include "../keduvoctranslation.h" +#include "../keduvocconjugation.h" +#include "../keduvocdeclination.h" #include @@ -33,6 +38,7 @@ class KEduVocDocumentValidatorTest private slots: void testDocumentAboutInfo(); + void testLessons(); }; void KEduVocDocumentValidatorTest::testDocumentAboutInfo() @@ -70,6 +76,39 @@ void KEduVocDocumentValidatorTest::testDocumentAboutInfo() QCOMPARE( docRead.title(), title ); } +void KEduVocDocumentValidatorTest::testLessons() +{ + QString lesson1 = QString::fromLatin1( "Lesson 1" ); + QString lesson2 = QString::fromLatin1( "Lesson 2" ); + QString lesson3 = QString::fromLatin1( "Lesson 3" ); + + KEduVocDocument doc; + int indexLesson1 = doc.appendLesson(lesson1, true); + QCOMPARE(indexLesson1, 0); + QCOMPARE(doc.lessonCount(), 1); + QCOMPARE(doc.lesson(indexLesson1).name(), lesson1); + QVERIFY(doc.lesson(indexLesson1).inQuery()); + + int indexLesson2 = doc.appendLesson(lesson2, false); + QCOMPARE(indexLesson2, 1); + QCOMPARE(doc.lessonCount(), 2); + QVERIFY(!doc.lesson(indexLesson2).inQuery()); + + int indexLesson3 = doc.appendLesson(lesson3, false); + QCOMPARE(indexLesson3, 2); + QCOMPARE(doc.lessonCount(), 3); + + bool removed = doc.removeLesson(indexLesson2, KEduVocDocument::DeleteEmptyLesson); // only remove if empty + QCOMPARE(doc.lessonCount(), 2); + QVERIFY(removed); + QCOMPARE(doc.lesson(2), lesson3); + + doc.appendLesson(lesson2, true); +// Not yet implemented: +// doc.moveLesson(2, 1); +// QCOMPARE(doc.lesson(2), lesson2); +} + QTEST_KDEMAIN_CORE( KEduVocDocumentValidatorTest ) #include "keduvocdocumentvalidatortest.moc"