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-Control.cpp;h=4d4a35e2b797189d49977afdff187e47b2d9b783;hp=32d16e4012aa3e81cb276eab6e00d83b6c26e116;hb=refs%2Fchanges%2F16%2F138216%2F2;hpb=5177de187f2bb2736603cbd10f99e3a50084ebc7 diff --git a/automated-tests/src/dali-toolkit/utc-Dali-Control.cpp b/automated-tests/src/dali-toolkit/utc-Dali-Control.cpp index 32d16e4..4d4a35e 100644 --- a/automated-tests/src/dali-toolkit/utc-Dali-Control.cpp +++ b/automated-tests/src/dali-toolkit/utc-Dali-Control.cpp @@ -27,6 +27,8 @@ #include #include #include +#include +#include #include "dummy-control.h" @@ -68,6 +70,9 @@ static void TestKeyInputFocusCallback( Control control ) gKeyInputFocusCallBackCalled = true; } +const char* TEST_LARGE_IMAGE_FILE_NAME = TEST_RESOURCE_DIR "/tbcol.png"; +const char* TEST_IMAGE_FILE_NAME = TEST_RESOURCE_DIR "/gallery-small-1.jpg"; + } // namespace /////////////////////////////////////////////////////////////////////////////////////////////////// @@ -803,3 +808,61 @@ int UtcDaliControlSetTransformSize(void) END_TEST; } + + +int UtcDaliControlResourcesReady(void) +{ + ToolkitTestApplication application; + tet_infoline( "Register 2 visuals and check ResourceReady when a visual is disabled" ); + + VisualFactory factory = VisualFactory::Get(); + DALI_TEST_CHECK( factory ); + + Property::Map propertyMapLarge; + propertyMapLarge.Insert( Visual::Property::TYPE, Visual::IMAGE ); + propertyMapLarge.Insert( ImageVisual::Property::URL, TEST_LARGE_IMAGE_FILE_NAME ); + + Property::Map propertyMapSmall; + propertyMapSmall.Insert( Visual::Property::TYPE, Visual::IMAGE ); + propertyMapSmall.Insert( ImageVisual::Property::URL, TEST_IMAGE_FILE_NAME ); + + Visual::Base smallVisual = factory.CreateVisual( propertyMapSmall ); + smallVisual.SetName("smallVisual"); + DALI_TEST_CHECK( smallVisual ); + + DummyControl actor = DummyControl::New(); + DummyControlImpl& dummyImpl = static_cast(actor.GetImplementation()); + dummyImpl.RegisterVisual( DummyControl::Property::TEST_VISUAL, smallVisual ); + + actor.SetSize( 200.f, 200.f ); + DALI_TEST_EQUALS( actor.GetRendererCount(), 0u, TEST_LOCATION ); + DALI_TEST_EQUALS( DevelControl::IsResourceReady( actor ), false, TEST_LOCATION ); + + Stage::GetCurrent().Add( actor ); + application.SendNotification(); + application.Render(); + + DALI_TEST_EQUALS( Test::WaitForEventThreadTrigger( 1 ), true, TEST_LOCATION ); + + application.SendNotification(); + application.Render(); + + DALI_TEST_EQUALS( actor.GetRendererCount(), 1u, TEST_LOCATION ); + DALI_TEST_EQUALS( DevelControl::IsResourceReady( actor ), true, TEST_LOCATION ); + + Visual::Base largeVisual = factory.CreateVisual( propertyMapLarge ); + largeVisual.SetName("largeVisual"); + DALI_TEST_CHECK( largeVisual ); + + tet_infoline( "Register Visual but set disabled, IsResourceReady should be true" ); + + dummyImpl.RegisterVisual( DummyControl::Property::TEST_VISUAL2, largeVisual, false ); + + application.SendNotification(); + application.Render(); + + DALI_TEST_EQUALS( actor.GetRendererCount(), 1u, TEST_LOCATION ); + DALI_TEST_EQUALS( DevelControl::IsResourceReady( actor ), true, TEST_LOCATION ); + + END_TEST; +}