X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=automated-tests%2Fsrc%2Fdali-toolkit%2Futc-Dali-ImageView.cpp;h=cc62d5455456b35a5401ad037f1ff11bdbd6bdd3;hb=8e3247866b55d0a5fbc361169eec6d40228e4fdf;hp=b00e79f4da451fb314761fd2ac295a4e6d931302;hpb=0a374bcfcf4fb906d2c8256cfee595e6193f4dbf;p=platform%2Fcore%2Fuifw%2Fdali-toolkit.git diff --git a/automated-tests/src/dali-toolkit/utc-Dali-ImageView.cpp b/automated-tests/src/dali-toolkit/utc-Dali-ImageView.cpp index b00e79f..cc62d54 100644 --- a/automated-tests/src/dali-toolkit/utc-Dali-ImageView.cpp +++ b/automated-tests/src/dali-toolkit/utc-Dali-ImageView.cpp @@ -21,6 +21,8 @@ #include #include +#include +#include using namespace Dali; using namespace Toolkit; @@ -284,6 +286,52 @@ int UtcDaliImageViewSetGetProperty02(void) END_TEST; } + +int UtcDaliImageViewSetGetProperty03(void) +{ + ToolkitTestApplication application; + + Image image = CreateBufferImage( 10, 10, Color::WHITE ); + ImageView imageView = ImageView::New(image); + Stage::GetCurrent().Add( imageView ); + application.SendNotification(); + application.Render(); + + // conventional alpha blending + Material material = imageView.GetRendererAt( 0 ).GetMaterial(); + BlendingFactor::Type srcFactorRgb; + BlendingFactor::Type destFactorRgb; + BlendingFactor::Type srcFactorAlpha; + BlendingFactor::Type destFactorAlpha; + material.GetBlendFunc(srcFactorRgb, destFactorRgb, srcFactorAlpha, destFactorAlpha); + DALI_TEST_CHECK( srcFactorRgb == BlendingFactor::SRC_ALPHA ); + DALI_TEST_CHECK( destFactorRgb == BlendingFactor::ONE_MINUS_SRC_ALPHA ); + DALI_TEST_CHECK( srcFactorAlpha == BlendingFactor::ONE ); + DALI_TEST_CHECK( destFactorAlpha == BlendingFactor::ONE_MINUS_SRC_ALPHA ); + + TestGlAbstraction& gl = application.GetGlAbstraction(); + + float alphaBlendingUniform; + DALI_TEST_CHECK( gl.GetUniformValue( "uAlphaBlending", alphaBlendingUniform ) ); + DALI_TEST_EQUALS( alphaBlendingUniform, 1.f, TEST_LOCATION ); + + // pre-multiplied alpha blending + imageView.SetProperty( Toolkit::ImageView::Property::PRE_MULTIPLIED_ALPHA, true ); + application.SendNotification(); + application.Render(); + + material.GetBlendFunc(srcFactorRgb, destFactorRgb, srcFactorAlpha, destFactorAlpha); + DALI_TEST_CHECK( srcFactorRgb == BlendingFactor::ONE ); + DALI_TEST_CHECK( destFactorRgb == BlendingFactor::ONE_MINUS_SRC_ALPHA ); + DALI_TEST_CHECK( srcFactorAlpha == BlendingFactor::ONE ); + DALI_TEST_CHECK( destFactorAlpha == BlendingFactor::ONE ); + + DALI_TEST_CHECK( gl.GetUniformValue( "uAlphaBlending", alphaBlendingUniform ) ); + DALI_TEST_EQUALS( alphaBlendingUniform, 0.f, TEST_LOCATION ); + + END_TEST; +} + int UtcDaliImageViewSizeWithBackground(void) { ToolkitTestApplication application;