ImageVisual Action::Reload added
[platform/core/uifw/dali-toolkit.git] / automated-tests / src / dali-toolkit / utc-Dali-AccessibilityManager.cpp
index 6cdb503..23200c0 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2015 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2016 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.
@@ -42,13 +42,6 @@ void utc_dali_toolkit_accessibility_manager_cleanup(void)
 namespace
 {
 
-static bool gObjectCreatedCallBackCalled;
-
-static void TestCallback(BaseHandle handle)
-{
-  gObjectCreatedCallBackCalled = true;
-}
-
 // Functors to test whether focus changed signal is emitted when the focus is changed
 class FocusChangedCallback : public Dali::ConnectionTracker
 {
@@ -137,19 +130,8 @@ int UtcDaliAccessibilityManagerGet(void)
 
   tet_infoline(" UtcDaliAccessibilityManagerGet");
 
-  AccessibilityManager manager;
-
-  //Ensure object is created by checking if it's registered
-  ObjectRegistry registry = Stage::GetCurrent().GetObjectRegistry();
-  DALI_TEST_CHECK(registry);
-
-  gObjectCreatedCallBackCalled = false;
-  registry.ObjectCreatedSignal().Connect( &TestCallback );
-  {
-    manager = AccessibilityManager::Get();
-    DALI_TEST_CHECK(manager);
-  }
-  DALI_TEST_CHECK( gObjectCreatedCallBackCalled );
+  AccessibilityManager manager = AccessibilityManager::Get();
+  DALI_TEST_CHECK(manager);
 
   AccessibilityManager newManager = AccessibilityManager::Get();
   DALI_TEST_CHECK(newManager);
@@ -991,6 +973,51 @@ int UtcDaliAccessibilityManagerSetAndGetFocusIndicator(void)
   END_TEST;
 }
 
+int UtcDaliAccessibilityManagerSetAndGetFocusIndicatorWithFocusedActor(void)
+{
+  ToolkitTestApplication application;
+
+  tet_infoline(" UtcDaliAccessibilityManagerSetAndGetFocusIndicatorWithFocusedActor");
+
+  AccessibilityManager manager = AccessibilityManager::Get();
+  DALI_TEST_CHECK(manager);
+
+  Dali::AccessibilityAdaptor accAdaptor = Dali::AccessibilityAdaptor::Get();
+  Test::AccessibilityAdaptor::SetEnabled( accAdaptor, true );
+  accAdaptor.HandleActionEnableEvent();
+
+  Actor defaultFocusIndicatorActor = manager.GetFocusIndicatorActor();
+  DALI_TEST_CHECK(defaultFocusIndicatorActor);
+
+  Actor focusedActor = Actor::New();
+  Stage::GetCurrent().Add( focusedActor );
+
+  application.SendNotification();
+  application.Render();
+
+  DALI_TEST_EQUALS( focusedActor.GetChildCount(), 0u, TEST_LOCATION );
+
+  manager.SetFocusOrder( focusedActor, 1 );
+  manager.SetCurrentFocusActor( focusedActor );
+
+  DALI_TEST_EQUALS( focusedActor.GetChildCount(), 1u, TEST_LOCATION );
+  DALI_TEST_CHECK( focusedActor.GetChildAt(0) == defaultFocusIndicatorActor );
+
+  Actor newFocusIndicatorActor = Actor::New();
+  manager.SetFocusIndicatorActor( newFocusIndicatorActor );
+  DALI_TEST_CHECK(manager.GetFocusIndicatorActor() == newFocusIndicatorActor);
+  DALI_TEST_EQUALS( focusedActor.GetChildCount(), 1u, TEST_LOCATION );
+  DALI_TEST_CHECK( focusedActor.GetChildAt(0) == newFocusIndicatorActor );
+
+  // Disable Accessibility
+  Test::AccessibilityAdaptor::SetEnabled( accAdaptor, false );
+  accAdaptor.HandleActionEnableEvent();
+
+  DALI_TEST_EQUALS( focusedActor.GetChildCount(), 0u, TEST_LOCATION );
+
+  END_TEST;
+}
+
 int UtcDaliAccessibilityManagerSignalFocusChanged(void)
 {
   ToolkitTestApplication application;
@@ -1917,6 +1944,7 @@ int UtcDaliAccessibilityManagerActionMoveToFirstSignalP(void)
   END_TEST;
 }
 
+
 int UtcDaliAccessibilityManagerActionMoveToFirstSignalN(void)
 {
   ToolkitTestApplication application;
@@ -2310,7 +2338,7 @@ int UtcDaliAccessibilityManagerActionTouch(void)
   Dali::AccessibilityAdaptor accessibilityAdaptor = Dali::AccessibilityAdaptor::Get();
 
   DummyControl dummyControl = DummyControl::New(true);
-  DummyControlImplOverride& dummyImpl = static_cast<DummyControlImplOverride&>(dummyControl.GetImplementation());
+  Impl::DummyControl& dummyImpl = static_cast<Impl::DummyControl&>(dummyControl.GetImplementation());
   dummyControl.SetSize(480, 800);
   manager.SetFocusOrder( dummyControl, 1 );
   Stage::GetCurrent().Add( dummyControl );