Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
PojavLauncherTeam
GitHub Repository: PojavLauncherTeam/mobile
Path: blob/master/test/jaxp/javax/xml/jaxp/unittest/datatype/Bug6320118.java
41893 views
1
/*
2
* Copyright (c) 2014, 2021, 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
package datatype;
25
26
import javax.xml.datatype.DatatypeConfigurationException;
27
import javax.xml.datatype.DatatypeFactory;
28
import javax.xml.datatype.XMLGregorianCalendar;
29
30
import org.testng.Assert;
31
import org.testng.annotations.BeforeClass;
32
import org.testng.annotations.Listeners;
33
import org.testng.annotations.Test;
34
35
/*
36
* @test
37
* @bug 6320118
38
* @library /javax/xml/jaxp/libs /javax/xml/jaxp/unittest
39
* @run testng/othervm -DrunSecMngr=true -Djava.security.manager=allow datatype.Bug6320118
40
* @run testng/othervm datatype.Bug6320118
41
* @summary Test xml datatype XMLGregorianCalendar.
42
*/
43
@Listeners({jaxp.library.BasePolicy.class})
44
public class Bug6320118 {
45
46
DatatypeFactory df;
47
48
@BeforeClass
49
public void createDataTypeFactory() throws DatatypeConfigurationException {
50
df = DatatypeFactory.newInstance();
51
}
52
53
@Test
54
public void test1() {
55
XMLGregorianCalendar calendar = df.newXMLGregorianCalendar(1970, 1, 1, 24, 0, 0, 0, 0);
56
Assert.assertEquals(calendar.getYear(), 1970);
57
Assert.assertEquals(calendar.getMonth(), 1);
58
Assert.assertEquals(calendar.getDay(), 2);
59
Assert.assertEquals(calendar.getHour(), 0, "hour 24 needs to be treated as hour 0 of next day");
60
}
61
62
@Test
63
public void test2() {
64
XMLGregorianCalendar calendar = df.newXMLGregorianCalendarTime(24, 0, 0, 0);
65
Assert.assertEquals(calendar.getHour(), 0, "hour 24 needs to be treated as hour 0 of next day");
66
}
67
68
@Test(expectedExceptions = IllegalArgumentException.class)
69
public void test3() {
70
XMLGregorianCalendar calendar = df.newXMLGregorianCalendar();
71
// Must fail as other params are not 0 but undefined
72
calendar.setHour(24);
73
}
74
75
@Test
76
public void test4() {
77
XMLGregorianCalendar calendar = df.newXMLGregorianCalendar();
78
calendar.setTime(24, 0, 0, 0);
79
Assert.assertEquals(calendar.getHour(), 0, "hour 24 needs to be treated as hour 0 of next day");
80
}
81
82
}
83
84