[dali_2.3.19] Merge branch 'devel/master'
[platform/core/uifw/dali-toolkit.git] / automated-tests / src / dali-toolkit / utc-Dali-ShaderEffects.cpp
index 28de790..7f7caab 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2015 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2022 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.
  *
  */
 
-#include <iostream>
-#include <stdlib.h>
 #include <dali-toolkit-test-suite-utils.h>
 #include <dali-toolkit/dali-toolkit.h>
+#include <stdlib.h>
+#include <iostream>
 
 #include <dali-toolkit/devel-api/shader-effects/alpha-discard-effect.h>
-#include <dali-toolkit/devel-api/shader-effects/bendy-effect.h>
-#include <dali-toolkit/devel-api/shader-effects/blind-effect.h>
-#include <dali-toolkit/devel-api/shader-effects/bouncing-effect.h>
-#include <dali-toolkit/devel-api/shader-effects/carousel-effect.h>
-#include <dali-toolkit/devel-api/shader-effects/displacement-effect.h>
 #include <dali-toolkit/devel-api/shader-effects/dissolve-effect.h>
-#include <dali-toolkit/devel-api/shader-effects/dissolve-local-effect.h>
 #include <dali-toolkit/devel-api/shader-effects/distance-field-effect.h>
 #include <dali-toolkit/devel-api/shader-effects/image-region-effect.h>
-#include <dali-toolkit/devel-api/shader-effects/iris-effect.h>
-#include <dali-toolkit/devel-api/shader-effects/mask-effect.h>
-#include <dali-toolkit/devel-api/shader-effects/mirror-effect.h>
 #include <dali-toolkit/devel-api/shader-effects/motion-blur-effect.h>
 #include <dali-toolkit/devel-api/shader-effects/motion-stretch-effect.h>
-#include <dali-toolkit/devel-api/shader-effects/nine-patch-mask-effect.h>
-#include <dali-toolkit/devel-api/shader-effects/overlay-effect.h>
-#include <dali-toolkit/devel-api/shader-effects/quadratic-bezier.h>
-#include <dali-toolkit/devel-api/shader-effects/ripple-effect.h>
-#include <dali-toolkit/devel-api/shader-effects/ripple2d-effect.h>
-#include <dali-toolkit/devel-api/shader-effects/shear-effect.h>
-#include <dali-toolkit/devel-api/shader-effects/soft-button-effect.h>
-#include <dali-toolkit/devel-api/shader-effects/spot-effect.h>
-#include <dali-toolkit/devel-api/shader-effects/square-dissolve-effect.h>
-#include <dali-toolkit/devel-api/shader-effects/swirl-effect.h>
 
 using namespace Dali;
