]> Git trees. - libqmvoc.git/commitdiff
Initial lesson unit test.
authorFrederik Gladhorn <gladhorn@kde.org>
Fri, 21 Sep 2007 23:31:54 +0000 (23:31 +0000)
committerFrederik Gladhorn <gladhorn@kde.org>
Fri, 21 Sep 2007 23:31:54 +0000 (23:31 +0000)
svn path=/trunk/KDE/kdeedu/libkdeedu/; revision=715372

keduvocdocument/keduvocdocument.cpp
keduvocdocument/keduvocdocument.h
keduvocdocument/tests/keduvocdocumentvalidatortest.cpp

index bae837c5c9015be11ef0bec56ba9f23abe837fd3..c6a57f6c35e0a5c1750a492b31b7087031f7893c 100644 (file)
@@ -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) {
index a47dca81874a0dd3b2c2d374d5114e594e5c3b26..bda1058e33e2d5007548ed3af25a794311f39a2d 100644 (file)
@@ -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 );
 };
 
 
index ac4c5c417f7ba683de6cd289947b58f4cbfdac8a..dbe50cb31cab4d2307e2c9aeea2f22f3eb46f2f7 100644 (file)
 */
 
 #include "../keduvocdocument.h"
+#include "../keduvoclesson.h"
+#include "../keduvocexpression.h"
+#include "../keduvoctranslation.h"
+#include "../keduvocconjugation.h"
+#include "../keduvocdeclination.h"
 
 #include <KTemporaryFile>
 
@@ -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"