[AT-SPI] More coverage 09/245109/15
authorArtur Świgoń <a.swigon@samsung.com>
Fri, 2 Oct 2020 09:26:27 +0000 (11:26 +0200)
committerArtur Świgoń <a.swigon@samsung.com>
Fri, 23 Oct 2020 13:07:01 +0000 (15:07 +0200)
Change-Id: I30b747375bffb5263d4c199712d84bfb619dcc40

automated-tests/src/dali-toolkit-internal/utc-Dali-Accessibility-Controls.cpp

index 2bd9279..bd8f3a4 100644 (file)
@@ -237,30 +237,72 @@ int UtcDaliAccessibilityTextSelectionConstructor(void)
 #include <dali-toolkit/internal/accessibility-manager/accessibility-manager-impl.h>
 int UtcDaliAccessibilityManager(void)
 {
+  using attr = Toolkit::AccessibilityManager::AccessibilityAttribute;
+
   ToolkitTestApplication application;
 
+  Dali::Accessibility::TestEnableSC(true);
+
   auto accessmanager = new Dali::Toolkit::Internal::AccessibilityManager;
-  auto actor = Dali::Actor::New();
+  auto actor = Control::New();
+
+  const std::string name = "Name";
+  const std::string descr = "Description";
+
+  accessmanager->SetAccessibilityAttribute(actor, attr::ACCESSIBILITY_LABEL, name);
+  DALI_TEST_EQUALS( accessmanager->GetAccessibilityAttribute(actor, attr::ACCESSIBILITY_LABEL), name, TEST_LOCATION );
+  DALI_TEST_EQUALS( actor.GetProperty<std::string>(DevelControl::Property::ACCESSIBILITY_NAME), name, TEST_LOCATION );
+
+  accessmanager->SetAccessibilityAttribute(actor, attr::ACCESSIBILITY_TRAIT, "Whatever");
+  DALI_TEST_EQUALS( accessmanager->GetAccessibilityAttribute(actor, attr::ACCESSIBILITY_TRAIT), "", TEST_LOCATION );
+
+  accessmanager->SetAccessibilityAttribute(actor, attr::ACCESSIBILITY_VALUE, "Whatever");
+  DALI_TEST_EQUALS( accessmanager->GetAccessibilityAttribute(actor, attr::ACCESSIBILITY_VALUE), "", TEST_LOCATION );
 
-  auto str = accessmanager->GetAccessibilityAttribute( actor, Toolkit::AccessibilityManager::AccessibilityAttribute::ACCESSIBILITY_LABEL );
-  DALI_TEST_EQUALS( str, "", TEST_LOCATION );
-  DALI_TEST_EQUALS( accessmanager->GetFocusOrder( actor ), 0, TEST_LOCATION );
+  accessmanager->SetAccessibilityAttribute(actor, attr::ACCESSIBILITY_HINT, descr);
+  DALI_TEST_EQUALS( accessmanager->GetAccessibilityAttribute(actor, attr::ACCESSIBILITY_HINT), descr, TEST_LOCATION );
+  DALI_TEST_EQUALS( actor.GetProperty<std::string>(DevelControl::Property::ACCESSIBILITY_DESCRIPTION), descr, TEST_LOCATION );
+
+  DALI_TEST_EQUALS( accessmanager->GetFocusOrder(actor), 0, TEST_LOCATION );
   DALI_TEST_EQUALS( accessmanager->GenerateNewFocusOrder(), 1, TEST_LOCATION );
-  accessmanager->GetActorByFocusOrder( 0 );
-  accessmanager->GetCurrentFocusActor();
+
+  accessmanager->SetFocusOrder({}, 0);
+  accessmanager->SetFocusOrder(Control::New(), 1);
+  accessmanager->SetFocusOrder(actor, 2);
+  accessmanager->SetFocusOrder(Control::New(), 3);
+
+  DALI_TEST_EQUALS( accessmanager->GetFocusOrder(actor), 2, TEST_LOCATION );
+  DALI_TEST_EQUALS( accessmanager->GetActorByFocusOrder(2), actor, TEST_LOCATION );
+
+  accessmanager->SetCurrentFocusActor(actor);
+  DALI_TEST_EQUALS( accessmanager->GetCurrentFocusActor(), actor, TEST_LOCATION );
+  DALI_TEST_EQUALS( accessmanager->GetCurrentFocusOrder(), 2, TEST_LOCATION );
+
+  accessmanager->MoveFocusForward();
+  accessmanager->MoveFocusBackward();
+  DALI_TEST_EQUALS( accessmanager->GetCurrentFocusActor(), actor, TEST_LOCATION );
+  accessmanager->SetCurrentFocusActor({});
+
+  accessmanager->Reset();
+  accessmanager->MoveFocusBackward();
+  accessmanager->MoveFocusForward();
+
   accessmanager->GetCurrentFocusGroup();
-  DALI_TEST_EQUALS( accessmanager->GetCurrentFocusOrder(), 0, TEST_LOCATION );
-  DALI_TEST_EQUALS( accessmanager->MoveFocusForward(), false, TEST_LOCATION );
-  DALI_TEST_EQUALS( accessmanager->MoveFocusBackward(), false, TEST_LOCATION );
-  DALI_TEST_EQUALS( accessmanager->IsFocusGroup( actor ), false, TEST_LOCATION );
-  accessmanager->GetFocusGroup( actor );
+  DALI_TEST_EQUALS( accessmanager->IsFocusGroup(actor), false, TEST_LOCATION );
+  accessmanager->GetFocusGroup(actor);
+
+  DALI_TEST_EQUALS( accessmanager->GetGroupMode(), false, TEST_LOCATION );
+  DALI_TEST_EQUALS( accessmanager->GetWrapMode(), true, TEST_LOCATION );
+
   auto vector = accessmanager->GetReadPosition();
   DALI_TEST_EQUALS( vector.x, 0.0f, TEST_LOCATION );
   DALI_TEST_EQUALS( vector.y, 0.0f, TEST_LOCATION );
-  DALI_TEST_EQUALS( accessmanager->GetGroupMode(), false, TEST_LOCATION );
-  DALI_TEST_EQUALS( accessmanager->GetWrapMode(), true, TEST_LOCATION );
+
+  accessmanager->SetFocusIndicatorActor(Dali::Actor{});
   accessmanager->GetFocusIndicatorActor();
 
+  Dali::Accessibility::TestEnableSC(false);
+
   END_TEST;
 }