+using namespace Dali::Toolkit;
 
 int UtcDaliCreateAlphaDiscardEffect(void)
 {
   ToolkitTestApplication application;
 
-  ShaderEffect effect = Toolkit::CreateAlphaDiscardEffect();
-  DALI_TEST_CHECK( effect );
-
-  END_TEST;
-}
-
-int UtcDaliCreateBendyEffect(void)
-{
-  ToolkitTestApplication application;
+  Property::Map effect = Toolkit::CreateAlphaDiscardEffect();
+  DALI_TEST_CHECK(!effect.Empty());
 
-  ShaderEffect effect = Toolkit::CreateBendyEffect();
-  DALI_TEST_CHECK( effect );
+  Property::Value* customShaderValue = effect.Find(Toolkit::Visual::Property::SHADER);
+  DALI_TEST_CHECK(customShaderValue);
 
-  END_TEST;
-}
-
-int UtcDaliCreateBlindEffect(void)
-{
-  ToolkitTestApplication application;
-
-  ShaderEffect effect = Toolkit::CreateBlindEffect();
-  DALI_TEST_CHECK( effect );
-
-  END_TEST;
-}
-
-int UtcDaliCreateBouncingEffect(void)
-{
-  ToolkitTestApplication application;
-
-  Vector4 color(1.0f,1.0f,1.0f,1.0f);
-
-  ShaderEffect effect = Toolkit::CreateBouncingEffect(color);
-  DALI_TEST_CHECK( effect );
-
-  Property::Value value = effect.GetProperty( effect.GetPropertyIndex("uAssignedColor"));
-  DALI_TEST_EQUALS( value.Get<Vector4>(), color, TEST_LOCATION );
-
-  END_TEST;
-}
-
-int UtcDaliCreateCarouselEffect(void)
-{
-  ToolkitTestApplication application;
+  Property::Map customShader;
+  DALI_TEST_CHECK(customShaderValue->Get(customShader));
 
-  ShaderEffect effect = Toolkit::CreateCarouselEffect();
-  DALI_TEST_CHECK( effect );
+  Property::Value* vertexShaderValue = customShader.Find(Visual::Shader::Property::VERTEX_SHADER);
+  DALI_TEST_CHECK(!vertexShaderValue);
 
-  END_TEST;
-}
-
-int UtcDaliCreateDisplacementEffectDisplaced(void)
-{
-  ToolkitTestApplication application;
+  Property::Value* fragmentShaderValue = customShader.Find(Visual::Shader::Property::FRAGMENT_SHADER);
+  DALI_TEST_CHECK(fragmentShaderValue);
 
-  ShaderEffect effect = Toolkit::CreateDisplacementEffect(Toolkit::DISPLACEMENT_EFFECT_DISPLACED);
-  DALI_TEST_CHECK( effect );
+  std::string fragmentShader;
+  DALI_TEST_CHECK(fragmentShaderValue->Get(fragmentShader));
+  DALI_TEST_CHECK(!fragmentShader.empty());
 
-  END_TEST;
-}
+  Property::Value* gridXValue = customShader.Find(Visual::Shader::Property::SUBDIVIDE_GRID_X);
+  DALI_TEST_CHECK(!gridXValue);
 
-int UtcDaliCreateDisplacementEffectFixed(void)
-{
-  ToolkitTestApplication application;
+  Property::Value* gridYValue = customShader.Find(Visual::Shader::Property::SUBDIVIDE_GRID_Y);
+  DALI_TEST_CHECK(!gridYValue);
 
-  ShaderEffect effect = Toolkit::CreateDisplacementEffect(Toolkit::DISPLACEMENT_EFFECT_FIXED);
-  DALI_TEST_CHECK( effect );
+  Property::Value* hintsValue = customShader.Find(Visual::Shader::Property::HINTS);
+  DALI_TEST_CHECK(!hintsValue);
 
   END_TEST;
 }
 
