calendarui/views/dayview/tsrc/unittests/unittest_calendaymodelmanager/unittest_calendaymodelmanager.cpp
--- a/calendarui/views/dayview/tsrc/unittests/unittest_calendaymodelmanager/unittest_calendaymodelmanager.cpp Mon Sep 20 12:44:39 2010 +0530
+++ b/calendarui/views/dayview/tsrc/unittests/unittest_calendaymodelmanager/unittest_calendaymodelmanager.cpp Tue Oct 05 13:57:00 2010 +0530
@@ -20,6 +20,8 @@
#include "calendaymodel.h"
#include "calendaymodelmanager.h"
+QDateTime CURRENT_DATE;
+
class TestCalenDayModelManager : public QObject
{
Q_OBJECT
@@ -37,6 +39,9 @@
void testGetModel();
void testRefreshAllModels();
void testRefreshSingleModel();
+ void testMoveBackward();
+ void testMoveForward();
+ //refreshAllModels
void testConstructors();
@@ -82,6 +87,7 @@
*/
void TestCalenDayModelManager::init()
{
+ CURRENT_DATE = QDateTime(QDate(2000, 10, 10));
mManager = new CalenDayModelManager(services, false);
}
@@ -121,28 +127,124 @@
delete testManager2;
}
+/*!
+ Test function for getModel.
+
+ It check is model has date setted if yes, then it is created.
+ */
void TestCalenDayModelManager::testGetModel()
- {
- MCalenServices services;
- CalenDayModel* model = static_cast<CalenDayModel*>(&(mManager->getModel(CalenDayModelManager::CurrentDay)));
- QCOMPARE(model->modelDate(), services.Context().focusDateAndTime());
- }
+{
+ CalenDayModel* model = static_cast<CalenDayModel*> (&(mManager->getModel(
+ CalenDayModelManager::CurrentDay)));
+ QCOMPARE(model->modelDate(), CURRENT_DATE);
+}
+/*!
+ Test function for RefreshAllModels
+ 1)Check that, all models are not refreshed
+ 2)Check that all folders are refreshed
+ */
void TestCalenDayModelManager::testRefreshAllModels()
- {
-
- }
+{
+ //1)
+ CalenDayModel* model1;
+ CalenDayModel* model2;
+ CalenDayModel* model3;
+
+ model1 = static_cast<CalenDayModel*> (&(mManager->getModel(CalenDayModelManager::PreviousDay)));
+ model2 = static_cast<CalenDayModel*> (&(mManager->getModel(CalenDayModelManager::CurrentDay)));
+ model3 = static_cast<CalenDayModel*> (&(mManager->getModel(CalenDayModelManager::NextDay)));
+ QVERIFY(model1->modelRefreshed() == 0);
+ QVERIFY(model2->modelRefreshed() == 0);
+ QVERIFY(model3->modelRefreshed() == 0);
+
+ //2)
+ mManager->refreshAllModels();
+ model1 = static_cast<CalenDayModel*> (&(mManager->getModel(CalenDayModelManager::PreviousDay)));
+ model2 = static_cast<CalenDayModel*> (&(mManager->getModel(CalenDayModelManager::CurrentDay)));
+ model3 = static_cast<CalenDayModel*> (&(mManager->getModel(CalenDayModelManager::NextDay)));
+ QVERIFY(model1->modelRefreshed() == 1);
+ QVERIFY(model2->modelRefreshed() == 1);
+ QVERIFY(model3->modelRefreshed() == 1);
+}
+/*!
+ Test functuion for RefreshSingleModel
+ 1) test refresh model for current day
+ 2) test refresh model for previous day
+ 3) test refresh model for next day
+ 4) test refresh model for no model selected
+ */
void TestCalenDayModelManager::testRefreshSingleModel()
- {
- mManager->refreshSingleModel(CalenDayModelManager::CurrentDay);
- QVERIFY(mManager);
- mManager->refreshSingleModel(CalenDayModelManager::PreviousDay);
- QVERIFY(mManager);
- mManager->refreshSingleModel(CalenDayModelManager::NextDay);
- QVERIFY(mManager);
- }
+{
+ CalenDayModel* model;
+
+ //1)
+ mManager->refreshSingleModel(CalenDayModelManager::CurrentDay);
+ model = static_cast<CalenDayModel*> (&(mManager->getModel(CalenDayModelManager::CurrentDay)));
+ QVERIFY(model->modelRefreshed() > 0);
+
+ //2)
+ mManager->refreshSingleModel(CalenDayModelManager::PreviousDay);
+ model = static_cast<CalenDayModel*> (&(mManager->getModel(CalenDayModelManager::PreviousDay)));
+ QVERIFY(model->modelRefreshed() > 0);
+
+ //3)
+ mManager->refreshSingleModel(CalenDayModelManager::NextDay);
+ model = static_cast<CalenDayModel*> (&(mManager->getModel(CalenDayModelManager::NextDay)));
+ QVERIFY(model->modelRefreshed() > 0);
+
+ //4) it is equal 1 because each model was refreshed
+ mManager->refreshSingleModel(CalenDayModelManager::NumberOfDays);
+ model = static_cast<CalenDayModel*> (&(mManager->getModel(CalenDayModelManager::CurrentDay)));
+ QVERIFY(model->modelRefreshed() == 1);
+ model = static_cast<CalenDayModel*> (&(mManager->getModel(CalenDayModelManager::PreviousDay)));
+ QVERIFY(model->modelRefreshed() == 1);
+ model = static_cast<CalenDayModel*> (&(mManager->getModel(CalenDayModelManager::NextDay)));
+ QVERIFY(model->modelRefreshed() == 1);
+}
+/*!
+ test function for moveBackward()
+ 1)test if model for current date is good
+ 2)test if model change after bacward
+
+ It test also CalenDayModelManager::viewsScrollingFinished
+ */
+void TestCalenDayModelManager::testMoveBackward()
+{
+ //1)
+ CalenDayModel* model = static_cast<CalenDayModel*>(&(mManager->getModel(CalenDayModelManager::CurrentDay)));
+ QCOMPARE(model->modelDate(), CURRENT_DATE);
+
+ //2)
+ mManager->viewsScrollingFinished(ECalenScrollToPrev);
+
+ model = static_cast<CalenDayModel*>(&(mManager->getModel(CalenDayModelManager::CurrentDay)));
+ QCOMPARE(model->modelDate(), CURRENT_DATE.addDays(-1));
+}
+
+/*!
+ test function for moveBackward()
+ 1)test if model for current date is good
+ 2)test if model change after forward
+
+ It test also CalenDayModelManager::viewsScrollingFinished
+ */
+void TestCalenDayModelManager::testMoveForward()
+{
+ //1)
+ CalenDayModel* model = static_cast<CalenDayModel*> (&(mManager->getModel(
+ CalenDayModelManager::CurrentDay)));
+ QCOMPARE(model->modelDate(), CURRENT_DATE);
+
+ //2)
+ mManager->viewsScrollingFinished(ECalenScrollToNext);
+
+ model = static_cast<CalenDayModel*> (&(mManager->getModel(
+ CalenDayModelManager::CurrentDay)));
+ QCOMPARE(model->modelDate(), CURRENT_DATE.addDays(1));
+}
QTEST_MAIN(TestCalenDayModelManager);
#include "unittest_calendaymodelmanager.moc"