2 * Copyright (c) 2015 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/public-api/dali-core.h>
19 #include <dali-test-suite-utils.h>
20 #include <mesh-builder.h>
28 int UtcDaliActorAddRendererP(void)
30 tet_infoline("Testing Actor::AddRenderer");
31 TestApplication application;
33 Actor actor = Actor::New();
35 DALI_TEST_EQUALS( actor.GetRendererCount(), 0u, TEST_LOCATION );
37 Geometry geometry = CreateQuadGeometry();
38 Material material = CreateMaterial(1.0f);
39 Renderer renderer = Renderer::New(geometry, material);
41 actor.AddRenderer( renderer );
42 DALI_TEST_EQUALS( actor.GetRendererCount(), 1u, TEST_LOCATION );
43 DALI_TEST_EQUALS( actor.GetRendererAt(0), renderer, TEST_LOCATION );
48 int UtcDaliActorAddRendererN(void)
50 tet_infoline("Testing Actor::AddRenderer");
51 TestApplication application;
53 Actor actor = Actor::New();
59 actor.AddRenderer( renderer );
60 tet_printf("Assertion test failed - no Exception\n" );
63 catch(Dali::DaliException& e)
65 DALI_TEST_PRINT_ASSERT( e );
66 DALI_TEST_ASSERT(e, "Renderer handle is empty", TEST_LOCATION);
67 DALI_TEST_EQUALS( actor.GetRendererCount(), 0u, TEST_LOCATION );
71 tet_printf("Assertion test failed - wrong Exception\n" );
78 int UtcDaliActorAddRendererOnStage(void)
80 tet_infoline("Testing Actor::AddRenderer");
81 TestApplication application;
83 Actor actor = Actor::New();
84 Stage::GetCurrent().Add(actor);
86 application.SendNotification();
87 application.Render(0);
89 Geometry geometry = CreateQuadGeometry();
90 Material material = CreateMaterial(1.0f);
91 Renderer renderer = Renderer::New(geometry, material);
93 application.SendNotification();
94 application.Render(0);
98 actor.AddRenderer( renderer );
103 tet_result(TET_FAIL);
109 int UtcDaliActorRemoveRendererP(void)
111 tet_infoline("Testing Actor::RemoveRenderer");
112 TestApplication application;
114 Actor actor = Actor::New();
116 DALI_TEST_EQUALS( actor.GetRendererCount(), 0u, TEST_LOCATION );
118 Geometry geometry = CreateQuadGeometry();
119 Material material = CreateMaterial(1.0f);
120 Renderer renderer = Renderer::New(geometry, material);
122 actor.AddRenderer( renderer );
123 DALI_TEST_EQUALS( actor.GetRendererCount(), 1u, TEST_LOCATION );
124 DALI_TEST_EQUALS( actor.GetRendererAt(0), renderer, TEST_LOCATION );
126 actor.RemoveRenderer(0);
127 DALI_TEST_EQUALS( actor.GetRendererCount(), 0u, TEST_LOCATION );