-int UtcDaliCreateDissolveEffect( bool highPrecision )
+int UtcDaliCreateDissolveEffect(bool highPrecision)
 {
   ToolkitTestApplication application;
 
-  Property::Map effect = Toolkit::CreateDissolveEffect( highPrecision );
-  DALI_TEST_CHECK( !effect.Empty() );
+  Property::Map effect = Toolkit::CreateDissolveEffect(highPrecision);
+  DALI_TEST_CHECK(!effect.Empty());
 
-  Property::Value* customShaderValue = effect.Find( "shader" );
-  DALI_TEST_CHECK( customShaderValue );
+  Property::Value* customShaderValue = effect.Find(Toolkit::Visual::Property::SHADER);
+  DALI_TEST_CHECK(customShaderValue);
 
   Property::Map customShader;
-  DALI_TEST_CHECK( customShaderValue->Get( customShader ) );
+  DALI_TEST_CHECK(customShaderValue->Get(customShader));
 
-  Property::Value* vertexShaderValue = customShader.Find( "vertex-shader" );
-  DALI_TEST_CHECK( vertexShaderValue );
+  Property::Value* vertexShaderValue = customShader.Find(Visual::Shader::Property::VERTEX_SHADER);
+  DALI_TEST_CHECK(vertexShaderValue);
 
   std::string vertexShader;
-  DALI_TEST_CHECK( vertexShaderValue->Get( vertexShader ) );
-  DALI_TEST_CHECK( !vertexShader.empty() );
+  DALI_TEST_CHECK(vertexShaderValue->Get(vertexShader));
+  DALI_TEST_CHECK(!vertexShader.empty());
 
-  Property::Value* fragmentShaderValue = customShader.Find( "fragment-shader" );
-  DALI_TEST_CHECK( fragmentShaderValue );
+  Property::Value* fragmentShaderValue = customShader.Find(Visual::Shader::Property::FRAGMENT_SHADER);
+  DALI_TEST_CHECK(fragmentShaderValue);
 
   std::string fragmentShader;
-  DALI_TEST_CHECK( fragmentShaderValue->Get( fragmentShader ) );
-  DALI_TEST_CHECK( !fragmentShader.empty() );
+  DALI_TEST_CHECK(fragmentShaderValue->Get(fragmentShader));
+  DALI_TEST_CHECK(!fragmentShader.empty());
 
-  Property::Value* gridXValue = customShader.Find( "subdivide-grid-x" );
-  DALI_TEST_CHECK( gridXValue );
+  Property::Value* gridXValue = customShader.Find(Visual::Shader::Property::SUBDIVIDE_GRID_X);
+  DALI_TEST_CHECK(gridXValue);
 
   int gridX = 0;
-  DALI_TEST_CHECK( gridXValue->Get( gridX ) );
-  DALI_TEST_CHECK( gridX > 1 );
+  DALI_TEST_CHECK(gridXValue->Get(gridX));
+  DALI_TEST_CHECK(gridX > 1);
 
-  Property::Value* gridYValue = customShader.Find( "subdivide-grid-y" );
-  DALI_TEST_CHECK( gridYValue );
+  Property::Value* gridYValue = customShader.Find(Visual::Shader::Property::SUBDIVIDE_GRID_Y);
+  DALI_TEST_CHECK(gridYValue);
 
   int gridY = 0;
-  DALI_TEST_CHECK( gridYValue->Get( gridY ) );
-  DALI_TEST_CHECK( gridY > 1 );
+  DALI_TEST_CHECK(gridYValue->Get(gridY));
+  DALI_TEST_CHECK(gridY > 1);
 
-  Property::Value* hintsValue = customShader.Find( "hints" );
-  DALI_TEST_CHECK( hintsValue );
+  Property::Value* hintsValue = customShader.Find(Visual::Shader::Property::HINTS);
+  DALI_TEST_CHECK(hintsValue);
 
-  std::string hints;
-  DALI_TEST_CHECK( hintsValue->Get( hints ) );
-  DALI_TEST_CHECK( hints == "output-is-transparent" );
+  int hints;
+  ;
+  DALI_TEST_CHECK(hintsValue->Get(hints));
+  DALI_TEST_CHECK(hints == Shader::Hint::OUTPUT_IS_TRANSPARENT);
 
   Actor actor = Actor::New();
-  Toolkit::DissolveEffectSetCentralLine( actor, Vector2::ONE, Vector2::ONE, 0.0f );
-  DALI_TEST_CHECK( actor.GetPropertyIndex( "uPercentage" ) != Property::INVALID_INDEX );
+  Toolkit::DissolveEffectSetCentralLine(actor, Vector2::ONE, Vector2::ONE, 0.0f);
+  DALI_TEST_CHECK(actor.GetPropertyIndex("uPercentage") != Property::INVALID_INDEX);
 
   END_TEST;
 }
@@ -188,48 +131,39 @@ int UtcDaliCreateDissolveEffectMediumPrecision(void)
   return UtcDaliCreateDissolveEffect(false);
 }
 
