From d723640000b8d96a3dc489c71b490664f26cfac2 Mon Sep 17 00:00:00 2001 From: Paul Wisbey Date: Mon, 11 Feb 2019 12:02:07 +0000 Subject: [PATCH] Added custom control test for Builder Change-Id: I13e841780547cb9ae98b65ee40c79bcd14a27570 --- .../src/dali-toolkit/utc-Dali-Builder.cpp | 38 ++++++++++++++++++++++ 1 file changed, 38 insertions(+) diff --git a/automated-tests/src/dali-toolkit/utc-Dali-Builder.cpp b/automated-tests/src/dali-toolkit/utc-Dali-Builder.cpp index 77439d4..4d8bfe0 100644 --- a/automated-tests/src/dali-toolkit/utc-Dali-Builder.cpp +++ b/automated-tests/src/dali-toolkit/utc-Dali-Builder.cpp @@ -28,6 +28,7 @@ #include #include #include +#include #define STRINGIFY(A)#A @@ -1791,6 +1792,43 @@ int UtcDaliBuilderBuilderControl(void) END_TEST; } +int UtcDaliBuilderCustomControl(void) +{ + ToolkitTestApplication application; + + std::string json( + "{" + "\"stage\":" + "[{" + "\"type\": \"DummyControl\"," + "\"name\": \"I can haz custom Control\"" + "}]" + "}" + ); + + Actor rootActor = Actor::New(); + Stage::GetCurrent().Add( rootActor ); + + Builder builder = Builder::New(); + builder.LoadFromString( json ); + builder.AddActors( rootActor ); + + application.SendNotification(); + application.Render(); + + Actor customControl = rootActor.FindChildByName( "I can haz custom Control" ); + + // Test that we have the correct type of custom control + DummyControl dummyControl = DummyControl::DownCast( customControl ); + DALI_TEST_CHECK( dummyControl ); + if( dummyControl ) + { + DALI_TEST_CHECK( typeid(dummyControl.GetImplementation()) == typeid(DummyControlImpl) ); + } + + END_TEST; +} + int UtcDaliBuilderActionsWithParams(void) { ToolkitTestApplication application; -- 2.7.4