X-Git-Url: http://review.tizen.org/git/?p=platform%2Fcore%2Fuifw%2Fdali-toolkit.git;a=blobdiff_plain;f=automated-tests%2Fsrc%2Fdali-toolkit-internal%2Futc-Dali-DebugRendering.cpp;h=8b119d45b1db3848d26b9676a629b4d8ae2acb1c;hp=b4ea19b56e6e36fd6a4b7fb53126dcd193617e06;hb=c669b77c3ed3a677855e2320be85f91c4571445f;hpb=410125f32fcd135226a2a0a668b2855ea9e17a69 diff --git a/automated-tests/src/dali-toolkit-internal/utc-Dali-DebugRendering.cpp b/automated-tests/src/dali-toolkit-internal/utc-Dali-DebugRendering.cpp old mode 100644 new mode 100755 index b4ea19b..8b119d4 --- a/automated-tests/src/dali-toolkit-internal/utc-Dali-DebugRendering.cpp +++ b/automated-tests/src/dali-toolkit-internal/utc-Dali-DebugRendering.cpp @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 Samsung Electronics Co., Ltd. + * Copyright (c) 2019 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. @@ -19,6 +19,8 @@ #include #include #include +#include +#include #include @@ -39,7 +41,10 @@ const std::string DEFAULT_FONT_DIR( "/resources/fonts" ); void TestDebugVisual( Visual::Base& visual, Visual::Type actualType, Vector2 expectedNaturalSize ) { - DALI_TEST_CHECK( &typeid( Toolkit::Internal::WireframeVisual ) == &typeid( GetImplementation(visual) ) ); + { + auto& impl = GetImplementation( visual ); + DALI_TEST_CHECK( &typeid( Toolkit::Internal::WireframeVisual ) == &typeid( impl ) ); + } Vector2 naturalSize; visual.GetNaturalSize( naturalSize ); @@ -175,14 +180,17 @@ int UtcDaliDebugRenderingGetVisual1(void) Visual::Base textVisual = factory.CreateVisual( propertyMap7 ); DALI_TEST_CHECK( textVisual ); - DALI_TEST_CHECK( &typeid( Toolkit::Internal::WireframeVisual ) == &typeid( GetImplementation(textVisual) ) ); + { + auto&& impl = GetImplementation( textVisual ); + DALI_TEST_CHECK( &typeid( Toolkit::Internal::WireframeVisual ) == &typeid( impl ) ); + } Vector2 naturalSize; textVisual.GetNaturalSize( naturalSize ); - DALI_TEST_EQUALS( naturalSize, Vector2( 80.f, 20.f ), Math::MACHINE_EPSILON_1000, TEST_LOCATION ); + DALI_TEST_EQUALS( naturalSize, Vector2( 78.f, 20.f ), Math::MACHINE_EPSILON_1000, TEST_LOCATION ); const float height = textVisual.GetHeightForWidth( 40.f ); - DALI_TEST_EQUALS( height, 40.f, Math::MACHINE_EPSILON_1000, TEST_LOCATION ); + DALI_TEST_EQUALS( height, 38.f, Math::MACHINE_EPSILON_1000, TEST_LOCATION ); // Test that NPatchVisual is replaced with debug visual // TEST_NPATCH_FILE_NAME: image_01.9.jpg @@ -238,3 +246,100 @@ int UtcDaliDebugRenderingGetVisual2(void) EnvironmentVariable::SetTestingEnvironmentVariable(false); END_TEST; } + +int UtcDaliDebugRenderingGetVisualObject01(void) +{ + EnvironmentVariable::SetTestingEnvironmentVariable( true ); + ToolkitTestApplication application; + + VisualFactory factory = VisualFactory::Get(); + DALI_TEST_CHECK( factory ); + + tet_infoline( "Create a TextVisual when debugging is enabled, thus creating a proxy Wireframe Visual" ); + + Dali::Property::Map map; + map[ Toolkit::Visual::Property::TYPE ] = Visual::TEXT; + map[ TextVisual::Property::TEXT ] = "Hello"; + + Visual::Base textVisual = factory.CreateVisual( map); + DALI_TEST_CHECK( textVisual ); + + tet_infoline( "Check that GetVisualObject returns the actual TextVisual" ); + Toolkit::Internal::Visual::Base& visualImpl = GetImplementation( textVisual ).GetVisualObject(); + DALI_TEST_CHECK( dynamic_cast< Toolkit::Internal::TextVisual* >( &visualImpl ) ); + + tet_infoline( "Compare the returned TextVisual with the visual implementation, should differ" ); + DALI_TEST_CHECK( textVisual.GetObjectPtr() != &visualImpl ); + + END_TEST; +} + +int UtcDaliDebugRenderingGetVisualObject02(void) +{ + ToolkitTestApplication application; + + VisualFactory factory = VisualFactory::Get(); + DALI_TEST_CHECK( factory ); + + tet_infoline( "Create a TextVisual without debugging enabled, thus no proxy Wireframe Visual" ); + + Dali::Property::Map map; + map[ Toolkit::Visual::Property::TYPE ] = Visual::TEXT; + map[ TextVisual::Property::TEXT ] = "Hello"; + + Visual::Base textVisual = factory.CreateVisual( map); + DALI_TEST_CHECK( textVisual ); + + tet_infoline( "Check that GetVisualObject returns the actual TextVisual" ); + Toolkit::Internal::Visual::Base& visualImpl = GetImplementation( textVisual ).GetVisualObject(); + DALI_TEST_CHECK( dynamic_cast< Toolkit::Internal::TextVisual* >( &visualImpl ) ); + + tet_infoline( "Compare the returned TextVisual with the visual implementation, should be the same" ); + DALI_TEST_CHECK( textVisual.GetObjectPtr() == &visualImpl ); + + END_TEST; +} + +int UtcDaliDebugRenderingGetVisualObject03(void) +{ + ToolkitTestApplication application; + + VisualFactory factory = VisualFactory::Get(); + DALI_TEST_CHECK( factory ); + + tet_infoline( "Create a WireframeVisual without debugging enabled, thus no proxy Wireframe Visual either" ); + + Dali::Property::Map map; + map[ Toolkit::Visual::Property::TYPE ] = Visual::WIREFRAME; + + Visual::Base textVisual = factory.CreateVisual( map); + DALI_TEST_CHECK( textVisual ); + + tet_infoline( "Check that GetVisualObject returns the WireframeVisual" ); + Toolkit::Internal::Visual::Base& visualImpl = GetImplementation( textVisual ).GetVisualObject(); + DALI_TEST_CHECK( dynamic_cast< Toolkit::Internal::WireframeVisual* >( &visualImpl ) ); + + tet_infoline( "Compare the returned Visual with the visual implementation, should be the same" ); + DALI_TEST_CHECK( textVisual.GetObjectPtr() == &visualImpl ); + + END_TEST; +} + +int UtcDaliDebugRenderingRenderText(void) +{ + EnvironmentVariable::SetTestingEnvironmentVariable( true ); + ToolkitTestApplication application; + tet_infoline( "Ensure we can render text when in debug mode" ); + + try + { + Toolkit::TextLabel label = TextLabel::New( "Hello" ); + Stage::GetCurrent().Add( label ); + DALI_TEST_CHECK( true ); + } catch( ... ) + { + DALI_TEST_CHECK( false ); + } + + END_TEST; +}