-int UtcDaliCreateDissolveLocalEffect(void)
-{
-  ToolkitTestApplication application;
-
-  ShaderEffect effect = Toolkit::CreateDissolveLocalEffect(0);
-  DALI_TEST_CHECK( effect );
-
-  END_TEST;
-}
-
 int UtcDaliCreateDissolveEffect(void)
 {
   ToolkitTestApplication application;
 
   Property::Map effect = Toolkit::CreateDistanceFieldEffect();
-  DALI_TEST_CHECK( !effect.Empty() );
+  DALI_TEST_CHECK(!effect.Empty());
 
-  Property::Value* customShaderValue = effect.Find( "shader" );
-  DALI_TEST_CHECK( customShaderValue );
+  Property::Value* customShaderValue = effect.Find(Toolkit::Visual::Property::SHADER);
+  DALI_TEST_CHECK(customShaderValue);
 
   Property::Map customShader;
-  DALI_TEST_CHECK( customShaderValue->Get( customShader ) );
+  DALI_TEST_CHECK(customShaderValue->Get(customShader));
 
-  Property::Value* vertexShaderValue = customShader.Find( "vertex-shader" );
-  DALI_TEST_CHECK( !vertexShaderValue );
+  Property::Value* vertexShaderValue = customShader.Find(Visual::Shader::Property::VERTEX_SHADER);
+  DALI_TEST_CHECK(!vertexShaderValue);
 
-  Property::Value* fragmentShaderValue = customShader.Find( "fragment-shader" );
-  DALI_TEST_CHECK( fragmentShaderValue );
+  Property::Value* fragmentShaderValue = customShader.Find(Visual::Shader::Property::FRAGMENT_SHADER);
+  DALI_TEST_CHECK(fragmentShaderValue);
 
   std::string fragmentShader;
-  DALI_TEST_CHECK( fragmentShaderValue->Get( fragmentShader ) );
-  DALI_TEST_CHECK( !fragmentShader.empty() );
+  DALI_TEST_CHECK(fragmentShaderValue->Get(fragmentShader));
+  DALI_TEST_CHECK(!fragmentShader.empty());
 
-  Property::Value* gridXValue = customShader.Find( "subdivide-grid-x" );
-  DALI_TEST_CHECK( !gridXValue );
+  Property::Value* gridXValue = customShader.Find(Visual::Shader::Property::SUBDIVIDE_GRID_X);
+  DALI_TEST_CHECK(!gridXValue);
 
-  Property::Value* hintsValue = customShader.Find( "hints" );
-  DALI_TEST_CHECK( hintsValue );
+  Property::Value* hintsValue = customShader.Find(Visual::Shader::Property::HINTS);
+  DALI_TEST_CHECK(hintsValue);
 
-  std::string hints;
-  DALI_TEST_CHECK( hintsValue->Get( hints ) );
-  DALI_TEST_CHECK( hints == "output-is-transparent" );
+  int hints;
+  ;
+  DALI_TEST_CHECK(hintsValue->Get(hints));
+  DALI_TEST_CHECK(hints == Shader::Hint::OUTPUT_IS_TRANSPARENT);
 
   END_TEST;
 }
@@ -238,40 +172,33 @@ int UtcDaliCreateImageRegionEffect(void)
 {
   ToolkitTestApplication application;
 
-  ShaderEffect effect = Toolkit::CreateImageRegionEffect();
-  DALI_TEST_CHECK( effect );
+  Property::Map effect = Toolkit::CreateImageRegionEffect();
+  DALI_TEST_CHECK(!effect.Empty());
 
-  END_TEST;
-}
+  Property::Value* customShaderValue = effect.Find(Toolkit::Visual::Property::SHADER);
+  DALI_TEST_CHECK(customShaderValue);
 
-int UtcDaliCreateIrisEffect(void)
-{
-  ToolkitTestApplication application;
-
-  ShaderEffect effect = Toolkit::CreateIrisEffect();
-  DALI_TEST_CHECK( effect );
+  Property::Map customShader;
+  DALI_TEST_CHECK(customShaderValue->Get(customShader));
 
-  END_TEST;
-}
+  Property::Value* vertexShaderValue = customShader.Find(Visual::Shader::Property::VERTEX_SHADER);
+  DALI_TEST_CHECK(vertexShaderValue);
 
-int UtcDaliCreateMaskEffect(void)
-{
-  ToolkitTestApplication application;
+  std::string vertexShader;
+  DALI_TEST_CHECK(vertexShaderValue->Get(vertexShader));
+  DALI_TEST_CHECK(!vertexShader.empty());
 
-  BufferImage image = CreateBufferImage();
-  ShaderEffect effect = Toolkit::CreateMaskEffect(image);
-  DALI_TEST_CHECK( effect );
+  Property::Value* fragmentShaderValue = customShader.Find(Visual::Shader::Property::FRAGMENT_SHADER);
+  DALI_TEST_CHECK(!fragmentShaderValue);
 
-  END_TEST;
-}
+  Property::Value* gridXValue = customShader.Find(Visual::Shader::Property::SUBDIVIDE_GRID_X);
+  DALI_TEST_CHECK(!gridXValue);
 
