aboutsummaryrefslogtreecommitdiffstats
path: root/uitest/src/test/java/com/vaadin/tests/elements/abstracttextfield/AbstractTextElementSetValueTest.java
blob: d89437da60127e3b1156647e93b72397d6a2022e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
package com.vaadin.tests.elements.abstracttextfield;

import static org.junit.Assert.assertEquals;

import com.vaadin.testbench.elements.AbstractTextFieldElement;
import com.vaadin.testbench.elements.DateFieldElement;
import com.vaadin.testbench.elements.LabelElement;
import com.vaadin.testbench.elements.PasswordFieldElement;
import com.vaadin.testbench.elements.TextAreaElement;
import com.vaadin.testbench.elements.TextFieldElement;
import com.vaadin.testbench.elements.RichTextAreaElement;
import org.junit.Before;
import org.junit.Test;

import com.vaadin.tests.tb3.MultiBrowserTest;

public class AbstractTextElementSetValueTest extends MultiBrowserTest {
    private static final String TYPED_STRING = "this is typed string";

    @Before
    public void init() {
        openTestURL();
    }

    @Test
    public void textFieldSetValue() {
        checkType($(TextFieldElement.class).get(0),
                $(LabelElement.class).get(1));
    }

    @Test
    public void passwordFieldSetValue() {
        checkType($(PasswordFieldElement.class).get(0),
                $(LabelElement.class).get(2));
    }

    @Test
    public void textAreaSetValue() {
        checkType($(TextAreaElement.class).get(0),
                $(LabelElement.class).get(3));
    }

    @Test
    public void dateFieldSetValue() {
        DateFieldElement elem = $(DateFieldElement.class).get(0);
        LabelElement eventCount = $(LabelElement.class).get(4);
        // we can type any string in date field element
        elem.setValue(TYPED_STRING);
        // invalid values should stay unchanged
        assertEquals(TYPED_STRING, elem.getValue());
    }

    @Test
    public void richTextAreaSetValue() {
        RichTextAreaElement elem = $(RichTextAreaElement.class).get(0);
        elem.setValue(TYPED_STRING);
        String actual = elem.getValue();
        assertEquals(TYPED_STRING, actual);
    }

    // helper methods
    // checks that setValue method works
    private void checkType(AbstractTextFieldElement elem,
            LabelElement eventCount) {
        // check first that the initial value is set
        assertEquals(AbstractTextElementSetValue.INITIAL_VALUE,
                elem.getValue());
        elem.setValue(TYPED_STRING);

        // check that typed value is the same
        assertEquals(TYPED_STRING, elem.getValue());

        // checks that there was only one change value event
        assertEquals("1", eventCount.getText());

    }
}