diff -r 61bc0f252b2b -r bac7acad7cb3 camerauis/cameraxui/cxengine/tsrc/unit/unittest_cxecameradevice/unittest_cxecameradevice.cpp --- a/camerauis/cameraxui/cxengine/tsrc/unit/unittest_cxecameradevice/unittest_cxecameradevice.cpp Tue Aug 31 15:03:46 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,201 +0,0 @@ -/* -* Copyright (c) 2009 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 "unittest_cxecameradevice.h" - -#include -#include -#include - -#include "cxecameradevice.h" -#include "cxedummycamera.h" -#include "cxetestutils.h" - -UnitTestCxeCameraDevice::UnitTestCxeCameraDevice() -: mCameraDevice(NULL) -{ - qRegisterMetaType("CxeError::Id"); -} - - -UnitTestCxeCameraDevice::~UnitTestCxeCameraDevice() -{ - cleanup(); -} - - -void UnitTestCxeCameraDevice::init() -{ - mCameraDevice = new CxeCameraDevice; - - // check that the getters return default values after construction - QVERIFY(mCameraDevice->camera() == NULL); - QVERIFY(mCameraDevice->advancedSettings() == NULL); - QVERIFY(mCameraDevice->imageProcessor() == NULL); - QVERIFY(mCameraDevice->cameraOrientation() == NULL); - QVERIFY(mCameraDevice->cameraSnapshot() == NULL); -} - -void UnitTestCxeCameraDevice::cleanup() -{ - delete mCameraDevice; - mCameraDevice = NULL; -} - -void UnitTestCxeCameraDevice::testNewCamera() -{ - CX_DEBUG_ENTER_FUNCTION(); - - CCamera *camera = NULL; - CCamera::CCameraAdvancedSettings *advancedSettings = NULL; - CCamera::CCameraImageProcessing * imageProcessor = NULL; - MCameraOrientation *cameraOrientation = NULL; - CxeError::Id error = CxeError::None; - - // test newCamera when camera is not set - error = mCameraDevice->newCamera(Cxe::PrimaryCameraIndex, this); - - camera = mCameraDevice->camera(); - advancedSettings = mCameraDevice->advancedSettings(); - imageProcessor = mCameraDevice->imageProcessor(); - cameraOrientation = mCameraDevice->cameraOrientation(); - - QCOMPARE(error,CxeError::None); - QVERIFY(camera); - QVERIFY(advancedSettings); - QVERIFY(imageProcessor); - QVERIFY(mCameraDevice->cameraSnapshot()); - QVERIFY(cameraOrientation == camera->CustomInterface(KCameraOrientationUid)); - - // test newCamera when camera is set - error = mCameraDevice->newCamera(Cxe::SecondaryCameraIndex, this); - QVERIFY(mCameraDevice->camera()); - QVERIFY(mCameraDevice->camera() != camera); - QCOMPARE(error,CxeError::None); - - camera = mCameraDevice->camera(); - // test newCamera with NULL as observer - error = mCameraDevice->newCamera(Cxe::PrimaryCameraIndex, NULL); - QVERIFY(mCameraDevice->camera()); - QVERIFY(mCameraDevice->camera() != camera); - QCOMPARE(error,CxeError::None); - - CX_DEBUG_EXIT_FUNCTION(); -} - -void UnitTestCxeCameraDevice::testReleaseCamera() -{ - CX_DEBUG_ENTER_FUNCTION(); - QSignalSpy spy(mCameraDevice, SIGNAL(prepareForRelease())); - - // releaseCamera when camera is not set - // -> signal is not emitted - // -> camera is still NULL - mCameraDevice->releaseCamera(); - QVERIFY(!CxeTestUtils::waitForSignal(spy, 1000)); - QVERIFY(mCameraDevice->camera() == NULL); - - mCameraDevice->newCamera(Cxe::PrimaryCameraIndex, this); - - // releaseCamera when camera set - // -> signal is emitted - // -> camera stays the same (not deleted) - CCamera *camera = mCameraDevice->camera(); - mCameraDevice->releaseCamera(); - QVERIFY(CxeTestUtils::waitForSignal(spy, 1000)); - QVERIFY(mCameraDevice->camera() == camera); - - CX_DEBUG_EXIT_FUNCTION(); -} - -void UnitTestCxeCameraDevice::testDeleteCamera() -{ - CX_DEBUG_ENTER_FUNCTION(); - QSignalSpy spy(mCameraDevice, SIGNAL(prepareForCameraDelete())); - - // deleteCamera when camera is not set - mCameraDevice->deleteCamera(); - QVERIFY(CxeTestUtils::waitForSignal(spy, 1000)); - QVERIFY(mCameraDevice->advancedSettings() == NULL); - QVERIFY(mCameraDevice->imageProcessor() == NULL); - QVERIFY(mCameraDevice->cameraOrientation() == NULL); - QVERIFY(mCameraDevice->camera() == NULL); - QVERIFY(mCameraDevice->cameraSnapshot() == NULL); - - mCameraDevice->newCamera(Cxe::PrimaryCameraIndex, this); - - // deleteCamera when camera is set - mCameraDevice->deleteCamera(); - QVERIFY(CxeTestUtils::waitForSignal(spy, 1000)); - QVERIFY(mCameraDevice->advancedSettings() == NULL); - QVERIFY(mCameraDevice->imageProcessor() == NULL); - QVERIFY(mCameraDevice->cameraOrientation() == NULL); - QVERIFY(mCameraDevice->camera() == NULL); - QVERIFY(mCameraDevice->cameraSnapshot() == NULL); - - CX_DEBUG_EXIT_FUNCTION(); -} - -void UnitTestCxeCameraDevice::testSetCamera() -{ - CX_DEBUG_ENTER_FUNCTION(); - QSignalSpy spy(mCameraDevice, SIGNAL(cameraAllocated(CxeError::Id))); - - // create new dummycamera for testing the input - CxeDummyCamera *camera = 0; - TRAPD(error, camera = CxeDummyCamera::NewL(*this, Cxe::PrimaryCameraIndex, 100, 2)); - QCOMPARE(error, KErrNone); - QVERIFY(camera); - - // test when camera is not set - mCameraDevice->setCamera(camera); - QVERIFY(mCameraDevice->camera() == camera); - QVERIFY(mCameraDevice->advancedSettings()); - QVERIFY(mCameraDevice->imageProcessor()); - QVERIFY(mCameraDevice->cameraOrientation() == camera->CustomInterface(KCameraOrientationUid)); - QVERIFY(mCameraDevice->cameraSnapshot()); - QVERIFY(CxeTestUtils::waitForSignal(spy, 1000)); - - // setting same camera twice - mCameraDevice->setCamera(camera); - QVERIFY(mCameraDevice->camera() == camera); - QVERIFY(mCameraDevice->advancedSettings()); - QVERIFY(mCameraDevice->imageProcessor()); - QVERIFY(mCameraDevice->cameraOrientation() == camera->CustomInterface(KCameraOrientationUid)); - QVERIFY(mCameraDevice->cameraSnapshot()); - QVERIFY(CxeTestUtils::waitForSignal(spy, 1000)); - - // set a new camera - CxeDummyCamera *camera2 = 0; - TRAPD(error2, camera2 = CxeDummyCamera::NewL(*this, Cxe::PrimaryCameraIndex, 100, 2)); - QCOMPARE(error2,KErrNone); - QVERIFY(camera2 != 0); - - mCameraDevice->setCamera(camera2); - QVERIFY(mCameraDevice->camera() == camera2); - QVERIFY(mCameraDevice->advancedSettings()); - QVERIFY(mCameraDevice->imageProcessor()); - QVERIFY(mCameraDevice->cameraSnapshot()); - QVERIFY(mCameraDevice->cameraOrientation() == camera2->CustomInterface(KCameraOrientationUid)); - QVERIFY(CxeTestUtils::waitForSignal(spy, 1000)); - - CX_DEBUG_EXIT_FUNCTION(); -} - - - -QTEST_MAIN(UnitTestCxeCameraDevice);