Subversion Repositories javautils

Rev

Rev 3 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 3 Rev 9
Line 10... Line 10...
10
       
10
       
11
        private static final String ExamplePunycode = "xn--zckzah"; // Japanese IDN Test TLD
11
        private static final String ExamplePunycode = "xn--zckzah"; // Japanese IDN Test TLD
12
        private static final String ExampleUnicode = IDN.toUnicode(ExamplePunycode);
12
        private static final String ExampleUnicode = IDN.toUnicode(ExamplePunycode);
13
       
13
       
14
        @Test
14
        @Test
15
        public void testAddressParsing() throws InvalidMailAddressException {
15
        public void testAddressParsing() {
16
                try {
16
                try {
17
                        new EMailAddress(null);
17
                        new EMailAddress(null);
18
                        fail();
18
                        fail();
19
                } catch (InvalidMailAddressException e) {
19
                } catch (NullPointerException e) {
20
                }
-
 
21
               
-
 
22
                try {
-
 
23
                        new EMailAddress("");
-
 
24
                        fail();
-
 
25
                } catch (InvalidMailAddressException e) {
-
 
26
                }
-
 
27
               
-
 
28
                try {
-
 
29
                        new EMailAddress("bla");
-
 
30
                        fail();
-
 
31
                } catch (InvalidMailAddressException e) {
-
 
32
                }
20
                }
33
               
21
               
34
                EMailAddress a;
22
                EMailAddress a;
35
               
23
               
36
//              a = new EMailAddress("@");
24
                a = new EMailAddress("");
37
//              assertEquals(a.getLocalPartUnicode(), "");
25
                assertEquals("", a.getLocalPart());
38
//              // assertEquals(a.getLocalPartASCII(), "");
26
                // assertEquals("", a.getLocalPartASCII());
39
//              assertEquals(a.getDomainPartUnicode(), "");
27
                assertEquals("", a.getDomainPartUnicode());
40
//              assertEquals(a.getDomainPartASCII(), "");
28
                assertEquals("", a.getDomainPartPunycode());
41
//              assertEquals(a.getTldUnicode(), "");
29
                assertEquals("", a.getTldUnicode());
42
//              assertEquals(a.getTldASCII(), "");
30
                assertEquals("", a.getTldPunycode());
-
 
31
                assertEquals("", a.toString());
-
 
32
                assertEquals("", a.getMailAddressUnicode());
-
 
33
                assertEquals("", a.getMailAddressPunycodedDomain());
-
 
34
 
-
 
35
                a = new EMailAddress("bla");
-
 
36
                assertEquals("bla", a.getLocalPart());
-
 
37
                // assertEquals("", a.getLocalPartASCII());
-
 
38
                assertEquals("", a.getDomainPartUnicode());
-
 
39
                assertEquals("", a.getDomainPartPunycode());
43
//              assertEquals(a.getTldUnicode(), "");
40
                assertEquals("", a.getTldUnicode());
-
 
41
                assertEquals("", a.getTldPunycode());
-
 
42
                assertEquals("bla", a.toString());
44
//              assertEquals(a.getMailAddressASCII(), "");
43
                assertEquals("bla", a.getMailAddressUnicode());
-
 
44
                assertEquals("bla", a.getMailAddressPunycodedDomain());
45
               
45
               
-
 
46
                a = new EMailAddress(ExampleUnicode);
-
 
47
                assertEquals(ExampleUnicode, a.getLocalPart());
-
 
48
                // assertEquals("", a.getLocalPartASCII());
-
 
49
                assertEquals("", a.getDomainPartUnicode());
-
 
50
                assertEquals("", a.getDomainPartPunycode());
-
 
51
                assertEquals("", a.getTldUnicode());
-
 
52
                assertEquals("", a.getTldPunycode());
-
 
53
                assertEquals(ExampleUnicode, a.toString());
-
 
54
                assertEquals(ExampleUnicode, a.getMailAddressUnicode());
-
 
55
                assertEquals(ExampleUnicode, a.getMailAddressPunycodedDomain());
46
                try {
56
 
47
                        new EMailAddress("@");
57
                a = new EMailAddress("@");
-
 
58
                assertEquals("", a.getLocalPart());
48
                        // Es wird InvalidMailAddressException anstelle von
59
                // assertEquals("", a.getLocalPartASCII());
49
                        // local="" und domain="" ausgegeben,
60
                assertEquals("", a.getDomainPartUnicode());
50
                        // weil .split nicht so wie .explode reagiert
61
                assertEquals("", a.getDomainPartPunycode());
-
 
62
                assertEquals("", a.getTldUnicode());
-
 
63
                assertEquals("", a.getTldPunycode());
51
                        fail();
64
                assertEquals("", a.toString());
52
                } catch (InvalidMailAddressException e) {
65
                assertEquals("", a.getMailAddressUnicode());
53
                }
-
 
-
 
66
                assertEquals("", a.getMailAddressPunycodedDomain());
54
 
67
 
55
                a = new EMailAddress("local@domain");
68
                a = new EMailAddress("local@domain");
56
                assertEquals(a.getLocalPart(), "local");
69
                assertEquals("local", a.getLocalPart());
57
                // assertEquals(a.getLocalPartASCII(), "local");
70
                // assertEquals("local", a.getLocalPartASCII());
58
                assertEquals(a.getDomainPartUnicode(), "domain");
71
                assertEquals("domain", a.getDomainPartUnicode());
59
                assertEquals(a.getDomainPartPunycode(), "domain");
72
                assertEquals("domain", a.getDomainPartPunycode());
60
                assertEquals(a.getTldUnicode(), "");
73
                assertEquals("", a.getTldUnicode());
61
                assertEquals(a.getTldPunycode(), "");
74
                assertEquals("", a.getTldPunycode());
62
                assertEquals(a.toString(), "local@domain");
75
                assertEquals("local@domain", a.toString());
63
                assertEquals(a.getMailAddressUnicode(), "local@domain");
76
                assertEquals("local@domain", a.getMailAddressUnicode());
64
                assertEquals(a.getMailAddressPunycodedDomain(), "local@domain");
77
                assertEquals("local@domain", a.getMailAddressPunycodedDomain());
65
 
78
 
66
                a = new EMailAddress("local@domain.tld");
79
                a = new EMailAddress("local@domain.tld");
67
                assertEquals(a.getLocalPart(), "local");
80
                assertEquals("local", a.getLocalPart());
68
                // assertEquals(a.getlocalPartASCII(), "local");
81
                // assertEquals("local", a.getlocalPartASCII());
69
                assertEquals(a.getDomainPartUnicode(), "domain.tld");
82
                assertEquals("domain.tld", a.getDomainPartUnicode());
70
                assertEquals(a.getDomainPartPunycode(), "domain.tld");
83
                assertEquals("domain.tld", a.getDomainPartPunycode());
71
                assertEquals(a.getTldUnicode(), "tld");
84
                assertEquals("tld", a.getTldUnicode());
72
                assertEquals(a.getTldPunycode(), "tld");
85
                assertEquals("tld", a.getTldPunycode());
73
                assertEquals(a.toString(), "local@domain.tld");
86
                assertEquals("local@domain.tld", a.toString());
74
                assertEquals(a.getMailAddressUnicode(), "local@domain.tld");
87
                assertEquals("local@domain.tld", a.getMailAddressUnicode());
75
                assertEquals(a.getMailAddressPunycodedDomain(), "local@domain.tld");
88
                assertEquals("local@domain.tld", a.getMailAddressPunycodedDomain());
76
               
89
               
77
                a = new EMailAddress("local@"+ExampleUnicode+".jp");
90
                a = new EMailAddress("local@"+ExampleUnicode+".jp");
78
                assertEquals(a.getLocalPart(), "local");
91
                assertEquals("local", a.getLocalPart());
79
                // assertEquals(a.getlocalPartASCII(), "local");
92
                // assertEquals("local", a.getlocalPartASCII());
80
                assertEquals(a.getDomainPartUnicode(), ExampleUnicode+".jp");
93
                assertEquals(ExampleUnicode+".jp", a.getDomainPartUnicode());
81
                assertEquals(a.getDomainPartPunycode(), ExamplePunycode+".jp");
94
                assertEquals(ExamplePunycode+".jp", a.getDomainPartPunycode());
82
                assertEquals(a.getTldUnicode(), "jp");
95
                assertEquals("jp", a.getTldUnicode());
83
                assertEquals(a.getTldPunycode(), "jp");
96
                assertEquals("jp", a.getTldPunycode());
84
                assertEquals(a.getMailAddressUnicode(), "local@"+ExampleUnicode+".jp");
97
                assertEquals("local@"+ExampleUnicode+".jp", a.getMailAddressUnicode());
85
                assertEquals(a.getMailAddressPunycodedDomain(), "local@"+ExamplePunycode+".jp");
98
                assertEquals("local@"+ExamplePunycode+".jp", a.getMailAddressPunycodedDomain());
86
                EMailAddress.USE_UNICODE_AS_STANDARD = true;
99
                EMailAddress.USE_UNICODE_AS_STANDARD = true;
87
                assertEquals(a.toString(), "local@"+ExampleUnicode+".jp");
100
                assertEquals("local@"+ExampleUnicode+".jp", a.toString());
88
                EMailAddress.USE_UNICODE_AS_STANDARD = false;
101
                EMailAddress.USE_UNICODE_AS_STANDARD = false;
89
                assertEquals(a.toString(), "local@"+ExamplePunycode+".jp");
102
                assertEquals("local@"+ExamplePunycode+".jp", a.toString());
90
 
103
 
91
                a = new EMailAddress("local@example."+ExampleUnicode);
104
                a = new EMailAddress("local@example."+ExampleUnicode);
92
                assertEquals(a.getLocalPart(), "local");
105
                assertEquals("local", a.getLocalPart());
93
                // assertEquals(a.getlocalPartASCII(), "local");
106
                // assertEquals("local", a.getlocalPartASCII());
94
                assertEquals(a.getDomainPartUnicode(), "example."+ExampleUnicode);
107
                assertEquals("example."+ExampleUnicode, a.getDomainPartUnicode());
95
                assertEquals(a.getDomainPartPunycode(), "example."+ExamplePunycode);
108
                assertEquals("example."+ExamplePunycode, a.getDomainPartPunycode());
96
                assertEquals(a.getTldUnicode(), ExampleUnicode);
109
                assertEquals(ExampleUnicode, a.getTldUnicode());
97
                assertEquals(a.getTldPunycode(), ExamplePunycode);
110
                assertEquals(ExamplePunycode, a.getTldPunycode());
98
                assertEquals(a.getMailAddressUnicode(), "local@example."+ExampleUnicode);
111
                assertEquals("local@example."+ExampleUnicode, a.getMailAddressUnicode());
99
                assertEquals(a.getMailAddressPunycodedDomain(), "local@example."+ExamplePunycode);
112
                assertEquals("local@example."+ExamplePunycode, a.getMailAddressPunycodedDomain());
100
                EMailAddress.USE_UNICODE_AS_STANDARD = true;
113
                EMailAddress.USE_UNICODE_AS_STANDARD = true;
101
                assertEquals(a.toString(), "local@example."+ExampleUnicode);
114
                assertEquals("local@example."+ExampleUnicode, a.toString());
102
                EMailAddress.USE_UNICODE_AS_STANDARD = false;
115
                EMailAddress.USE_UNICODE_AS_STANDARD = false;
103
                assertEquals(a.toString(), "local@example."+ExamplePunycode);
116
                assertEquals("local@example."+ExamplePunycode, a.toString());
104
        }
117
        }
