Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
PojavLauncherTeam
GitHub Repository: PojavLauncherTeam/openjdk-aarch32-jdk8u
Path: blob/jdk8u272-b10-aarch32-20201026/jdk/test/java/beans/XMLEncoder/Test4625418.java
83402 views
1
/*
2
* Copyright (c) 2006, 2007, Oracle and/or its affiliates. All rights reserved.
3
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4
*
5
* This code is free software; you can redistribute it and/or modify it
6
* under the terms of the GNU General Public License version 2 only, as
7
* published by the Free Software Foundation.
8
*
9
* This code is distributed in the hope that it will be useful, but WITHOUT
10
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12
* version 2 for more details (a copy is included in the LICENSE file that
13
* accompanied this code).
14
*
15
* You should have received a copy of the GNU General Public License version
16
* 2 along with this work; if not, write to the Free Software Foundation,
17
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18
*
19
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20
* or visit www.oracle.com if you need additional information or have any
21
* questions.
22
*/
23
24
/*
25
* @test
26
* @bug 4625418
27
* @summary Tests XML <a href="http://download.java.net/jdk6/docs/technotes/guides/intl/encoding.doc.html">encoding</a>
28
* @author Sergey Malenkov
29
*
30
* @run main Test4625418 ASCII
31
* @run main Test4625418 Big5
32
* ?run main Test4625418 Big5-HKSCS
33
* ?run main Test4625418 Big5_HKSCS
34
* @run main Test4625418 Big5_Solaris
35
* ?run main Test4625418 Cp037
36
* @run main Test4625418 Cp1006
37
* ?run main Test4625418 Cp1025
38
* -run main Test4625418 Cp1026
39
* @run main Test4625418 Cp1046
40
* @run main Test4625418 Cp1047
41
* @run main Test4625418 Cp1097
42
* @run main Test4625418 Cp1098
43
* ?run main Test4625418 Cp1112
44
* ?run main Test4625418 Cp1122
45
* ?run main Test4625418 Cp1123
46
* @run main Test4625418 Cp1124
47
* ?run main Test4625418 Cp1140
48
* ?run main Test4625418 Cp1141
49
* ?run main Test4625418 Cp1142
50
* ?run main Test4625418 Cp1143
51
* ?run main Test4625418 Cp1144
52
* ?run main Test4625418 Cp1145
53
* ?run main Test4625418 Cp1146
54
* ?run main Test4625418 Cp1147
55
* ?run main Test4625418 Cp1148
56
* ?run main Test4625418 Cp1149
57
* @run main Test4625418 Cp1250
58
* @run main Test4625418 Cp1251
59
* @run main Test4625418 Cp1252
60
* @run main Test4625418 Cp1253
61
* @run main Test4625418 Cp1254
62
* @run main Test4625418 Cp1255
63
* @run main Test4625418 Cp1256
64
* @run main Test4625418 Cp1257
65
* @run main Test4625418 Cp1258
66
* ?run main Test4625418 Cp1381
67
* ?run main Test4625418 Cp1383
68
* ?run main Test4625418 Cp273
69
* ?run main Test4625418 Cp277
70
* ?run main Test4625418 Cp278
71
* ?run main Test4625418 Cp280
72
* ?run main Test4625418 Cp284
73
* ?run main Test4625418 Cp285
74
* ?run main Test4625418 Cp297
75
* ?run main Test4625418 Cp33722
76
* ?run main Test4625418 Cp420
77
* ?run main Test4625418 Cp424
78
* @run main Test4625418 Cp437
79
* ?run main Test4625418 Cp500
80
* ?run main Test4625418 Cp50220
81
* ?run main Test4625418 Cp50221
82
* @run main Test4625418 Cp737
83
* @run main Test4625418 Cp775
84
* -run main Test4625418 Cp834
85
* ?run main Test4625418 Cp838
86
* @run main Test4625418 Cp850
87
* @run main Test4625418 Cp852
88
* @run main Test4625418 Cp855
89
* @run main Test4625418 Cp856
90
* @run main Test4625418 Cp857
91
* @run main Test4625418 Cp858
92
* @run main Test4625418 Cp860
93
* @run main Test4625418 Cp861
94
* @run main Test4625418 Cp862
95
* @run main Test4625418 Cp863
96
* @run main Test4625418 Cp864
97
* @run main Test4625418 Cp865
98
* @run main Test4625418 Cp866
99
* @run main Test4625418 Cp868
100
* @run main Test4625418 Cp869
101
* ?run main Test4625418 Cp870
102
* ?run main Test4625418 Cp871
103
* @run main Test4625418 Cp874
104
* ?run main Test4625418 Cp875
105
* ?run main Test4625418 Cp918
106
* @run main Test4625418 Cp921
107
* @run main Test4625418 Cp922
108
* -run main Test4625418 Cp930
109
* @run main Test4625418 Cp933
110
* ?run main Test4625418 Cp935
111
* ?run main Test4625418 Cp937
112
* ?run main Test4625418 Cp939
113
* ?run main Test4625418 Cp942
114
* ?run main Test4625418 Cp942C
115
* @run main Test4625418 Cp943
116
* ?run main Test4625418 Cp943C
117
* @run main Test4625418 Cp948
118
* @run main Test4625418 Cp949
119
* ?run main Test4625418 Cp949C
120
* @run main Test4625418 Cp950
121
* @run main Test4625418 Cp964
122
* ?run main Test4625418 Cp970
123
* ?run main Test4625418 EUC-JP
124
* @run main Test4625418 EUC-KR
125
* @run main Test4625418 EUC_CN
126
* ?run main Test4625418 EUC_JP
127
* ?run main Test4625418 EUC_JP_LINUX
128
* ?run main Test4625418 EUC_JP_Solaris
129
* @run main Test4625418 EUC_KR
130
* ?run main Test4625418 EUC_TW
131
* @run main Test4625418 GB18030
132
* @run main Test4625418 GB2312
133
* @run main Test4625418 GBK
134
* ?run main Test4625418 IBM-Thai
135
* @run main Test4625418 IBM00858
136
* ?run main Test4625418 IBM01140
137
* ?run main Test4625418 IBM01141
138
* ?run main Test4625418 IBM01142
139
* ?run main Test4625418 IBM01143
140
* ?run main Test4625418 IBM01144
141
* ?run main Test4625418 IBM01145
142
* ?run main Test4625418 IBM01146
143
* ?run main Test4625418 IBM01147
144
* ?run main Test4625418 IBM01148
145
* ?run main Test4625418 IBM01149
146
* ?run main Test4625418 IBM037
147
* -run main Test4625418 IBM1026
148
* @run main Test4625418 IBM1047
149
* ?run main Test4625418 IBM273
150
* ?run main Test4625418 IBM277
151
* ?run main Test4625418 IBM278
152
* ?run main Test4625418 IBM280
153
* ?run main Test4625418 IBM284
154
* ?run main Test4625418 IBM285
155
* ?run main Test4625418 IBM297
156
* ?run main Test4625418 IBM420
157
* ?run main Test4625418 IBM424
158
* @run main Test4625418 IBM437
159
* ?run main Test4625418 IBM500
160
* @run main Test4625418 IBM775
161
* @run main Test4625418 IBM850
162
* @run main Test4625418 IBM852
163
* @run main Test4625418 IBM855
164
* @run main Test4625418 IBM857
165
* @run main Test4625418 IBM860
166
* @run main Test4625418 IBM861
167
* @run main Test4625418 IBM862
168
* @run main Test4625418 IBM863
169
* @run main Test4625418 IBM864
170
* @run main Test4625418 IBM865
171
* @run main Test4625418 IBM866
172
* @run main Test4625418 IBM868
173
* @run main Test4625418 IBM869
174
* ?run main Test4625418 IBM870
175
* ?run main Test4625418 IBM871
176
* ?run main Test4625418 IBM918
177
* ?run main Test4625418 ISCII91
178
* -run main Test4625418 ISO-2022-CN
179
* @run main Test4625418 ISO-2022-JP
180
* @run main Test4625418 ISO-2022-KR
181
* @run main Test4625418 ISO-8859-1
182
* @run main Test4625418 ISO-8859-13
183
* @run main Test4625418 ISO-8859-15
184
* @run main Test4625418 ISO-8859-2
185
* @run main Test4625418 ISO-8859-3
186
* @run main Test4625418 ISO-8859-4
187
* @run main Test4625418 ISO-8859-5
188
* @run main Test4625418 ISO-8859-6
189
* @run main Test4625418 ISO-8859-7
190
* @run main Test4625418 ISO-8859-8
191
* @run main Test4625418 ISO-8859-9
192
* -run main Test4625418 ISO2022CN
193
* @run main Test4625418 ISO2022JP
194
* @run main Test4625418 ISO2022KR
195
* -run main Test4625418 ISO2022_CN_CNS
196
* -run main Test4625418 ISO2022_CN_GB
197
* @run main Test4625418 ISO8859_1
198
* @run main Test4625418 ISO8859_13
199
* @run main Test4625418 ISO8859_15
200
* @run main Test4625418 ISO8859_2
201
* @run main Test4625418 ISO8859_3
202
* @run main Test4625418 ISO8859_4
203
* @run main Test4625418 ISO8859_5
204
* @run main Test4625418 ISO8859_6
205
* @run main Test4625418 ISO8859_7
206
* @run main Test4625418 ISO8859_8
207
* @run main Test4625418 ISO8859_9
208
* -run main Test4625418 JISAutoDetect
209
* ?run main Test4625418 JIS_X0201
210
* -run main Test4625418 JIS_X0212-1990
211
* @run main Test4625418 KOI8-R
212
* @run main Test4625418 KOI8-U
213
* @run main Test4625418 KOI8_R
214
* @run main Test4625418 KOI8_U
215
* @run main Test4625418 MS874
216
* ?run main Test4625418 MS932
217
* ?run main Test4625418 MS936
218
* @run main Test4625418 MS949
219
* @run main Test4625418 MS950
220
* ?run main Test4625418 MS950_HKSCS
221
* @run main Test4625418 MacArabic
222
* @run main Test4625418 MacCentralEurope
223
* @run main Test4625418 MacCroatian
224
* @run main Test4625418 MacCyrillic
225
* -run main Test4625418 MacDingbat
226
* @run main Test4625418 MacGreek
227
* @run main Test4625418 MacHebrew
228
* @run main Test4625418 MacIceland
229
* @run main Test4625418 MacRoman
230
* @run main Test4625418 MacRomania
231
* -run main Test4625418 MacSymbol
232
* @run main Test4625418 MacThai
233
* @run main Test4625418 MacTurkish
234
* @run main Test4625418 MacUkraine
235
* ?run main Test4625418 PCK
236
* ?run main Test4625418 SJIS
237
* ?run main Test4625418 Shift_JIS
238
* @run main Test4625418 TIS-620
239
* @run main Test4625418 TIS620
240
* @run main Test4625418 US-ASCII
241
* @run main Test4625418 UTF-16
242
* @run main Test4625418 UTF-16BE
243
* @run main Test4625418 UTF-16LE
244
* @run main Test4625418 UTF-32
245
* @run main Test4625418 UTF-32BE
246
* @run main Test4625418 UTF-32LE
247
* @run main Test4625418 UTF-8
248
* @run main Test4625418 UTF8
249
* @run main Test4625418 UTF_32
250
* @run main Test4625418 UTF_32BE
251
* -run main Test4625418 UTF_32BE_BOM
252
* @run main Test4625418 UTF_32LE
253
* -run main Test4625418 UTF_32LE_BOM
254
* @run main Test4625418 UnicodeBig
255
* @run main Test4625418 UnicodeBigUnmarked
256
* @run main Test4625418 UnicodeLittle
257
* @run main Test4625418 UnicodeLittleUnmarked
258
* @run main Test4625418 windows-1250
259
* @run main Test4625418 windows-1251
260
* @run main Test4625418 windows-1252
261
* @run main Test4625418 windows-1253
262
* @run main Test4625418 windows-1254
263
* @run main Test4625418 windows-1255
264
* @run main Test4625418 windows-1256
265
* @run main Test4625418 windows-1257
266
* @run main Test4625418 windows-1258
267
* ?run main Test4625418 windows-31j
268
* -run main Test4625418 x-Big5_Solaris
269
* ?run main Test4625418 x-EUC-TW
270
* @run main Test4625418 x-IBM1006
271
* ?run main Test4625418 x-IBM1025
272
* @run main Test4625418 x-IBM1046
273
* @run main Test4625418 x-IBM1097
274
* @run main Test4625418 x-IBM1098
275
* ?run main Test4625418 x-IBM1112
276
* ?run main Test4625418 x-IBM1122
277
* ?run main Test4625418 x-IBM1123
278
* @run main Test4625418 x-IBM1124
279
* ?run main Test4625418 x-IBM1381
280
* ?run main Test4625418 x-IBM1383
281
* ?run main Test4625418 x-IBM33722
282
* @run main Test4625418 x-IBM737
283
* -run main Test4625418 x-IBM834
284
* @run main Test4625418 x-IBM856
285
* @run main Test4625418 x-IBM874
286
* ?run main Test4625418 x-IBM875
287
* @run main Test4625418 x-IBM921
288
* @run main Test4625418 x-IBM922
289
* -run main Test4625418 x-IBM930
290
* @run main Test4625418 x-IBM933
291
* ?run main Test4625418 x-IBM935
292
* ?run main Test4625418 x-IBM937
293
* ?run main Test4625418 x-IBM939
294
* ?run main Test4625418 x-IBM942
295
* ?run main Test4625418 x-IBM942C
296
* @run main Test4625418 x-IBM943
297
* ?run main Test4625418 x-IBM943C
298
* @run main Test4625418 x-IBM948
299
* @run main Test4625418 x-IBM949
300
* ?run main Test4625418 x-IBM949C
301
* @run main Test4625418 x-IBM950
302
* @run main Test4625418 x-IBM964
303
* ?run main Test4625418 x-IBM970
304
* ?run main Test4625418 x-ISCII91
305
* -run main Test4625418 x-ISO2022-CN-CNS
306
* -run main Test4625418 x-ISO2022-CN-GB
307
* -run main Test4625418 x-JIS0208
308
* -run main Test4625418 x-JISAutoDetect
309
* @run main Test4625418 x-Johab
310
* ?run main Test4625418 x-MS950-HKSCS
311
* @run main Test4625418 x-MacArabic
312
* @run main Test4625418 x-MacCentralEurope
313
* @run main Test4625418 x-MacCroatian
314
* @run main Test4625418 x-MacCyrillic
315
* -run main Test4625418 x-MacDingbat
316
* @run main Test4625418 x-MacGreek
317
* @run main Test4625418 x-MacHebrew
318
* @run main Test4625418 x-MacIceland
319
* @run main Test4625418 x-MacRoman
320
* @run main Test4625418 x-MacRomania
321
* -run main Test4625418 x-MacSymbol
322
* @run main Test4625418 x-MacThai
323
* @run main Test4625418 x-MacTurkish
324
* @run main Test4625418 x-MacUkraine
325
* ?run main Test4625418 x-PCK
326
* @run main Test4625418 x-UTF-16LE-BOM
327
* -run main Test4625418 x-UTF-32BE-BOM
328
* -run main Test4625418 x-UTF-32LE-BOM
329
* ?run main Test4625418 x-euc-jp-linux
330
* ?run main Test4625418 x-eucJP-Open
331
* @run main Test4625418 x-iso-8859-11
332
* @run main Test4625418 x-mswin-936
333
* ?run main Test4625418 x-windows-50220
334
* ?run main Test4625418 x-windows-50221
335
* @run main Test4625418 x-windows-874
336
* @run main Test4625418 x-windows-949
337
* @run main Test4625418 x-windows-950
338
* ?run main Test4625418 x-windows-iso2022jp
339
*/
340
341
import java.beans.ExceptionListener;
342
import java.beans.XMLDecoder;
343
import java.beans.XMLEncoder;
344
import java.io.File;
345
import java.io.FileInputStream;
346
import java.io.FileNotFoundException;
347
import java.io.FileOutputStream;
348
import java.nio.charset.IllegalCharsetNameException;
349
import java.nio.charset.UnsupportedCharsetException;
350
351
public final class Test4625418 implements ExceptionListener {
352
public static void main(String[] args) {
353
new Test4625418(args[0]).test(createString(0x10000));
354
System.out.println("Test passed: " + args[0]);
355
}
356
357
private static String createString(int length) {
358
StringBuilder sb = new StringBuilder(length);
359
while (0 < length--)
360
sb.append((char) length);
361
362
return sb.toString();
363
}
364
365
private final String encoding;
366
367
private Test4625418(String encoding) {
368
this.encoding = encoding;
369
}
370
371
private void test(String string) {
372
try {
373
File file = new File("4625418." + this.encoding + ".xml");
374
375
FileOutputStream output = new FileOutputStream(file);
376
XMLEncoder encoder = new XMLEncoder(output, this.encoding, true, 0);
377
encoder.setExceptionListener(this);
378
encoder.writeObject(string);
379
encoder.close();
380
381
FileInputStream input = new FileInputStream(file);
382
XMLDecoder decoder = new XMLDecoder(input);
383
decoder.setExceptionListener(this);
384
Object object = decoder.readObject();
385
decoder.close();
386
387
if (!string.equals(object))
388
throw new Error(this.encoding + " - can't read properly");
389
390
file.delete();
391
}
392
catch (FileNotFoundException exception) {
393
throw new Error(this.encoding + " - file not found", exception);
394
}
395
catch (IllegalCharsetNameException exception) {
396
throw new Error(this.encoding + " - illegal charset name", exception);
397
}
398
catch (UnsupportedCharsetException exception) {
399
throw new Error(this.encoding + " - unsupported charset", exception);
400
}
401
catch (UnsupportedOperationException exception) {
402
throw new Error(this.encoding + " - unsupported encoder", exception);
403
}
404
}
405
406
public void exceptionThrown(Exception exception) {
407
throw new Error(this.encoding + " - internal", exception);
408
}
409
}
410
411