X-Git-Url: http://review.tizen.org/git/?p=platform%2Fcore%2Fuifw%2Fdali-toolkit.git;a=blobdiff_plain;f=automated-tests%2Fsrc%2Fdali-toolkit-internal%2Futc-Dali-TextEditor-internal.cpp;h=0b18d11930ef2cfee2d9e8a53b5973665702a52d;hp=bef3f33ef1daf1dffc14b47b507f68998687eb4a;hb=19179e76939a18697e6919177a4c561586e8d30b;hpb=3ca052b397ea7a3c5667c40d5a3bf0b44d42e25d diff --git a/automated-tests/src/dali-toolkit-internal/utc-Dali-TextEditor-internal.cpp b/automated-tests/src/dali-toolkit-internal/utc-Dali-TextEditor-internal.cpp index bef3f33..0b18d11 100755 --- a/automated-tests/src/dali-toolkit-internal/utc-Dali-TextEditor-internal.cpp +++ b/automated-tests/src/dali-toolkit-internal/utc-Dali-TextEditor-internal.cpp @@ -1,5 +1,5 @@ /* - * Copyright (c) 2020 Samsung Electronics Co., Ltd. + * Copyright (c) 2021 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. @@ -90,13 +90,13 @@ int UtcDaliTextEditorMarkupUnderline(void) uint32_t expectedNumberOfUnderlinedGlyphs = 5u; Toolkit::Internal::TextEditor& textEditorImpl = GetImpl( textEditor ); - const Text::Length numberOfUnderlineRuns = textEditorImpl.getController()->GetTextModel()->GetNumberOfUnderlineRuns(); + const Text::Length numberOfUnderlineRuns = textEditorImpl.GetTextController()->GetTextModel()->GetNumberOfUnderlineRuns(); DALI_TEST_EQUALS( numberOfUnderlineRuns, expectedNumberOfUnderlinedGlyphs, TEST_LOCATION ); Vector underlineRuns; underlineRuns.Resize(numberOfUnderlineRuns); - textEditorImpl.getController()->GetTextModel()->GetUnderlineRuns(underlineRuns.Begin(), 0u, numberOfUnderlineRuns); + textEditorImpl.GetTextController()->GetTextModel()->GetUnderlineRuns(underlineRuns.Begin(), 0u, numberOfUnderlineRuns); //ABC are underlined DALI_TEST_EQUALS( underlineRuns[0u].glyphIndex, 0u, TEST_LOCATION); @@ -108,6 +108,7 @@ int UtcDaliTextEditorMarkupUnderline(void) DALI_TEST_EQUALS( underlineRuns[4u].glyphIndex, 6u, TEST_LOCATION); END_TEST; +} int UtcDaliTextEditorFontPointSizeLargerThanAtlas(void) { @@ -166,4 +167,134 @@ int UtcDaliTextEditorFontPointSizeLargerThanAtlasPlaceholderCase(void) DALI_TEST_EQUALS( countAtlas, 1, TEST_LOCATION ); END_TEST; -} \ No newline at end of file +} + +int UtcDaliTextEditorBackgroundTag(void) +{ + ToolkitTestApplication application; + tet_infoline("UtcDaliTextEditorBackgroundTag\n"); + + TextEditor editor = TextEditor::New(); + DALI_TEST_CHECK( editor ); + + editor.SetProperty( TextEditor ::Property::ENABLE_MARKUP, true ); + editor.SetProperty( TextEditor::Property::TEXT, "He World" ); + application.GetScene().Add( editor ); + application.SendNotification(); + application.Render(); + + Toolkit::Internal::TextEditor& editorImpl = GetImpl( editor ); + const ColorIndex* const backgroundColorIndicesBuffer = editorImpl.GetTextController()->GetTextModel()->GetBackgroundColorIndices(); + + DALI_TEST_CHECK( backgroundColorIndicesBuffer ); + + //default color + DALI_TEST_EQUALS( backgroundColorIndicesBuffer[0], 0u, TEST_LOCATION); + + //red color + DALI_TEST_EQUALS( backgroundColorIndicesBuffer[1], 1u, TEST_LOCATION); + + //yellow color + DALI_TEST_EQUALS( backgroundColorIndicesBuffer[7], 2u, TEST_LOCATION); + + END_TEST; +} + +int UtcDaliTextEditorTextWithSpan(void) +{ + ToolkitTestApplication application; + tet_infoline("UtcDaliTextEditorTextWithSpan\n"); + + TextEditor editor = TextEditor::New(); + DALI_TEST_CHECK( editor ); + + editor.SetProperty( TextEditor ::Property::ENABLE_MARKUP, true ); + editor.SetProperty( TextEditor::Property::TEXT, "Hello Span" ); + application.GetScene().Add( editor ); + + application.SendNotification(); + application.Render(); + + Vector3 originalSize = editor.GetNaturalSize(); + editor.SetProperty( TextEditor::Property::TEXT, "Hello Span" ); + + application.SendNotification(); + application.Render(); + + Vector3 spanSize = editor.GetNaturalSize(); + + DALI_TEST_GREATER(spanSize.width, originalSize.width, TEST_LOCATION); + + Toolkit::Internal::TextEditor& editorImpl = GetImpl( editor ); + const ColorIndex* const colorIndicesBuffer1 = editorImpl.GetTextController()->GetTextModel()->GetColorIndices(); + + DALI_TEST_CHECK( colorIndicesBuffer1 ); + + //default color + DALI_TEST_EQUALS( colorIndicesBuffer1[0], 0u, TEST_LOCATION); + + //span color + DALI_TEST_EQUALS( colorIndicesBuffer1[1], 1u, TEST_LOCATION); + + //default color + DALI_TEST_EQUALS( colorIndicesBuffer1[6], 0u, TEST_LOCATION); + + + editor.SetProperty( TextEditor::Property::TEXT, "Hello Span" ); + + application.SendNotification(); + application.Render(); + + const ColorIndex* const colorIndicesBuffer2 = editorImpl.GetTextController()->GetTextModel()->GetColorIndices(); + + DALI_TEST_CHECK( colorIndicesBuffer2 ); + + //default color + DALI_TEST_EQUALS( colorIndicesBuffer2[0], 0u, TEST_LOCATION); + + //default color + DALI_TEST_EQUALS( colorIndicesBuffer2[1], 0u, TEST_LOCATION); + + //span color + DALI_TEST_EQUALS( colorIndicesBuffer2[6], 1u, TEST_LOCATION); + + //default color + DALI_TEST_EQUALS( colorIndicesBuffer2[7], 0u, TEST_LOCATION); + + END_TEST; +} + +int UtcDaliTextEditorControlBackgroundColor(void) +{ + ToolkitTestApplication application; + tet_infoline(" UtcDaliTextEditorControlBackgroundColor\n"); + + TextEditor editor = TextEditor::New(); + DALI_TEST_CHECK(editor); + + Vector4 backgroundColor; + + editor.SetProperty(TextEditor::Property::TEXT, "Background Color"); + application.GetScene().Add(editor); + application.SendNotification(); + application.Render(); + + Toolkit::Internal::TextEditor& editorImpl = GetImpl(editor); + ControllerPtr controller = editorImpl.GetTextController(); + Controller::Impl& controllerImpl = Controller::Impl::GetImplementation(*controller.Get()); + + // Default color is transparent + controllerImpl.mEditableControlInterface->GetControlBackgroundColor(backgroundColor); + DALI_TEST_EQUALS(backgroundColor, Color::TRANSPARENT, TEST_LOCATION); + + // Set background color to red + editor.SetBackgroundColor(Color::RED); + application.SendNotification(); + application.Render(); + + // Should be red + controllerImpl.mEditableControlInterface->GetControlBackgroundColor(backgroundColor); + DALI_TEST_EQUALS(backgroundColor, Color::RED, TEST_LOCATION); + + END_TEST; +}