X-Git-Url: http://review.tizen.org/git/?p=platform%2Fcore%2Fuifw%2Fdali-toolkit.git;a=blobdiff_plain;f=automated-tests%2Fsrc%2Fdali-toolkit%2Futc-Dali-GaussianBlurView.cpp;h=531b94c654d9bdeca6f19e3fa8dc9a933c6dcd29;hp=d4b6e4a1c66fb7b7bce81cd4b8cb0acd7acfbb5f;hb=7d7006623dc5520280ceebd56c102aa76f121c3d;hpb=af70c4c72ccbf2f680bd43f67888224f97a361eb diff --git a/automated-tests/src/dali-toolkit/utc-Dali-GaussianBlurView.cpp b/automated-tests/src/dali-toolkit/utc-Dali-GaussianBlurView.cpp index d4b6e4a..531b94c 100644 --- a/automated-tests/src/dali-toolkit/utc-Dali-GaussianBlurView.cpp +++ b/automated-tests/src/dali-toolkit/utc-Dali-GaussianBlurView.cpp @@ -1,5 +1,5 @@ /* - * Copyright (c) 2014 Samsung Electronics Co., Ltd. + * Copyright (c) 2016 Samsung Electronics Co., Ltd. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -19,13 +19,14 @@ #include #include #include +#include using namespace Dali; using namespace Dali::Toolkit; namespace { -const char* TEST_IMAGE_FILE_NAME = "gallery_image_01.jpg"; +const char* TEST_IMAGE_FILE_NAME = TEST_RESOURCE_DIR "/gallery-small-1.jpg"; } // namespace void utc_gaussian_blur_view_startup(void) @@ -38,7 +39,28 @@ void utc_gaussian_blur_view_cleanup(void) test_return_value = TET_PASS; } +class TestCallback : public ConnectionTracker +{ +public: + TestCallback( Dali::Toolkit::GaussianBlurView& blurView ) + : mBlurView( blurView ) + { + mFinished = false; + } + void Connect() + { + mBlurView.FinishedSignal().Connect( this, &TestCallback::OnFinished ); + } + + void OnFinished( Dali::Toolkit::GaussianBlurView source ) + { + mFinished = true; + } + + bool mFinished; + Dali::Toolkit::GaussianBlurView& mBlurView; +}; // Negative test case for a method int UtcDaliGaussianBlurViewUninitialized(void) @@ -156,11 +178,14 @@ int UtcDaliGaussianBlurActivateDeactivate(void) RenderTaskList taskList2 = Stage::GetCurrent().GetRenderTaskList(); DALI_TEST_CHECK( 1u != taskList2.GetTaskCount() ); + DALI_TEST_CHECK( 2u == view.GetChildCount() ); view.Deactivate(); RenderTaskList taskList3 = Stage::GetCurrent().GetRenderTaskList(); DALI_TEST_CHECK( 1u == taskList3.GetTaskCount() ); + DALI_TEST_CHECK( 1u == view.GetChildCount() ); + END_TEST; } @@ -194,8 +219,64 @@ int UtcDaliGaussianBlurViewSetGetRenderTarget(void) Stage::GetCurrent().Add(view); view.Activate(); - FrameBufferImage renderTarget = FrameBufferImage::New( 480.0f, 800.0f, Pixel::RGB888 ); - view.SetUserImageAndOutputRenderTarget(Image::New(TEST_IMAGE_FILE_NAME), renderTarget); + PixelData pixels = Toolkit::SyncImageLoader::Load( TEST_IMAGE_FILE_NAME ); + Texture texture = Texture::New( TextureType::TEXTURE_2D, pixels.GetPixelFormat(), pixels.GetWidth(), pixels.GetHeight() ); + texture.Upload( pixels, 0, 0, 0, 0, pixels.GetWidth(), pixels.GetHeight() ); + + FrameBuffer renderTarget = FrameBuffer::New( 480, 800, FrameBuffer::Attachment::NONE ); + view.SetUserImageAndOutputRenderTarget(texture, renderTarget); DALI_TEST_CHECK( view.GetBlurredRenderTarget() == renderTarget ); END_TEST; } + +int UtcDaliGaussianBlurViewActivateOnce(void) +{ + ToolkitTestApplication application; + tet_infoline("UtcDaliGaussianBlurActivateOnce"); + + Toolkit::GaussianBlurView view = Toolkit::GaussianBlurView::New(5, 1.5f, Pixel::RGB888, 0.5f, 0.5f, true); + DALI_TEST_CHECK( view ); + + RenderTaskList taskList = Stage::GetCurrent().GetRenderTaskList(); + DALI_TEST_CHECK( 1u == taskList.GetTaskCount() ); + + view.SetParentOrigin(ParentOrigin::CENTER); + view.SetSize(Stage::GetCurrent().GetSize()); + view.Add(Actor::New()); + Stage::GetCurrent().Add(view); + view.ActivateOnce(); + + RenderTaskList taskList2 = Stage::GetCurrent().GetRenderTaskList(); + DALI_TEST_CHECK( 1u != taskList2.GetTaskCount() ); + application.Render(); + + END_TEST; +} + +int UtcDaliGaussianBlurViewFinishedSignalN(void) +{ + ToolkitTestApplication application; + tet_infoline("UtcDaliGaussianBlurViewFinishedSignalN"); + + Toolkit::GaussianBlurView view = Toolkit::GaussianBlurView::New(5, 1.5f, Pixel::RGB888, 0.5f, 0.5f, true); + DALI_TEST_CHECK( view ); + + view.SetParentOrigin(ParentOrigin::CENTER); + view.SetSize(Stage::GetCurrent().GetSize()); + view.Add(Actor::New()); + Stage::GetCurrent().Add(view); + view.Activate(); + + TestCallback callback( view ); + DALI_TEST_CHECK( callback.mFinished == false ); + + callback.Connect(); + + view.Deactivate(); + application.SendNotification(); + + // FinishedSignal is only for ActivateOnce() + DALI_TEST_CHECK( callback.mFinished == false ); + + END_TEST; +}