1 /****************************************************************************
3 ** Copyright (C) 2012 Digia Plc and/or its subsidiary(-ies).
4 ** Contact: http://www.qt-project.org/legal
6 ** This file is part of the test suite of the Qt Toolkit.
8 ** $QT_BEGIN_LICENSE:BSD$
9 ** You may use this file under the terms of the BSD license as follows:
11 ** "Redistribution and use in source and binary forms, with or without
12 ** modification, are permitted provided that the following conditions are
14 ** * Redistributions of source code must retain the above copyright
15 ** notice, this list of conditions and the following disclaimer.
16 ** * Redistributions in binary form must reproduce the above copyright
17 ** notice, this list of conditions and the following disclaimer in
18 ** the documentation and/or other materials provided with the
20 ** * Neither the name of Digia Plc and its Subsidiary(-ies) nor the names
21 ** of its contributors may be used to endorse or promote products derived
22 ** from this software without specific prior written permission.
25 ** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
26 ** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
27 ** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
28 ** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
29 ** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
30 ** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
31 ** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
32 ** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
33 ** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
34 ** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
35 ** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE."
39 ****************************************************************************/
56 font.family: "Courier"
78 text: "The quick brown fox jumped over the lazy dog"
88 validator: IntValidator { id: iv; top: 20; bottom: 10; }
92 id: txtdoublevalidator
96 validator: DoubleValidator { id: dv; top: 2.0; bottom: 1.0; }
100 id: txtregexpvalidator
104 validator: RegExpValidator { id: rv; regExp: /[a-z]{3}/ }
113 function test_empty() {
114 compare(emptyText.text, "")
117 function test_family() {
118 compare(txtfamily.font.family, "Courier")
119 txtfamily.font.family = "Helvetica";
120 compare(txtfamily.font.family, "Helvetica")
123 function test_color() {
124 compare(txtcolor.color, "#ff0000")
125 txtcolor.color = "blue";
126 compare(txtcolor.color, "#0000ff")
129 function test_textentry() {
130 txtentry.focus = true;
131 compare(txtentry.text, "")
137 keyClick(Qt.Key_Space)
143 compare(txtentry.text, "hello world")
146 function test_functions() {
147 compare(txtfunctions.getText(4,9), "quick")
148 txtfunctions.select(4,9);
149 compare(txtfunctions.selectedText, "quick")
150 txtfunctions.deselect();
151 compare(txtfunctions.selectedText, "")
152 txtfunctions.select(4,9);
154 compare(txtfunctions.text, "The brown fox jumped over the lazy dog")
155 txtfunctions.text = "Qt";
156 txtfunctions.insert(txtfunctions.text.length, " ")
157 compare(txtfunctions.text, "Qt ");
158 txtfunctions.cursorPosition = txtfunctions.text.length;
159 txtfunctions.paste();
160 compare(txtfunctions.text, "Qt quick");
161 txtfunctions.cursorPosition = txtfunctions.text.length;
162 txtfunctions.selectWord();
163 compare(txtfunctions.selectedText, "quick")
165 txtfunctions.selectAll();
166 compare(txtfunctions.selectedText, "Qt quick")
167 txtfunctions.deselect();
168 compare(txtfunctions.selectedText, "")
169 txtfunctions.paste();
170 compare(txtfunctions.text, "Qt quickquick");
173 function test_intvalidators_data() {
186 tag: "onlowerbounds",
191 tag: "onupperbounds",
201 tag: "negativemiddle",
209 function test_intvalidators(row) {
210 compare(txtintvalidator.validator.top, 20)
211 compare(txtintvalidator.validator.bottom, 10)
212 txtintvalidator.text = row.testnumber;
213 compare(txtintvalidator.acceptableInput, row.acceptable)
216 function test_doublevalidators_data() {
229 tag: "onlowerbounds",
234 tag: "onupperbounds",
244 tag: "negativemiddle",
252 function test_doublevalidators(row) {
253 compare(txtdoublevalidator.validator.top, 2.0)
254 compare(txtdoublevalidator.validator.bottom, 1.0)
255 txtdoublevalidator.text = row.testnumber;
256 compare(txtdoublevalidator.acceptableInput, row.acceptable)
259 function test_regexpvalidators_data() {
280 function test_regexpvalidators(row) {
281 compare(txtregexpvalidator.validator.regExp, /[a-z]{3}/)
282 txtregexpvalidator.text = row.testtext;
283 compare(txtregexpvalidator.acceptableInput, row.acceptable)