-int UtcDaliCreateMirrorEffect(void)
-{
-  ToolkitTestApplication application;
+  Property::Value* gridYValue = customShader.Find(Visual::Shader::Property::SUBDIVIDE_GRID_Y);
+  DALI_TEST_CHECK(!gridYValue);
 
-  BufferImage image = CreateBufferImage();
-  ShaderEffect effect = Toolkit::CreateMirrorEffect();
-  DALI_TEST_CHECK( effect );
+  Property::Value* hintsValue = customShader.Find(Visual::Shader::Property::HINTS);
+  DALI_TEST_CHECK(!hintsValue);
 
   END_TEST;
 }
@@ -280,153 +207,123 @@ int UtcDaliCreateMotionBlurEffect(void)
 {
   ToolkitTestApplication application;
 
-  unsigned int sampleCount(4);
-  ShaderEffect effect = Toolkit::CreateMotionBlurEffect(sampleCount);
-  DALI_TEST_CHECK( effect );
-
-  Property::Value value = effect.GetProperty( effect.GetPropertyIndex("uNumSamples"));
-  DALI_TEST_EQUALS( value.Get<float>(), (float)sampleCount, TEST_LOCATION );
-
-  END_TEST;
-}
-
-int UtcDaliCreateMotionStretchEffect(void)
-{
-  ToolkitTestApplication application;
+  Property::Map effect = Toolkit::CreateMotionBlurEffect();
+  DALI_TEST_CHECK(!effect.Empty());
 
-  ShaderEffect effect = Toolkit::CreateMotionStretchEffect();
-  DALI_TEST_CHECK( effect );
+  Property::Value* customShaderValue = effect.Find(Toolkit::Visual::Property::SHADER);
+  DALI_TEST_CHECK(customShaderValue);
 
-  END_TEST;
-}
-
-int UtcDaliCreateOverlayEffect(void)
-{
-  ToolkitTestApplication application;
-
-  BufferImage image = CreateBufferImage();
-  ShaderEffect effect = Toolkit::CreateOverlayEffect(image);
-  DALI_TEST_CHECK( effect );
-
-  END_TEST;
-}
-
-int UtcDaliCreateQuadraticBezier(void)
-{
-  ToolkitTestApplication application;
-
-  ShaderEffect effect = Toolkit::CreateQuadraticBezier(3,false);
-  DALI_TEST_CHECK( effect );
-
-  END_TEST;
-}
-
-int UtcDaliCreateQuadraticBezierFilled(void)
-{
-  ToolkitTestApplication application;
-
-  ShaderEffect effect = Toolkit::CreateQuadraticBezier(3,true);
-  DALI_TEST_CHECK( effect );
-
-  END_TEST;
-}
+  Property::Map customShader;
+  DALI_TEST_CHECK(customShaderValue->Get(customShader));
 
-int UtcDaliCreateRipple2DEffect(void)
-{
-  ToolkitTestApplication application;
+  Property::Value* vertexShaderValue = customShader.Find(Visual::Shader::Property::VERTEX_SHADER);
+  DALI_TEST_CHECK(vertexShaderValue);
 
-  ShaderEffect effect = Toolkit::CreateRipple2DEffect();
-  DALI_TEST_CHECK( effect );
+  std::string vertexShader;
+  DALI_TEST_CHECK(vertexShaderValue->Get(vertexShader));
+  DALI_TEST_CHECK(!vertexShader.empty());
 
-  END_TEST;
-}
+  Property::Value* fragmentShaderValue = customShader.Find(Visual::Shader::Property::FRAGMENT_SHADER);
+  DALI_TEST_CHECK(fragmentShaderValue);
 
