X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=automated-tests%2Fsrc%2Fdali-toolkit-internal%2Futc-Dali-Accessibility-Accessible.cpp;h=2bbdcc825ee2a6b4c8190756749a39c731990101;hb=895806b4ad86de88dcc731aeb8e3dbe453ce4202;hp=9b103e852273f8aa91145fa12491c976e5ae90d5;hpb=09502f5f09f1294ef5555e4efbf0e7e8115bfbc3;p=platform%2Fcore%2Fuifw%2Fdali-toolkit.git diff --git a/automated-tests/src/dali-toolkit-internal/utc-Dali-Accessibility-Accessible.cpp b/automated-tests/src/dali-toolkit-internal/utc-Dali-Accessibility-Accessible.cpp index 9b103e8..2bbdcc8 100644 --- a/automated-tests/src/dali-toolkit-internal/utc-Dali-Accessibility-Accessible.cpp +++ b/automated-tests/src/dali-toolkit-internal/utc-Dali-Accessibility-Accessible.cpp @@ -21,9 +21,11 @@ #include #include +#include #include -#include +#include +#include #include @@ -64,3 +66,108 @@ int utcDaliAccessibilityCheckLabelText(void) END_TEST; } + +int UtcDaliAccessibilityCheckShowingState(void) +{ + ToolkitTestApplication application; + + auto parentButton = Toolkit::PushButton::New(); + parentButton.SetProperty(Actor::Property::CLIPPING_MODE, ClippingMode::CLIP_TO_BOUNDING_BOX); + parentButton.SetProperty(Actor::Property::PARENT_ORIGIN, ParentOrigin::TOP_LEFT); + parentButton.SetProperty(Actor::Property::ANCHOR_POINT, AnchorPoint::TOP_LEFT); + parentButton.SetProperty(Actor::Property::POSITION, Dali::Vector2(0.0f, 0.0f)); + parentButton.SetProperty(Actor::Property::SIZE, Dali::Vector2(200.0f, 200.0f)); + application.GetScene().Add( parentButton ); + + // Toatally inside of parent + auto buttonA = Toolkit::PushButton::New(); + buttonA.SetProperty(Actor::Property::PARENT_ORIGIN, ParentOrigin::TOP_LEFT); + buttonA.SetProperty(Actor::Property::ANCHOR_POINT, AnchorPoint::TOP_LEFT); + buttonA.SetProperty(Actor::Property::POSITION, Dali::Vector2(0.0f, 0.0f)); + buttonA.SetProperty(Actor::Property::SIZE, Dali::Vector2(100.0f, 100.0f)); + parentButton.Add(buttonA); + + // Toatally outside of parent + auto buttonB = Toolkit::PushButton::New(); + buttonB.SetProperty(Actor::Property::PARENT_ORIGIN, ParentOrigin::TOP_LEFT); + buttonB.SetProperty(Actor::Property::ANCHOR_POINT, AnchorPoint::TOP_LEFT); + buttonB.SetProperty(Actor::Property::POSITION, Dali::Vector2(300.0f, 300.0f)); + buttonB.SetProperty(Actor::Property::SIZE, Dali::Vector2(100.0f, 100.0f)); + parentButton.Add(buttonB); + + // Partially inside of parent + auto buttonC = Toolkit::PushButton::New(); + buttonC.SetProperty(Actor::Property::PARENT_ORIGIN, ParentOrigin::TOP_LEFT); + buttonC.SetProperty(Actor::Property::ANCHOR_POINT, AnchorPoint::TOP_LEFT); + buttonC.SetProperty(Actor::Property::POSITION, Dali::Vector2(100.0f,100.0f)); + buttonC.SetProperty(Actor::Property::SIZE, Dali::Vector2(200.0f, 200.0f)); + parentButton.Add(buttonC); + + application.SendNotification(); + application.Render(16); + + auto q = Dali::Accessibility::Accessible::Get(buttonA); + DALI_TEST_CHECK(q); + auto states = q->GetStates(); + DALI_TEST_EQUALS((int) states[Dali::Accessibility::State::SHOWING], (int) true, TEST_LOCATION); + + q = Dali::Accessibility::Accessible::Get(buttonB); + DALI_TEST_CHECK(q); + states = q->GetStates(); + DALI_TEST_EQUALS((int) states[Dali::Accessibility::State::SHOWING], (int) false, TEST_LOCATION); + + q = Dali::Accessibility::Accessible::Get(buttonC); + DALI_TEST_CHECK(q); + states = q->GetStates(); + DALI_TEST_EQUALS((int) states[Dali::Accessibility::State::SHOWING], (int) true, TEST_LOCATION); + + // Make SHOWING object invisible + buttonC.SetProperty(Actor::Property::VISIBLE, false); + + application.SendNotification(); + application.Render(16); + + states = q->GetStates(); + DALI_TEST_EQUALS((int) states[Dali::Accessibility::State::SHOWING], (int) false, TEST_LOCATION); + + // Make SHOWING parent invisible + parentButton.SetProperty(Actor::Property::VISIBLE, false); + + application.SendNotification(); + application.Render(16); + + q = Dali::Accessibility::Accessible::Get(buttonA); + DALI_TEST_CHECK(q); + states = q->GetStates(); + DALI_TEST_EQUALS((int) states[Dali::Accessibility::State::SHOWING], (int) false, TEST_LOCATION); + + END_TEST; +} + +int utcDaliAccessibilityHidden(void) +{ + ToolkitTestApplication application; + + auto parent = Toolkit::Control::New(); + auto* parentAccessible = Accessibility::Accessible::Get(parent); + auto control = Toolkit::Control::New(); + auto* controlAccessible = Accessibility::Accessible::Get(control); + + parent.Add(control); + + // Check not hidden + DALI_TEST_CHECK(parentAccessible && controlAccessible); + DALI_TEST_CHECK(!controlAccessible->IsHidden()); + DALI_TEST_CHECK(!control.GetProperty(Toolkit::DevelControl::Property::ACCESSIBILITY_HIDDEN)); + DALI_TEST_EQUALS(parentAccessible->GetChildCount(), 1u, TEST_LOCATION); + DALI_TEST_EQUALS(parentAccessible->GetChildAtIndex(0), controlAccessible, TEST_LOCATION); + + control.SetProperty(Toolkit::DevelControl::Property::ACCESSIBILITY_HIDDEN, true); + + // Check hidden + DALI_TEST_CHECK(controlAccessible->IsHidden()); + DALI_TEST_CHECK(control.GetProperty(Toolkit::DevelControl::Property::ACCESSIBILITY_HIDDEN)); + DALI_TEST_EQUALS(parentAccessible->GetChildCount(), 0u, TEST_LOCATION); + + END_TEST; +}