105
       
118
       
106
        @Test
119
        @Test
107
        public void testIsUnicode() {
120
        public void testIsUnicode() {
108
                assertFalse(EMailAddress.isUnicode(null));
121
                assertFalse(EMailAddress.isUnicode(null));
Line 118... Line 131...
118
                assertTrue(EMailAddress.isPunycode(ExamplePunycode));
131
                assertTrue(EMailAddress.isPunycode(ExamplePunycode));
119
                assertFalse(EMailAddress.isPunycode(ExampleUnicode));
132
                assertFalse(EMailAddress.isPunycode(ExampleUnicode));
120
        }
133
        }
121
       
134
       
122
        @Test
135
        @Test
123
        public void testClone() throws InvalidMailAddressException, CloneNotSupportedException {
136
        public void testClone() throws CloneNotSupportedException {
124
                EMailAddress a = new EMailAddress("local@example."+ExampleUnicode);
137
                EMailAddress a = new EMailAddress("local@example."+ExampleUnicode);
125
                EMailAddress b = (EMailAddress) a.clone();
138
                EMailAddress b = (EMailAddress) a.clone();
126
               
139
               
127
                assertFalse(a == b);
140
                assertFalse(a == b);
128
                assertTrue(a.equals(b));
141
                assertTrue(a.equals(b));
129
                assertTrue(b.equals(a));
142
                assertTrue(b.equals(a));
130
               
143
               
131
                assertEquals(a.getDomainPartPunycode(), b.getDomainPartPunycode());
144
                assertEquals(b.getDomainPartPunycode(), a.getDomainPartPunycode());
132
                assertEquals(a.getDomainPartUnicode(), b.getDomainPartUnicode());
145
                assertEquals(b.getDomainPartUnicode(), a.getDomainPartUnicode());
133
                assertEquals(a.getLocalPart(), b.getLocalPart());
146
                assertEquals(b.getLocalPart(), a.getLocalPart());
134
                assertEquals(a.getMailAddressPunycodedDomain(), b.getMailAddressPunycodedDomain());
147
                assertEquals(b.getMailAddressPunycodedDomain(), a.getMailAddressPunycodedDomain());
135
                assertEquals(a.getMailAddressUnicode(), b.getMailAddressUnicode());
148
                assertEquals(b.getMailAddressUnicode(), a.getMailAddressUnicode());
136
                assertEquals(a.getTldPunycode(), b.getTldPunycode());
149
                assertEquals(b.getTldPunycode(), a.getTldPunycode());
137
                assertEquals(a.getTldUnicode(), b.getTldUnicode());
150
                assertEquals(b.getTldUnicode(), a.getTldUnicode());
138
                EMailAddress.USE_UNICODE_AS_STANDARD = true;
151
                EMailAddress.USE_UNICODE_AS_STANDARD = true;
139
                assertEquals(a.toString(), b.toString());
152
                assertEquals(b.toString(), a.toString());
140
                EMailAddress.USE_UNICODE_AS_STANDARD = false;
153
                EMailAddress.USE_UNICODE_AS_STANDARD = false;
141
                assertEquals(a.toString(), b.toString());
154
                assertEquals(b.toString(), a.toString());
142
        }
155
        }
143
       
156
       
144
        @Test
157
        @Test
145
        public void testEquals() throws InvalidMailAddressException {
158
        public void testEquals() {
146
                EMailAddress a = new EMailAddress("local@example."+ExampleUnicode);
159
                EMailAddress a = new EMailAddress("local@example."+ExampleUnicode);
147
                EMailAddress b = new EMailAddress("local@example."+ExampleUnicode);
160
                EMailAddress b = new EMailAddress("local@example."+ExampleUnicode);
148
               
161
               
149
                assertFalse(a == b);
162
                assertFalse(a == b);
150
                assertTrue(a.equals(b));
163
                assertTrue(a.equals(b));