-int UtcDaliCreateRippleEffect(void)
-{
-  ToolkitTestApplication application;
+  std::string fragmentShader;
+  DALI_TEST_CHECK(fragmentShaderValue->Get(fragmentShader));
+  DALI_TEST_CHECK(!fragmentShader.empty());
 
-  ShaderEffect effect = Toolkit::CreateRippleEffect();
-  DALI_TEST_CHECK( effect );
+  Property::Value* gridXValue = customShader.Find(Visual::Shader::Property::SUBDIVIDE_GRID_X);
+  DALI_TEST_CHECK(gridXValue);
 
-  END_TEST;
-}
+  int gridX = 0;
+  DALI_TEST_CHECK(gridXValue->Get(gridX));
+  DALI_TEST_CHECK(gridX > 1);
 
-int UtcDaliCreateShearEffect(void)
-{
-  ToolkitTestApplication application;
+  Property::Value* gridYValue = customShader.Find(Visual::Shader::Property::SUBDIVIDE_GRID_Y);
+  DALI_TEST_CHECK(gridYValue);
 
-  ShaderEffect effect = Toolkit::CreateShearEffect();
-  DALI_TEST_CHECK( effect );
+  int gridY = 0;
+  DALI_TEST_CHECK(gridYValue->Get(gridY));
+  DALI_TEST_CHECK(gridY > 1);
 
-  END_TEST;
-}
+  Property::Value* hintsValue = customShader.Find(Visual::Shader::Property::HINTS);
+  DALI_TEST_CHECK(hintsValue);
 
-int UtcDaliSoftButtonEffectElliptical(void)
-{
-  ToolkitTestApplication application;
+  int hints;
+  ;
+  DALI_TEST_CHECK(hintsValue->Get(hints));
+  DALI_TEST_CHECK(hints == Shader::Hint::OUTPUT_IS_TRANSPARENT);
 
-  ShaderEffect effect = Toolkit::CreateSoftButtonEffect(Toolkit::SOFT_BUTTON_ELLIPTICAL);
-  DALI_TEST_CHECK( effect );
+  unsigned int sampleCount(4);
+  Actor        actor = Actor::New();
+  Toolkit::SetMotionBlurProperties(actor, sampleCount);
+  DALI_TEST_CHECK(actor.GetPropertyIndex("uBlurTexCoordScale") != Property::INVALID_INDEX);
+  DALI_TEST_CHECK(actor.GetPropertyIndex("uGeometryStretchFactor") != Property::INVALID_INDEX);
+  DALI_TEST_CHECK(actor.GetPropertyIndex("uSpeedScalingFactor") != Property::INVALID_INDEX);
+  DALI_TEST_CHECK(actor.GetPropertyIndex("uObjectFadeStart") != Property::INVALID_INDEX);
+  DALI_TEST_CHECK(actor.GetPropertyIndex("uObjectFadeEnd") != Property::INVALID_INDEX);
+  DALI_TEST_CHECK(actor.GetPropertyIndex("uAlphaScale") != Property::INVALID_INDEX);
+  DALI_TEST_CHECK(actor.GetPropertyIndex("uNumSamples") != Property::INVALID_INDEX);
+  DALI_TEST_CHECK(actor.GetPropertyIndex("uModelLastFrame") != Property::INVALID_INDEX);
 
   END_TEST;
 }
 
-int UtcDaliSoftButtonEffectRectangular(void)
+int UtcDaliCreateMotionStretchEffect(void)
 {
   ToolkitTestApplication application;
 
-  ShaderEffect effect = Toolkit::CreateSoftButtonEffect(Toolkit::SOFT_BUTTON_RECTANGULAR);
-  DALI_TEST_CHECK( effect );
-
-  END_TEST;
-}
-
-int UtcDaliSoftButtonEffectFixed(void)
-{
-  ToolkitTestApplication application;
+  Property::Map effect = Toolkit::CreateMotionStretchEffect();
+  DALI_TEST_CHECK(!effect.Empty());
 
-  ShaderEffect effect = Toolkit::CreateSoftButtonEffect(Toolkit::SOFT_BUTTON_FIXED);
-  DALI_TEST_CHECK( effect );
+  Property::Value* customShaderValue = effect.Find(Toolkit::Visual::Property::SHADER);
+  DALI_TEST_CHECK(customShaderValue);
 
-  END_TEST;
-}
+  Property::Map customShader;
+  DALI_TEST_CHECK(customShaderValue->Get(customShader));
 
