2 * Copyright (c) 2014 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.
21 #include <dali/public-api/dali-core.h>
22 #include <dali-test-suite-utils.h>
26 void utc_dali_property_array_startup(void)
28 test_return_value = TET_UNDEF;
31 void utc_dali_property_array_cleanup(void)
33 test_return_value = TET_PASS;
36 int UtcDaliPropertyArrayPushBackP(void)
38 Property::Array array;
40 DALI_TEST_CHECK( 0 == array.Size() );
44 DALI_TEST_CHECK( 1 == array.Size() );
46 DALI_TEST_CHECK( array[0].Get<int>() == 1 );
51 int UtcDaliPropertyArrayCapacityP(void)
53 Property::Array array;
54 DALI_TEST_CHECK( array.Empty() );
58 DALI_TEST_CHECK( 3 == array.Capacity() );
62 int UtcDaliPropertyArrayReserveP(void)
64 Property::Array array;
65 DALI_TEST_CHECK( array.Empty() );
69 DALI_TEST_CHECK( 3 == array.Capacity() );
70 DALI_TEST_CHECK( 0 == array.Size() );
73 array.PushBack( "world" );
78 int UtcDaliPropertyArraySizeP(void)
80 Property::Array array;
81 DALI_TEST_CHECK( 0 == array.Capacity() );
82 DALI_TEST_CHECK( 0 == array.Size() );
86 DALI_TEST_CHECK( 3 == array.Capacity() );
87 DALI_TEST_CHECK( 0 == array.Size() );
90 array.PushBack( "world" );
93 DALI_TEST_CHECK( 3 == array.Size() );
98 int UtcDaliPropertyArrayCountP(void)
100 Property::Array array;
101 DALI_TEST_CHECK( 0 == array.Capacity() );
102 DALI_TEST_CHECK( 0 == array.Count() );
106 DALI_TEST_CHECK( 3 == array.Capacity() );
107 DALI_TEST_CHECK( 0 == array.Count() );
110 array.PushBack( "world" );
113 DALI_TEST_CHECK( 3 == array.Count() );
118 int UtcDaliPropertyArrayEmptyP(void)
120 Property::Array array;
121 DALI_TEST_CHECK( array.Empty() );
125 DALI_TEST_CHECK( array.Empty() );
128 array.PushBack( "world" );
131 DALI_TEST_CHECK( !array.Empty() );
136 int UtcDaliPropertyArrayClearP(void)
138 Property::Array array;
139 DALI_TEST_CHECK( array.Empty() );
143 DALI_TEST_CHECK( array.Empty() );
146 array.PushBack( "world" );
149 DALI_TEST_CHECK( !array.Empty() );
153 DALI_TEST_CHECK( array.Empty() );
158 int UtcDaliPropertyArrayIndexOperatorP(void)
160 Property::Array array;
164 array.PushBack( "world" );
167 DALI_TEST_CHECK( array[0].Get<int>() == 1 );
168 DALI_TEST_CHECK( array[1].Get<std::string>() == "world" );
169 DALI_TEST_CHECK( array[2].Get<int>() == 3 );
174 int UtcDaliPropertyArrayConstIndexOperatorP(void)
176 Property::Array anArray;
179 anArray.PushBack( 1 );
180 anArray.PushBack( "world" );
181 anArray.PushBack( 3 );
183 const Property::Array array(anArray);
185 DALI_TEST_CHECK( array[0].Get<int>() == 1 );
186 DALI_TEST_CHECK( array[1].Get<std::string>() == "world" );
187 DALI_TEST_CHECK( array[2].Get<int>() == 3 );
192 int UtcDaliPropertyArrayAssignmentOperatorP(void)
194 Property::Array anArray;
197 anArray.PushBack( 1 );
198 anArray.PushBack( "world" );
199 anArray.PushBack( 3 );
201 Property::Array array = anArray;
203 DALI_TEST_CHECK( array[0].Get<int>() == 1 );
204 DALI_TEST_CHECK( array[1].Get<std::string>() == "world" );
205 DALI_TEST_CHECK( array[2].Get<int>() == 3 );