2 * Copyright (c) 2017 Samsung Electronics Co., Ltd.
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
8 * http://www.apache.org/licenses/LICENSE-2.0
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
18 #include <dali-toolkit-test-suite-utils.h>
19 #include <dali-toolkit/internal/helpers/property-helper.h>
21 #include <automated-tests/src/dali-toolkit-internal/dali-toolkit-test-utils/dbus-wrapper.h>
24 using namespace Dali::Toolkit;
26 void dali_property_helper_startup(void)
28 test_return_value = TET_UNDEF;
29 DBusWrapper::Install(std::unique_ptr<DBusWrapper>(new TestDBusWrapper));
32 void dali_property_helper_cleanup(void)
34 test_return_value = TET_PASS;
37 int UtcDaliPropertyHelperGetStringFromPropertyWithString(void)
39 tet_infoline( "Test to check if a simple string is parsed correctly" );
41 const std::string inputString = "Hello World";
42 Property::Value value( inputString );
45 DALI_TEST_CHECK( Toolkit::Internal::GetStringFromProperty( value, output ) );
46 DALI_TEST_EQUALS( output, inputString, TEST_LOCATION );
51 int UtcDaliPropertyHelperGetStringFromPropertyWithEmptyValue(void)
53 tet_infoline( "Test to ensure if an empty value returns false" );
56 DALI_TEST_CHECK( ! Toolkit::Internal::GetStringFromProperty( Property::Value(), output ) );
61 int UtcDaliPropertyHelperGetStringFromPropertyWithStringArray(void)
63 tet_infoline( "Test to check if a string array is parsed correctly and adds new line characters too" );
65 Property::Value value( Property::Array().Add( "Hello World" )
66 .Add( "The Quick Brown Fox" )
67 .Add( "Jumps over the lazy dog" ) );
70 DALI_TEST_CHECK( Toolkit::Internal::GetStringFromProperty( value, output ) );
71 DALI_TEST_CHECK( output.find( "Hello World\n" ) != std::string::npos );
72 DALI_TEST_CHECK( output.find( "The Quick Brown Fox\n" ) != std::string::npos );
73 DALI_TEST_CHECK( output.find( "Jumps over the lazy dog\n" ) != std::string::npos );
78 int UtcDaliPropertyHelperGetStringFromPropertyWithEmptyArray(void)
80 tet_infoline( "Test to check if an empty array returns false" );
82 Property::Array array;
85 DALI_TEST_CHECK( ! Toolkit::Internal::GetStringFromProperty( Property::Value( array ), output ) );
90 int UtcDaliPropertyHelperGetStringFromPropertyWithMultipleTypesInArray(void)
92 tet_infoline( "Test to ensure an array with multiple types returns false" );
94 Property::Value value( Property::Array().Add( "Hello World" )
95 .Add( "The Quick Brown Fox" )
102 DALI_TEST_CHECK( ! Toolkit::Internal::GetStringFromProperty( value, output ) );
103 DALI_TEST_CHECK( output.empty() );