-int UtcDaliCreateSpotEffect(void)
-{
-  ToolkitTestApplication application;
+  Property::Value* vertexShaderValue = customShader.Find(Visual::Shader::Property::VERTEX_SHADER);
+  DALI_TEST_CHECK(vertexShaderValue);
 
-  ShaderEffect effect = Toolkit::CreateSpotEffect();
-  DALI_TEST_CHECK( effect );
+  std::string vertexShader;
+  DALI_TEST_CHECK(vertexShaderValue->Get(vertexShader));
+  DALI_TEST_CHECK(!vertexShader.empty());
 
-  END_TEST;
-}
+  Property::Value* fragmentShaderValue = customShader.Find(Visual::Shader::Property::FRAGMENT_SHADER);
+  DALI_TEST_CHECK(fragmentShaderValue);
 
-int UtcDaliCreateSquareDissolveEffect(void)
-{
-  ToolkitTestApplication application;
+  std::string fragmentShader;
+  DALI_TEST_CHECK(fragmentShaderValue->Get(fragmentShader));
+  DALI_TEST_CHECK(!fragmentShader.empty());
 
-  ShaderEffect effect = Toolkit::CreateSquareDissolveEffect();
-  DALI_TEST_CHECK( effect );
+  Property::Value* gridXValue = customShader.Find(Visual::Shader::Property::SUBDIVIDE_GRID_X);
+  DALI_TEST_CHECK(gridXValue);
 
-  END_TEST;
-}
+  int gridX = 0;
+  DALI_TEST_CHECK(gridXValue->Get(gridX));
+  DALI_TEST_CHECK(gridX > 1);
 
-int UtcDaliSwirlEffect(void)
-{
-  ToolkitTestApplication application;
+  Property::Value* gridYValue = customShader.Find(Visual::Shader::Property::SUBDIVIDE_GRID_Y);
+  DALI_TEST_CHECK(gridYValue);
 
-  ShaderEffect effect = Toolkit::CreateSwirlEffect(false);
-  DALI_TEST_CHECK( effect );
+  int gridY = 0;
+  DALI_TEST_CHECK(gridYValue->Get(gridY));
+  DALI_TEST_CHECK(gridY > 1);
 
-  END_TEST;
-}
+  Property::Value* hintsValue = customShader.Find(Visual::Shader::Property::HINTS);
+  DALI_TEST_CHECK(hintsValue);
 
-int UtcDaliSwirlEffectWrap(void)
-{
-  ToolkitTestApplication application;
+  int hints;
+  ;
+  DALI_TEST_CHECK(hintsValue->Get(hints));
+  DALI_TEST_CHECK(hints == Shader::Hint::OUTPUT_IS_TRANSPARENT);
 
-  ShaderEffect effect = Toolkit::CreateSwirlEffect(true);
-  DALI_TEST_CHECK( effect );
+  Actor actor = Actor::New();
+  Toolkit::SetMotionStretchProperties(actor);
+  DALI_TEST_CHECK(actor.GetPropertyIndex("uGeometryStretchFactor") != Property::INVALID_INDEX);
+  DALI_TEST_CHECK(actor.GetPropertyIndex("uSpeedScalingFactor") != Property::INVALID_INDEX);
+  DALI_TEST_CHECK(actor.GetPropertyIndex("uObjectFadeStart") != Property::INVALID_INDEX);
+  DALI_TEST_CHECK(actor.GetPropertyIndex("uObjectFadeEnd") != Property::INVALID_INDEX);
+  DALI_TEST_CHECK(actor.GetPropertyIndex("uAlphaScale") != Property::INVALID_INDEX);
+  DALI_TEST_CHECK(actor.GetPropertyIndex("uModelLastFrame") != Property::INVALID_INDEX);
 
   END_TEST;
 }