From: Sunghyun Kim Date: Thu, 6 Feb 2020 08:28:41 +0000 (+0900) Subject: [ITC/UTC][dali-core][Non-ACR][Fix RenderTask tct] X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=e12d1a6422b5d53b4d4231971be50f1cef20fa09;p=test%2Ftct%2Fnative%2Fapi.git [ITC/UTC][dali-core][Non-ACR][Fix RenderTask tct] GetClearEnabled() need to use initialized RenderTask. so i fix them. Change-Id: I8e64c3e700f5d8e57f15b4ecfd269fe0092a7d5a --- diff --git a/src/itc/dali-core/render-task/ITs-render-task-impl.h b/src/itc/dali-core/render-task/ITs-render-task-impl.h index 9d71c8aa4..d5a707dc4 100755 --- a/src/itc/dali-core/render-task/ITs-render-task-impl.h +++ b/src/itc/dali-core/render-task/ITs-render-task-impl.h @@ -407,23 +407,52 @@ void RenderTaskSetGetClearColor() void RenderTaskSetGetClearEnabled() { - bool bGetClearEnable; - Stage stage; - RenderTaskList renderTaskList; - RenderTask renderTask; - DALI_CHECK_FAIL(!RenderTaskinit(stage, renderTaskList, renderTask), "RenderTask Initialization Failed " ); + const int WIDTH = 10 , HEIGHT = 10 ; + const float F_HEIGHT = 10.0f , F_WIDTH = 10.0f ; + const float F_X = 0.0f , F_Y = 0.0f , F_Z = 0.0f , F_W = 0.0f ; - bool bGetDefaultClearEnable = renderTask.GetClearEnabled(); - DALI_CHECK_FAIL(bGetDefaultClearEnable, "Default ClearEnable should be false"); + bool bGetClearEnable; - renderTask.SetClearEnabled(true); + Stage stage = Stage::GetCurrent(); + DALI_CHECK_FAIL(!stage, "stage is empty."); + + CameraActor offscreenCameraActor = CameraActor::New(); + DALI_CHECK_FAIL(!offscreenCameraActor, "CameraActor::New is failed to create camera actor."); + + stage.Add(offscreenCameraActor); + RenderTaskList renderTaskList = stage.GetRenderTaskList(); + + DALI_CHECK_FAIL(renderTaskList.GetTaskCount() == INVALID_TASK_COUNT, "RenderTaskList is empty."); + BufferImage image = BufferImage::New(WIDTH, HEIGHT); + DALI_CHECK_FAIL(!image, "BufferImage is not created"); + ImageView rootView = ImageView::New(image); + DALI_CHECK_FAIL(!rootView, "rootView is not created."); + rootView.SetSize(F_WIDTH , F_HEIGHT); + stage.Add(rootView); + + FrameBufferImage frameBufferImage = FrameBufferImage::New(); + + // Flush all outstanding messages + RenderTask newTask = renderTaskList.CreateTask(); + newTask.SetCameraActor(offscreenCameraActor); + newTask.SetSourceActor(rootView); + newTask.SetInputEnabled(false); + newTask.SetClearColor(Vector4(F_X, F_Y, F_Z, F_W)); + newTask.SetExclusive(true); + newTask.SetRefreshRate(RenderTask::REFRESH_ONCE); + newTask.SetTargetFrameBuffer(frameBufferImage); + + bool bGetDefaultClearEnable = newTask.GetClearEnabled(); + DALI_CHECK_FAIL(bGetDefaultClearEnable, "Default ClearEnable should be false"); + + newTask.SetClearEnabled(true); + + bGetClearEnable = newTask.GetClearEnabled(); + + DALI_CHECK_FAIL(!bGetClearEnable, "SetClearEnabled and GetClearEnabled is not matched"); + newTask.SetClearEnabled(false); + newTask.SetClearEnabled(bGetDefaultClearEnable); - bGetClearEnable = renderTask.GetClearEnabled(); - - DALI_CHECK_FAIL(!bGetClearEnable, "SetClearEnabled and GetClearEnabled is not matched"); - renderTask.SetClearEnabled(false); - renderTask.SetClearEnabled(bGetDefaultClearEnable); - DaliLog::PrintPass(); } diff --git a/src/utc/dali-core/render-task/utc-dali-render-task-impl.h b/src/utc/dali-core/render-task/utc-dali-render-task-impl.h index 8079aa737..fa57f4127 100755 --- a/src/utc/dali-core/render-task/utc-dali-render-task-impl.h +++ b/src/utc/dali-core/render-task/utc-dali-render-task-impl.h @@ -495,22 +495,51 @@ void RenderTaskGetClearColorN() void RenderTaskSetGetClearEnabledP() { + const int WIDTH = 10 , HEIGHT = 10 ; + const float F_HEIGHT = 10.0f , F_WIDTH = 10.0f ; + const float F_X = 0.0f , F_Y = 0.0f , F_Z = 0.0f , F_W = 0.0f ; + bool bGetClearEnable; - Stage stage; - RenderTaskList renderTaskList; - RenderTask renderTask; - DALI_CHECK_FAIL(!RenderTaskinit(stage, renderTaskList, renderTask), "RenderTask Initialization Failed " ); - bool bGetDefaultClearEnable = renderTask.GetClearEnabled(); + Stage stage = Stage::GetCurrent(); + DALI_CHECK_FAIL(!stage, "stage is empty."); + + CameraActor offscreenCameraActor = CameraActor::New(); + DALI_CHECK_FAIL(!offscreenCameraActor, "CameraActor::New is failed to create camera actor."); + + stage.Add(offscreenCameraActor); + RenderTaskList renderTaskList = stage.GetRenderTaskList(); + + DALI_CHECK_FAIL(renderTaskList.GetTaskCount() == INVALID_TASK_COUNT, "RenderTaskList is empty."); + BufferImage image = BufferImage::New(WIDTH, HEIGHT); + DALI_CHECK_FAIL(!image, "BufferImage is not created"); + ImageView rootView = ImageView::New(image); + DALI_CHECK_FAIL(!rootView, "rootView is not created."); + rootView.SetSize(F_WIDTH , F_HEIGHT); + stage.Add(rootView); + + FrameBufferImage frameBufferImage = FrameBufferImage::New(); + + // Flush all outstanding messages + RenderTask newTask = renderTaskList.CreateTask(); + newTask.SetCameraActor(offscreenCameraActor); + newTask.SetSourceActor(rootView); + newTask.SetInputEnabled(false); + newTask.SetClearColor(Vector4(F_X, F_Y, F_Z, F_W)); + newTask.SetExclusive(true); + newTask.SetRefreshRate(RenderTask::REFRESH_ONCE); + newTask.SetTargetFrameBuffer(frameBufferImage); + + bool bGetDefaultClearEnable = newTask.GetClearEnabled(); DALI_CHECK_FAIL(bGetDefaultClearEnable, "Default ClearEnable should be false"); - renderTask.SetClearEnabled(true); + newTask.SetClearEnabled(true); - bGetClearEnable = renderTask.GetClearEnabled(); + bGetClearEnable = newTask.GetClearEnabled(); DALI_CHECK_FAIL(!bGetClearEnable, "SetClearEnabled and GetClearEnabled is not matched"); - renderTask.SetClearEnabled(false); - renderTask.SetClearEnabled(bGetDefaultClearEnable); + newTask.SetClearEnabled(false); + newTask.SetClearEnabled(bGetDefaultClearEnable); DaliLog::PrintPass(); }