From 2c19fa1a574c29e7fd293d5ee789b08c44cf3da2 Mon Sep 17 00:00:00 2001 From: Damian Jansen Date: Wed, 26 Oct 2011 14:13:23 +1000 Subject: System test for TextEdit Basic tests for the QtQuick TextEdit element Change-Id: I532a6b4d3d433ac853248780ee9a6ac03c2f7275 Reviewed-by: Natalia Shubina Reviewed-by: Daniel Kovacic --- tests/system/sys_textedit.qtt | 218 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 218 insertions(+) create mode 100644 tests/system/sys_textedit.qtt (limited to 'tests/system/sys_textedit.qtt') diff --git a/tests/system/sys_textedit.qtt b/tests/system/sys_textedit.qtt new file mode 100644 index 0000000000..632da21a8f --- /dev/null +++ b/tests/system/sys_textedit.qtt @@ -0,0 +1,218 @@ +/**************************************************************************** +** +** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** All rights reserved. +** Contact: Nokia Corporation (qt-info@nokia.com) +** +** This file is part of the test suite of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** GNU Lesser General Public License Usage +** This file may be used under the terms of the GNU Lesser General Public +** License version 2.1 as published by the Free Software Foundation and +** appearing in the file LICENSE.LGPL included in the packaging of this +** file. Please review the following information to ensure the GNU Lesser +** General Public License version 2.1 requirements will be met: +** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +** +** In addition, as a special exception, Nokia gives you certain additional +** rights. These rights are described in the Nokia Qt LGPL Exception +** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU General +** Public License version 3.0 as published by the Free Software Foundation +** and appearing in the file LICENSE.GPL included in the packaging of this +** file. Please review the following information to ensure the GNU General +** Public License version 3.0 requirements will be met: +** http://www.gnu.org/copyleft/gpl.html. +** +** Other Usage +** Alternatively, this file may be used in accordance with the terms and +** conditions contained in a signed written agreement between you and Nokia. +** +** +** +** +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +//TESTED_COMPONENT=qtdeclarative + +testcase = { + + text_formatting_data: { + // Text type, autotext, plain text, rich text, styled text + BasicText: ["Basic","plain, unformatted red text","plain, unformatted red text","plain, unformatted red text","plain, unformatted red text"], + Rich: ["Rich","bold style","surrounding b,/b tags and no formatting","bold style","bold style"] + }, + + text_formatting: function(texttype,autoformat,plainformat,richformat,styledformat) { + // Test Meta-data + testTitle = "Text Formats"; + testBinary = "qmlscene tests/testapplications/text/textedit.qml"; + testGoal = "Verify that text shows correctly when displayed in different formats"; + testPreconditions = "None"; + testGroups = "BAT"; + + // Test Steps + prompt(twiki('---+++ ' + testTitle + '

+ *Goal:* ' + testGoal + '
+ *Pre-Requisites:* ' + testPreconditions + '
+ *Tested Binary:* ' + testBinary + '
+ | *Step* | *Verification* | + | Run ' + testBinary + ' | Verify that the Text application is displayed | + | Select Text: '+texttype+', Format: AutoText controls | A single line of text is shown | + | | Qt Quick should be rendered with '+autoformat+' | + | Select the Wrap: Word option | A block of text is shown | + | Select the Format: PlainText option | Qt Quick should be shown with '+plainformat+' | + | Select the Format: RichText option | Qt Quick should be shown with '+richformat+' | + | Select the Format: StyledText option | Qt Quick should be shown with '+styledformat+' |')); + }, + + text_wrapping_data: { + // Text type, No wrap, word wrap, wrap anywhere, auto wrap + Basic: ["Basic", + "two lines, wrapped at the newline (Qt Quick consists...)", + "many lines, with no broken words", + "many lines, words broken at the text boundary", + "many lines, with no broken words"], + Long: ["Long", + "one lone line", + "two lines, wrapped at the - (topboxesand...),", + "many lines, wrapped at the boundary", + "many lines, wrapped at the boundary, and specifically the - in set-top"], + Rich: ["Rich", + "two lines, wrapped at the break (Qt Quick consists...)", + "many lines, with no broken words", + "many lines, words broken at the text boundary", + "many lines, with no broken words"] + }, + + text_wrapping: function(texttype,noWrap,wordWrap,anywhereWrap,autoWrap) { + // Test Meta-data + testTitle = "Wrap Modes"; + testBinary = "qmlscene tests/testapplications/text/textedit.qml"; + testGoal = "Verify that text wraps correctly with different wrap methods and text formats"; + testPreconditions = "None"; + testGroups = "BAT"; + + // Test Steps + prompt(twiki('---+++ ' + testTitle + '

+ *Goal:* ' + testGoal + '
+ *Pre-Requisites:* ' + testPreconditions + '
+ *Tested Binary:* ' + testBinary + '
+ | *Step* | *Verification* | + | Run ' + testBinary + ' | Verify that the Text application is displayed | + | Select Text: '+texttype+', Format: AutoText controls | Verify '+noWrap+' is displayed | + | Select the Wrap: Word option | Verify '+wordWrap+' is displayed | + | Select the Wrap: Anywhere option | Verify '+anywhereWrap+' is displayed | + | Select the Wrap: Auto option | Verify '+autoWrap+' is displayed |')); + }, + + text_styling_data: { + // Text type + Basic: ["Basic"], + Long: ["Long"], + Rich: ["Rich"] + }, + + text_styling: function(texttype) { + // Test Meta-data + testTitle = "Style Effects"; + testBinary = "qmlscene tests/testapplications/text/textedit.qml"; + testGoal = "Verify that styling (underline, strikeout etc) works as intended"; + testPreconditions = "None"; + testGroups = "BAT"; + + // Test Steps + prompt(twiki('---+++ ' + testTitle + '

+ *Goal:* ' + testGoal + '
+ *Pre-Requisites:* ' + testPreconditions + '
+ *Tested Binary:* ' + testBinary + '
+ | *Step* | *Verification* | + | Run ' + testBinary + ' | Verify that the Text application is displayed | + | Select Text: '+texttype+', Wrap: WordWrap | Verify the text is displayed, wrapped if necessary | + | Select the U_Line: On option | Verify an underline is drawn under each character | + | Select the Strike: On option | Verify a strikethrough is drawn through each character |')); + }, + + select_text: function() + { + // Test meta data + testTitle = "Text Selection"; + testBinary = "qmlscene tests/testapplications/text/text.qml"; + testGoal = "Verify text can be selected via various methods"; + testPreconditions = "None"; + testGroups = "BAT"; + + // Test Steps + prompt(twiki('---+++ ' + testTitle + '

+ *Goal:* ' + testGoal + '
+ *Pre-Requisites:* ' + testPreconditions + '
+ *Tested Binary:* ' + testBinary + '
+ + | *Step* | *Verification* | + | Execute '+testBinary+' | "The TextInput item displays an editable line of text." is displayed | + | Select the Text: Short option | "Hello World" is shown | + | Press the Select Word button | World is selected | + | Press the Select All button | Hello World is selected | + | Press the Select None button | No text is selected | + | Select the Mouse: On option | | + | Drag over some text | Only that text is selected. On a touchscreen only device the virtual keyboard may show | + | Select the Mouse: Off option | | + | Press the Select None button | No text is selected | + | Drag over some text | No text is selected. On a touchscreen only device the virtual keyboard may show | ')); + }, + + cut_copy_and_paste: function() + { + // Test meta data + testTitle = "Cut, copy and paste"; + testBinary = "qmlscene tests/testapplications/text/textedit.qml"; + testGoal = "Verify selected text can be copied/cut to the clipboard, and returned"; + testPreconditions = "None"; + testGroups = "BAT"; + + // Test Steps + prompt(twiki('---+++ ' + testTitle + '

+ *Goal:* ' + testGoal + '
+ *Pre-Requisites:* ' + testPreconditions + '
+ *Tested Binary:* ' + testBinary + '
+ + | *Step* | *Verification* | + | Execute '+testBinary+' | "The TextInput item displays an editable line of text." is displayed | + | Select the Text: Short option | "Hello World" is shown | + | Press the Select All button | Hello World is selected | + | Press the Copy Button | | + | Tap at the end of the text | Text is no longer selected, cursor is at the text end | + | Press the Paste Button | "Hello WorldHello World" is shown | + | Press the Select Word button | World is highlighted | + | Press the Cut button | World is removed from the text | + | Press the Paste button | "Hello WorldHello World" is shown | ')); + }, + + activate_links: function() + { + // Test meta data + testTitle = "Link Activation"; + testBinary = "qmlscene tests/testapplications/text/textedit.qml"; + testGoal = "Verify http links in text can be activated"; + testPreconditions = "None"; + testGroups = "BAT"; + + // Test Steps + prompt(twiki('---+++ ' + testTitle + '

+ *Goal:* ' + testGoal + '
+ *Pre-Requisites:* ' + testPreconditions + '
+ *Tested Binary:* ' + testBinary + '
+ + | *Step* | *Verification* | + | Execute '+testBinary+' | "The TextInput item displays an editable line of text." is displayed | + | Select the Text: Links option | "This is a link..." is shown | + | Tap on the "Qt Docs" text | The border around the TextEdit will become red | ')); + } + +} -- cgit v1.2.3