Recreate resources after blur is deactivated.
[platform/core/uifw/dali-toolkit.git] / automated-tests / src / dali-toolkit / utc-Dali-GaussianBlurView.cpp
index 531b94c..170a17c 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2016 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2020 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.
@@ -145,7 +145,7 @@ int UtcDaliGaussianBlurViewAddRemove(void)
   DALI_TEST_CHECK( !actor.OnStage() );
 
 
-  view.SetParentOrigin(ParentOrigin::CENTER);
+  view.SetProperty( Actor::Property::PARENT_ORIGIN,ParentOrigin::CENTER);
   view.SetSize(Stage::GetCurrent().GetSize());
   view.Add(actor);
   Stage::GetCurrent().Add(view);
@@ -170,7 +170,7 @@ int UtcDaliGaussianBlurActivateDeactivate(void)
   RenderTaskList taskList = Stage::GetCurrent().GetRenderTaskList();
   DALI_TEST_CHECK( 1u == taskList.GetTaskCount() );
 
-  view.SetParentOrigin(ParentOrigin::CENTER);
+  view.SetProperty( Actor::Property::PARENT_ORIGIN,ParentOrigin::CENTER);
   view.SetSize(Stage::GetCurrent().GetSize());
   view.Add(Actor::New());
   Stage::GetCurrent().Add(view);
@@ -190,6 +190,46 @@ int UtcDaliGaussianBlurActivateDeactivate(void)
 }
 
 // Positive test case for a method
+int UtcDaliGaussianBlurActivateDeactivateRepeat(void)
+{
+  ToolkitTestApplication application;
+  TestGlAbstraction& gl = application.GetGlAbstraction();
+  TraceCallStack& textureTrace = gl.GetTextureTrace();
+  textureTrace.Enable(true);
+  tet_infoline("UtcDaliGaussianBlurActivateDeactivateRepeat");
+
+  Toolkit::GaussianBlurView view = Toolkit::GaussianBlurView::New();
+  DALI_TEST_CHECK( view );
+
+  view.SetProperty( Actor::Property::PARENT_ORIGIN, ParentOrigin::CENTER );
+  view.SetSize(Stage::GetCurrent().GetSize());
+  view.Add(Actor::New());
+  Stage::GetCurrent().Add(view);
+  view.Activate();
+
+  application.SendNotification();
+  application.Render(20);
+
+  DALI_TEST_CHECK( gl.GetLastGenTextureId() == 3 );
+
+  view.Deactivate();
+
+  application.SendNotification();
+  application.Render(20);
+
+  DALI_TEST_CHECK( gl.GetLastGenTextureId() == 3 );
+
+  view.Activate();
+
+  application.SendNotification();
+  application.Render(20);
+
+  DALI_TEST_CHECK( gl.GetLastGenTextureId() == 6 );
+
+  END_TEST;
+}
+
+// Positive test case for a method
 int UtcDaliGaussianBlurViewSetGetBackgroundColor(void)
 {
   ToolkitTestApplication application;
@@ -213,7 +253,7 @@ int UtcDaliGaussianBlurViewSetGetRenderTarget(void)
   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.SetProperty( Actor::Property::PARENT_ORIGIN,ParentOrigin::CENTER);
   view.SetSize(Stage::GetCurrent().GetSize());
   view.Add(Actor::New());
   Stage::GetCurrent().Add(view);
@@ -240,7 +280,7 @@ int UtcDaliGaussianBlurViewActivateOnce(void)
   RenderTaskList taskList = Stage::GetCurrent().GetRenderTaskList();
   DALI_TEST_CHECK( 1u == taskList.GetTaskCount() );
 
-  view.SetParentOrigin(ParentOrigin::CENTER);
+  view.SetProperty( Actor::Property::PARENT_ORIGIN,ParentOrigin::CENTER);
   view.SetSize(Stage::GetCurrent().GetSize());
   view.Add(Actor::New());
   Stage::GetCurrent().Add(view);
@@ -261,7 +301,7 @@ int UtcDaliGaussianBlurViewFinishedSignalN(void)
   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.SetProperty( Actor::Property::PARENT_ORIGIN,ParentOrigin::CENTER);
   view.SetSize(Stage::GetCurrent().GetSize());
   view.Add(Actor::New());
   Stage::GetCurrent().Add(view);