aboutsummaryrefslogtreecommitdiffstats
path: root/uitest/src/test/java/com/vaadin/tests/fieldgroup/CommitWithValidationOrConversionErrorTest.java
blob: ed930f3a6c2ddeca4770987546718752c6340cd2 (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
package com.vaadin.tests.fieldgroup;

import org.junit.Test;

public class CommitWithValidationOrConversionErrorTest
        extends BasicPersonFormTest {

    private static final String UPDATED_BEAN_VALUES = "Person [firstName=John, lastName=Doever, email=john@doe.com, age=123, sex=Male, address=Address [streetAddress=John street, postalCode=11223, city=John's town, country=USA], deceased=false, salary=null, salaryDouble=null, rent=null]";
    private static final String UPDATED_NAME_BEAN_VALUES = "Person [firstName=John, lastName=Doever, email=john@doe.com, age=64, sex=Male, address=Address [streetAddress=John street, postalCode=11223, city=John's town, country=USA], deceased=false, salary=null, salaryDouble=null, rent=null]";

    @Override
    public void setup() throws Exception {
        super.setup();
        openTestURL();
    }

    @Test
    public void testCommitInvalidName() {
        getLastNameArea().setValue("Doev");
        assertCommitFails();
        assertBeanValuesUnchanged();
    }

    @Test
    public void testCommitInvalidAge() {
        // default name invalid, must be fixed or doesn't test the correct error
        getLastNameArea().setValue("Doever");

        getAgeField().setValue("64,2");
        assertCommitFails();
        assertBeanValuesUnchanged();
    }

    @Test
    public void testFixValidationError() {
        getLastNameArea().setValue("Doev");
        assertCommitFails();
        assertBeanValuesUnchanged();

        getLastNameArea().setValue("Doever");
        assertCommitSuccessful();
        showBeanValues();
        assertLogText(UPDATED_NAME_BEAN_VALUES);
    }

    @Test
    public void testFixConversionError() {
        // default name invalid, must be fixed as well
        getLastNameArea().setValue("Doever");

        getAgeField().setValue("64,2");

        assertCommitFails();
        assertBeanValuesUnchanged();

        getAgeField().setValue("123");
        assertCommitSuccessful();

        showBeanValues();
        assertLogText(UPDATED_BEAN_VALUES);
    }

    @Test
    public void testDiscardAfterSuccessfulCommit() {
        getLastNameArea().setValue("Doever");
        getAgeField().setValue("123");
        assertCommitSuccessful();

        discardChanges();
        assertLogText("Discarded changes");
        showBeanValues();
        assertLogText(UPDATED_BEAN_VALUES);
    }
}