}
if (lesson(defaultLessonNumber).entries().size() == 0)
{
- deleteLesson(defaultLessonNumber, DeleteEmptyLesson);
+ removeLesson(defaultLessonNumber, DeleteEmptyLesson);
}
if ( !read ) {
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) {
* @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.
class KEduVocDocumentPrivate;
KEduVocDocumentPrivate* const d;
- Q_DISABLE_COPY( KEduVocDocument )
+ Q_DISABLE_COPY( KEduVocDocument );
};
*/
#include "../keduvocdocument.h"
+#include "../keduvoclesson.h"
+#include "../keduvocexpression.h"
+#include "../keduvoctranslation.h"
+#include "../keduvocconjugation.h"
+#include "../keduvocdeclination.h"
#include <KTemporaryFile>
private slots:
void testDocumentAboutInfo();
+ void testLessons();
};
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"