camerauis/cameraxui/cxengine/tsrc/unit/unittest_cxesettingscontrolsymbian/unittest_cxesettingscontrolsymbian.cpp
branchRCL_3
changeset 23 61bc0f252b2b
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/camerauis/cameraxui/cxengine/tsrc/unit/unittest_cxesettingscontrolsymbian/unittest_cxesettingscontrolsymbian.cpp	Tue Aug 31 15:03:46 2010 +0300
@@ -0,0 +1,135 @@
+/*
+* Copyright (c) 2009-2010 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description:
+*
+*/
+
+#include <QTest>
+
+#include "cxenamespace.h"
+#include "cxutils.h"
+#include "cxeautofocuscontrol.h"
+#include "cxefakesettings.h"
+#include "cxefakecameradevice.h"
+#include "cxefakecameradevicecontrol.h"
+#include "cxesettingscontrolsymbian.h"
+#include "unittest_cxesettingscontrolsymbian.h"
+
+
+using namespace Cxe;
+using namespace CxeSettingIds;
+
+
+UnitTestCxeSettingsControlSymbian::UnitTestCxeSettingsControlSymbian()
+{
+}
+
+UnitTestCxeSettingsControlSymbian::~UnitTestCxeSettingsControlSymbian()
+{
+}
+
+void UnitTestCxeSettingsControlSymbian::init()
+{
+    CX_DEBUG_ENTER_FUNCTION();
+
+    mCameraDeviceControl = new CxeFakeCameraDeviceControl();
+    mCameraDevice = new CxeFakeCameraDevice();
+    mCameraDevice->newCamera(mCameraDeviceControl->cameraIndex(), mCameraDeviceControl);
+
+    mSettings = new CxeFakeSettings();
+    mSettingsControl = new CxeSettingsControlSymbian(*mCameraDevice, *mSettings);
+
+    CX_DEBUG_EXIT_FUNCTION();
+}
+
+void UnitTestCxeSettingsControlSymbian::cleanup()
+{
+    CX_DEBUG_ENTER_FUNCTION();
+
+    delete mSettingsControl;
+    mSettingsControl = NULL;
+
+    delete mSettings;
+    mSettings = NULL;
+
+    delete mCameraDevice;
+    mCameraDevice = NULL;
+
+    delete mCameraDeviceControl;
+    mCameraDeviceControl = NULL;
+
+    CX_DEBUG_EXIT_FUNCTION();
+}
+
+void UnitTestCxeSettingsControlSymbian::testHandleSettingValueChanged()
+{
+    CX_DEBUG_ENTER_FUNCTION();
+
+    mSettingsControl->handleSettingValueChanged(FLASH_MODE, QVariant(1));
+    mSettingsControl->handleSettingValueChanged(WHITE_BALANCE, QVariant(1));
+    mSettingsControl->handleSettingValueChanged(LIGHT_SENSITIVITY, QVariant(1));
+    mSettingsControl->handleSettingValueChanged(EXPOSURE_MODE, QVariant(1));
+    mSettingsControl->handleSettingValueChanged(SHARPNESS, QVariant(1));
+    mSettingsControl->handleSettingValueChanged(COLOR_TONE, QVariant(1));
+    mSettingsControl->handleSettingValueChanged(EV_COMPENSATION_VALUE, QVariant(1));
+    mSettingsControl->handleSettingValueChanged(CONTRAST, QVariant(1));
+    mSettingsControl->handleSettingValueChanged(BRIGHTNESS, QVariant(1));
+    mSettingsControl->handleSettingValueChanged(FRAME_RATE, QVariant(1));
+
+    CX_DEBUG_EXIT_FUNCTION();
+}
+
+void UnitTestCxeSettingsControlSymbian::testHandleSceneChanged()
+{
+    CX_DEBUG_ENTER_FUNCTION();
+
+    CxeScene videoScene;
+
+    videoScene.insert(CxeSettingIds::SCENE_ID, Cxe::VIDEO_SCENE_AUTO);
+    videoScene.insert(CxeSettingIds::FOCAL_RANGE, CxeAutoFocusControl::Hyperfocal);
+    videoScene.insert(CxeSettingIds::WHITE_BALANCE, WhitebalanceAutomatic);
+    videoScene.insert(CxeSettingIds::EXPOSURE_MODE, ExposureAuto);
+    videoScene.insert(CxeSettingIds::COLOR_TONE, ColortoneNormal);
+    videoScene.insert(CxeSettingIds::CONTRAST, 0);
+    videoScene.insert(CxeSettingIds::FRAME_RATE, 0);
+    videoScene.insert(CxeSettingIds::EV_COMPENSATION_VALUE, 0);
+
+    mSettingsControl->handleSceneChanged(videoScene);
+
+    CxeScene imageScene;
+
+    imageScene.insert(CxeSettingIds::SCENE_ID, Cxe::IMAGE_SCENE_NIGHT);
+    imageScene.insert(CxeSettingIds::FOCAL_RANGE, CxeAutoFocusControl::Auto);
+    imageScene.insert(CxeSettingIds::WHITE_BALANCE, WhitebalanceAutomatic);
+    imageScene.insert(CxeSettingIds::EXPOSURE_MODE, ExposureNight);
+    imageScene.insert(CxeSettingIds::COLOR_TONE, ColortoneNormal);
+    imageScene.insert(CxeSettingIds::CONTRAST, 0);
+    imageScene.insert(CxeSettingIds::SHARPNESS, SharpnessNormal);
+    imageScene.insert(CxeSettingIds::LIGHT_SENSITIVITY, LightSensitivityAutomatic);
+    imageScene.insert(CxeSettingIds::EV_COMPENSATION_VALUE, 0);
+    imageScene.insert(CxeSettingIds::BRIGHTNESS, 0);
+    imageScene.insert(CxeSettingIds::FLASH_MODE, FlashOff);
+
+    mSettingsControl->handleSceneChanged(imageScene);
+
+    CX_DEBUG_EXIT_FUNCTION();
+}
+
+
+// main() function
+// If need event loop for waiting signals, use QTEST_MAIN.
+// Need also active scheduler, so can't use QTEST_APPLESS_MAIN
+QTEST_MAIN(UnitTestCxeSettingsControlSymbian);
+
+// end of file