X-Git-Url: http://review.tizen.org/git/?p=platform%2Fcore%2Fuifw%2Fdali-toolkit.git;a=blobdiff_plain;f=automated-tests%2Fsrc%2Fdali-toolkit%2Futc-Dali-TextField.cpp;h=becc47ecefdf886d2ffe286891d7cff16416cd59;hp=b8fd9db652c0882843d4224c56601dcb0ccbeb09;hb=f3da11c2818c6d17706fbb2417f21b602b3190f5;hpb=7d1d83b6d0af227e5887cad6121344fe0ea2b145 diff --git a/automated-tests/src/dali-toolkit/utc-Dali-TextField.cpp b/automated-tests/src/dali-toolkit/utc-Dali-TextField.cpp index b8fd9db..becc47e 100644 --- a/automated-tests/src/dali-toolkit/utc-Dali-TextField.cpp +++ b/automated-tests/src/dali-toolkit/utc-Dali-TextField.cpp @@ -40,37 +40,40 @@ void dali_textfield_cleanup(void) namespace { -const char* const PROPERTY_NAME_RENDERING_BACKEND = "rendering-backend"; +const char* const PROPERTY_NAME_RENDERING_BACKEND = "renderingBackend"; const char* const PROPERTY_NAME_TEXT = "text"; -const char* const PROPERTY_NAME_PLACEHOLDER_TEXT = "placeholder-text"; -const char* const PROPERTY_NAME_PLACEHOLDER_TEXT_FOCUSED = "placeholder-text-focused"; -const char* const PROPERTY_NAME_FONT_FAMILY = "font-family"; -const char* const PROPERTY_NAME_FONT_STYLE = "font-style"; -const char* const PROPERTY_NAME_POINT_SIZE = "point-size"; -const char* const PROPERTY_NAME_MAX_LENGTH = "max-length"; -const char* const PROPERTY_NAME_EXCEED_POLICY = "exceed-policy"; -const char* const PROPERTY_NAME_HORIZONTAL_ALIGNMENT = "horizontal-alignment"; -const char* const PROPERTY_NAME_VERTICAL_ALIGNMENT = "vertical-alignment"; -const char* const PROPERTY_NAME_TEXT_COLOR = "text-color"; -const char* const PROPERTY_NAME_PLACEHOLDER_TEXT_COLOR = "placeholder-text-color"; -const char* const PROPERTY_NAME_SHADOW_OFFSET = "shadow-offset"; -const char* const PROPERTY_NAME_SHADOW_COLOR = "shadow-color"; -const char* const PROPERTY_NAME_PRIMARY_CURSOR_COLOR = "primary-cursor-color"; -const char* const PROPERTY_NAME_SECONDARY_CURSOR_COLOR = "secondary-cursor-color"; -const char* const PROPERTY_NAME_ENABLE_CURSOR_BLINK = "enable-cursor-blink"; -const char* const PROPERTY_NAME_CURSOR_BLINK_INTERVAL = "cursor-blink-interval"; -const char* const PROPERTY_NAME_CURSOR_BLINK_DURATION = "cursor-blink-duration"; -const char* const PROPERTY_NAME_GRAB_HANDLE_IMAGE = "grab-handle-image"; -const char* const PROPERTY_NAME_GRAB_HANDLE_PRESSED_IMAGE = "grab-handle-pressed-image"; -const char* const PROPERTY_NAME_SCROLL_THRESHOLD = "scroll-threshold"; -const char* const PROPERTY_NAME_SCROLL_SPEED = "scroll-speed"; -const char* const PROPERTY_NAME_SELECTION_HANDLE_IMAGE_LEFT = "selection-handle-image-left"; -const char* const PROPERTY_NAME_SELECTION_HANDLE_IMAGE_RIGHT = "selection-handle-image-right"; -const char* const PROPERTY_NAME_SELECTION_HANDLE_PRESSED_IMAGE_LEFT = "selection-handle-pressed-image-left"; -const char* const PROPERTY_NAME_SELECTION_HANDLE_PRESSED_IMAGE_RIGHT = "selection-handle-pressed-image-right"; -const char* const PROPERTY_NAME_SELECTION_HIGHLIGHT_COLOR = "selection-highlight-color"; -const char* const PROPERTY_NAME_DECORATION_BOUNDING_BOX = "decoration-bounding-box"; -const char* const PROPERTY_NAME_INPUT_METHOD_SETTINGS = "input-method-settings"; +const char* const PROPERTY_NAME_PLACEHOLDER_TEXT = "placeholderText"; +const char* const PROPERTY_NAME_PLACEHOLDER_TEXT_FOCUSED = "placeholderTextFocused"; +const char* const PROPERTY_NAME_FONT_FAMILY = "fontFamily"; +const char* const PROPERTY_NAME_FONT_STYLE = "fontStyle"; +const char* const PROPERTY_NAME_POINT_SIZE = "pointSize"; +const char* const PROPERTY_NAME_MAX_LENGTH = "maxLength"; +const char* const PROPERTY_NAME_EXCEED_POLICY = "exceedPolicy"; +const char* const PROPERTY_NAME_HORIZONTAL_ALIGNMENT = "horizontalAlignment"; +const char* const PROPERTY_NAME_VERTICAL_ALIGNMENT = "verticalAlignment"; +const char* const PROPERTY_NAME_TEXT_COLOR = "textColor"; +const char* const PROPERTY_NAME_PLACEHOLDER_TEXT_COLOR = "placeholderTextColor"; +const char* const PROPERTY_NAME_SHADOW_OFFSET = "shadowOffset"; +const char* const PROPERTY_NAME_SHADOW_COLOR = "shadowColor"; +const char* const PROPERTY_NAME_PRIMARY_CURSOR_COLOR = "primaryCursorColor"; +const char* const PROPERTY_NAME_SECONDARY_CURSOR_COLOR = "secondaryCursorColor"; +const char* const PROPERTY_NAME_ENABLE_CURSOR_BLINK = "enableCursorBlink"; +const char* const PROPERTY_NAME_CURSOR_BLINK_INTERVAL = "cursorBlinkInterval"; +const char* const PROPERTY_NAME_CURSOR_BLINK_DURATION = "cursorBlinkDuration"; +const char* const PROPERTY_NAME_CURSOR_WIDTH = "cursorWidth"; +const char* const PROPERTY_NAME_GRAB_HANDLE_IMAGE = "grabHandleImage"; +const char* const PROPERTY_NAME_GRAB_HANDLE_PRESSED_IMAGE = "grabHandlePressedImage"; +const char* const PROPERTY_NAME_SCROLL_THRESHOLD = "scrollThreshold"; +const char* const PROPERTY_NAME_SCROLL_SPEED = "scrollSpeed"; +const char* const PROPERTY_NAME_SELECTION_HANDLE_IMAGE_LEFT = "selectionHandleImageLeft"; +const char* const PROPERTY_NAME_SELECTION_HANDLE_IMAGE_RIGHT = "selectionHandleImageRight"; +const char* const PROPERTY_NAME_SELECTION_HANDLE_PRESSED_IMAGE_LEFT = "selectionHandlePressedImageLeft"; +const char* const PROPERTY_NAME_SELECTION_HANDLE_PRESSED_IMAGE_RIGHT = "selectionHandlePressedImageRight"; +const char* const PROPERTY_NAME_SELECTION_HANDLE_MARKER_IMAGE_LEFT = "selectionHandleMarkerImageLeft"; +const char* const PROPERTY_NAME_SELECTION_HANDLE_MARKER_IMAGE_RIGHT = "selectionHandleMarkerImageRight"; +const char* const PROPERTY_NAME_SELECTION_HIGHLIGHT_COLOR = "selectionHighlightColor"; +const char* const PROPERTY_NAME_DECORATION_BOUNDING_BOX = "decorationBoundingBox"; +const char* const PROPERTY_NAME_INPUT_METHOD_SETTINGS = "inputMethodSettings"; const int DEFAULT_RENDERING_BACKEND = Dali::Toolkit::Text::DEFAULT_RENDERING_BACKEND; @@ -245,6 +248,7 @@ int UtcDaliTextFieldGetPropertyP(void) DALI_TEST_CHECK( field.GetPropertyIndex( PROPERTY_NAME_ENABLE_CURSOR_BLINK ) == TextField::Property::ENABLE_CURSOR_BLINK ); DALI_TEST_CHECK( field.GetPropertyIndex( PROPERTY_NAME_CURSOR_BLINK_INTERVAL ) == TextField::Property::CURSOR_BLINK_INTERVAL ); DALI_TEST_CHECK( field.GetPropertyIndex( PROPERTY_NAME_CURSOR_BLINK_DURATION ) == TextField::Property::CURSOR_BLINK_DURATION ); + DALI_TEST_CHECK( field.GetPropertyIndex( PROPERTY_NAME_CURSOR_WIDTH ) == TextField::Property::CURSOR_WIDTH ); DALI_TEST_CHECK( field.GetPropertyIndex( PROPERTY_NAME_GRAB_HANDLE_IMAGE ) == TextField::Property::GRAB_HANDLE_IMAGE ); DALI_TEST_CHECK( field.GetPropertyIndex( PROPERTY_NAME_GRAB_HANDLE_PRESSED_IMAGE ) == TextField::Property::GRAB_HANDLE_PRESSED_IMAGE ); DALI_TEST_CHECK( field.GetPropertyIndex( PROPERTY_NAME_SCROLL_THRESHOLD ) == TextField::Property::SCROLL_THRESHOLD ); @@ -253,12 +257,32 @@ int UtcDaliTextFieldGetPropertyP(void) DALI_TEST_CHECK( field.GetPropertyIndex( PROPERTY_NAME_SELECTION_HANDLE_IMAGE_RIGHT ) == TextField::Property::SELECTION_HANDLE_IMAGE_RIGHT ); DALI_TEST_CHECK( field.GetPropertyIndex( PROPERTY_NAME_SELECTION_HANDLE_PRESSED_IMAGE_LEFT ) == TextField::Property::SELECTION_HANDLE_PRESSED_IMAGE_LEFT ); DALI_TEST_CHECK( field.GetPropertyIndex( PROPERTY_NAME_SELECTION_HANDLE_PRESSED_IMAGE_RIGHT ) == TextField::Property::SELECTION_HANDLE_PRESSED_IMAGE_RIGHT ); + DALI_TEST_CHECK( field.GetPropertyIndex( PROPERTY_NAME_SELECTION_HANDLE_MARKER_IMAGE_LEFT ) == TextField::Property::SELECTION_HANDLE_MARKER_IMAGE_LEFT ); + DALI_TEST_CHECK( field.GetPropertyIndex( PROPERTY_NAME_SELECTION_HANDLE_MARKER_IMAGE_RIGHT ) == TextField::Property::SELECTION_HANDLE_MARKER_IMAGE_RIGHT ); DALI_TEST_CHECK( field.GetPropertyIndex( PROPERTY_NAME_SELECTION_HIGHLIGHT_COLOR ) == TextField::Property::SELECTION_HIGHLIGHT_COLOR ); DALI_TEST_CHECK( field.GetPropertyIndex( PROPERTY_NAME_DECORATION_BOUNDING_BOX ) == TextField::Property::DECORATION_BOUNDING_BOX ); DALI_TEST_CHECK( field.GetPropertyIndex( PROPERTY_NAME_INPUT_METHOD_SETTINGS ) == TextField::Property::INPUT_METHOD_SETTINGS ); END_TEST; } +bool SetPropertyMapRetrieved( TextField& field, const Property::Index property, const std::string mapKey, const std::string mapValue ) +{ + bool result = false; + Property::Map imageMap; + imageMap[mapKey] =mapValue; + + field.SetProperty( property , imageMap ); + Property::Value propValue = field.GetProperty( property ); + Property::Map* resultMap = propValue.GetMap(); + + if ( resultMap->Find( mapKey )->Get< std::string>() == mapValue ) + { + result = true; + } + + return result; +} + // Positive test case for a method int UtcDaliTextFieldSetPropertyP(void) { @@ -266,6 +290,7 @@ int UtcDaliTextFieldSetPropertyP(void) tet_infoline(" UtcDaliToolkitTextFieldSetPropertyP"); TextField field = TextField::New(); DALI_TEST_CHECK( field ); + Stage::GetCurrent().Add( field ); // Note - we can't check the defaults since the stylesheets are platform-specific @@ -329,9 +354,11 @@ int UtcDaliTextFieldSetPropertyP(void) field.SetProperty( TextField::Property::ENABLE_CURSOR_BLINK, false ); DALI_TEST_EQUALS( field.GetProperty( TextField::Property::ENABLE_CURSOR_BLINK ), false, TEST_LOCATION ); field.SetProperty( TextField::Property::CURSOR_BLINK_INTERVAL, 1.f ); - DALI_TEST_EQUALS( field.GetProperty( TextField::Property::CURSOR_BLINK_INTERVAL ), 1.f, TEST_LOCATION ); + DALI_TEST_EQUALS( field.GetProperty( TextField::Property::CURSOR_BLINK_INTERVAL ), 1.f, Math::MACHINE_EPSILON_1000, TEST_LOCATION ); field.SetProperty( TextField::Property::CURSOR_BLINK_DURATION, 10.f ); - DALI_TEST_EQUALS( field.GetProperty( TextField::Property::CURSOR_BLINK_DURATION ), 10.f, TEST_LOCATION ); + DALI_TEST_EQUALS( field.GetProperty( TextField::Property::CURSOR_BLINK_DURATION ), 10.f, Math::MACHINE_EPSILON_1000, TEST_LOCATION ); + field.SetProperty( TextField::Property::CURSOR_WIDTH, 1 ); + DALI_TEST_EQUALS( field.GetProperty( TextField::Property::CURSOR_WIDTH ), 1, TEST_LOCATION ); // Check scroll properties. field.SetProperty( TextField::Property::SCROLL_THRESHOLD, 1.f ); @@ -345,13 +372,14 @@ int UtcDaliTextFieldSetPropertyP(void) field.SetProperty( TextField::Property::GRAB_HANDLE_PRESSED_IMAGE, "image2" ); DALI_TEST_EQUALS( field.GetProperty( TextField::Property::GRAB_HANDLE_PRESSED_IMAGE ), "image2", TEST_LOCATION ); field.SetProperty( TextField::Property::SELECTION_HANDLE_IMAGE_LEFT, "image3" ); - DALI_TEST_EQUALS( field.GetProperty( TextField::Property::SELECTION_HANDLE_IMAGE_LEFT ), "image3", TEST_LOCATION ); - field.SetProperty( TextField::Property::SELECTION_HANDLE_IMAGE_RIGHT, "image4" ); - DALI_TEST_EQUALS( field.GetProperty( TextField::Property::SELECTION_HANDLE_IMAGE_RIGHT ), "image4", TEST_LOCATION ); - field.SetProperty( TextField::Property::SELECTION_HANDLE_PRESSED_IMAGE_LEFT, "image5" ); - DALI_TEST_EQUALS( field.GetProperty( TextField::Property::SELECTION_HANDLE_PRESSED_IMAGE_LEFT ), "image5", TEST_LOCATION ); - field.SetProperty( TextField::Property::SELECTION_HANDLE_PRESSED_IMAGE_RIGHT, "image6" ); - DALI_TEST_EQUALS( field.GetProperty( TextField::Property::SELECTION_HANDLE_PRESSED_IMAGE_RIGHT ), "image6", TEST_LOCATION ); + + // Check handle images + DALI_TEST_CHECK( SetPropertyMapRetrieved( field, TextField::Property::SELECTION_HANDLE_IMAGE_LEFT, "filename", "leftHandleImage" ) ); + DALI_TEST_CHECK( SetPropertyMapRetrieved( field, TextField::Property::SELECTION_HANDLE_IMAGE_RIGHT, "filename", "rightHandleImage" ) ); + DALI_TEST_CHECK( SetPropertyMapRetrieved( field, TextField::Property::SELECTION_HANDLE_PRESSED_IMAGE_LEFT, "filename", "leftHandleImagePressed" ) ); + DALI_TEST_CHECK( SetPropertyMapRetrieved( field, TextField::Property::SELECTION_HANDLE_PRESSED_IMAGE_RIGHT, "filename", "rightHandleImagePressed" ) ); + DALI_TEST_CHECK( SetPropertyMapRetrieved( field, TextField::Property::SELECTION_HANDLE_MARKER_IMAGE_LEFT, "filename", "leftHandleMarkerImage" ) ); + DALI_TEST_CHECK( SetPropertyMapRetrieved( field, TextField::Property::SELECTION_HANDLE_MARKER_IMAGE_RIGHT, "filename", "rightHandleMarkerImage" ) ); // Check the highlight color field.SetProperty( TextField::Property::SELECTION_HIGHLIGHT_COLOR, Color::GREEN ); @@ -394,7 +422,7 @@ int utcDaliTextFieldAtlasRenderP(void) END_TEST; } -// Positive test for the text-changed signal. +// Positive test for the textChanged signal. int utcDaliTextFieldTextChangedP(void) { ToolkitTestApplication application; @@ -421,7 +449,7 @@ int utcDaliTextFieldTextChangedP(void) END_TEST; } -// Negative test for the text-changed signal. +// Negative test for the textChanged signal. int utcDaliTextFieldTextChangedN(void) { ToolkitTestApplication application; @@ -677,8 +705,8 @@ int utcDaliTextFieldEvent02(void) // Send some taps and check the cursor positions. // Try to tap at the beginning. - application.ProcessEvent( GenerateTap( Gesture::Possible, 1u, 1u, Vector2( 3.f, 25.0f ) ) ); - application.ProcessEvent( GenerateTap( Gesture::Started, 1u, 1u, Vector2( 3.f, 25.0f ) ) ); + application.ProcessEvent( GenerateTap( Gesture::Possible, 1u, 1u, Vector2( 1.f, 25.0f ) ) ); + application.ProcessEvent( GenerateTap( Gesture::Started, 1u, 1u, Vector2( 1.f, 25.0f ) ) ); // Render and notify application.SendNotification(); @@ -690,8 +718,8 @@ int utcDaliTextFieldEvent02(void) DALI_TEST_EQUALS( position2, position4, TEST_LOCATION ); // Should be in the same position2. // Tap away from the start position. - application.ProcessEvent( GenerateTap( Gesture::Possible, 1u, 1u, Vector2( 13.f, 25.0f ) ) ); - application.ProcessEvent( GenerateTap( Gesture::Started, 1u, 1u, Vector2( 13.0f, 25.0f ) ) ); + application.ProcessEvent( GenerateTap( Gesture::Possible, 1u, 1u, Vector2( 16.f, 25.0f ) ) ); + application.ProcessEvent( GenerateTap( Gesture::Started, 1u, 1u, Vector2( 16.0f, 25.0f ) ) ); // Render and notify application.SendNotification(); @@ -715,7 +743,7 @@ int utcDaliTextFieldEvent02(void) DALI_TEST_EQUALS( position2, position6, TEST_LOCATION );// Should be in the same position2. - // Should not be renderer. + // Should not be a renderer. DALI_TEST_EQUALS( offscreenRoot.GetChildCount(), 1u, TEST_LOCATION ); // The camera actor only. END_TEST;