tbel fix_bug tbDate parameters Locale and TZ as String
This commit is contained in:
parent
39b0959c77
commit
a246b3c4a7
@ -58,15 +58,15 @@ public class TbDate implements Serializable, Cloneable {
|
|||||||
this.instant = parseInstant(s);
|
this.instant = parseInstant(s);
|
||||||
}
|
}
|
||||||
|
|
||||||
public TbDate(String s, String pattern, Locale locale) {
|
public TbDate(String s, String pattern) {
|
||||||
instant = parseInstant(s, pattern, locale, ZoneId.systemDefault());
|
instant = parseInstant(s, pattern, localeUTC, ZoneId.systemDefault());
|
||||||
}
|
}
|
||||||
public TbDate(String s, String pattern, Locale locale, String zoneIdStr) {
|
|
||||||
ZoneId zoneId = ZoneId.of(zoneIdStr);
|
public TbDate(String s, String pattern, String localeStr) {
|
||||||
instant = parseInstant(s, pattern, locale, zoneId);
|
instant = parseInstant(s, pattern, Locale.forLanguageTag(localeStr), ZoneId.systemDefault());
|
||||||
}
|
}
|
||||||
public TbDate(String s, String pattern, Locale locale, ZoneId zoneId) {
|
public TbDate(String s, String pattern, String localeStr, String zoneIdStr) {
|
||||||
instant = parseInstant(s, pattern, locale, zoneId);
|
instant = parseInstant(s, pattern, Locale.forLanguageTag(localeStr), ZoneId.of(zoneIdStr));
|
||||||
}
|
}
|
||||||
|
|
||||||
public TbDate(long dateMilliSecond) {
|
public TbDate(long dateMilliSecond) {
|
||||||
|
|||||||
@ -154,7 +154,7 @@ class TbDateTest {
|
|||||||
void testToLocaleDateString() {
|
void testToLocaleDateString() {
|
||||||
String s = "02:15:30 PM, Sun 10/09/2022";
|
String s = "02:15:30 PM, Sun 10/09/2022";
|
||||||
String pattern = "hh:mm:ss a, EEE M/d/uuuu";
|
String pattern = "hh:mm:ss a, EEE M/d/uuuu";
|
||||||
TbDate d = new TbDate(s, pattern, Locale.US);
|
TbDate d = new TbDate(s, pattern, "en-US");
|
||||||
// tz = local
|
// tz = local
|
||||||
int localOffsetHrs = ZoneId.systemDefault().getRules().getOffset(d.getInstant()).getTotalSeconds()/60/60;
|
int localOffsetHrs = ZoneId.systemDefault().getRules().getOffset(d.getInstant()).getTotalSeconds()/60/60;
|
||||||
int hrs = 14 - localOffsetHrs;
|
int hrs = 14 - localOffsetHrs;
|
||||||
@ -167,9 +167,9 @@ class TbDateTest {
|
|||||||
Assert.assertEquals("2023-08-06T08:04:05Z", d.toISOString());
|
Assert.assertEquals("2023-08-06T08:04:05Z", d.toISOString());
|
||||||
|
|
||||||
s = "02:15:30 PM, Sun 10/09/2022";
|
s = "02:15:30 PM, Sun 10/09/2022";
|
||||||
d = new TbDate(s, pattern, Locale.US, "-04:00");
|
d = new TbDate(s, pattern, "en-US", "-04:00");
|
||||||
Assert.assertEquals("2022-10-09T18:15:30Z", d.toISOString());
|
Assert.assertEquals("2022-10-09T18:15:30Z", d.toISOString());
|
||||||
d = new TbDate(s, pattern, Locale.US, "America/New_York");
|
d = new TbDate(s, pattern,"en-US", "America/New_York");
|
||||||
Assert.assertEquals("2022-10-09T18:15:30Z", d.toISOString());
|
Assert.assertEquals("2022-10-09T18:15:30Z", d.toISOString());
|
||||||
// tz = "+02:00"
|
// tz = "+02:00"
|
||||||
/**
|
/**
|
||||||
@ -179,12 +179,12 @@ class TbDateTest {
|
|||||||
* `{ "AM", "PM" }`
|
* `{ "AM", "PM" }`
|
||||||
*/
|
*/
|
||||||
s = "09:15:30 nachm., So. 10/09/2022";
|
s = "09:15:30 nachm., So. 10/09/2022";
|
||||||
d = new TbDate(s, pattern, Locale.GERMAN, ZoneId.of("Europe/Berlin"));
|
d = new TbDate(s, pattern, "de","Europe/Berlin");
|
||||||
Assert.assertEquals("2022-10-09T19:15:30Z", d.toISOString());
|
Assert.assertEquals("2022-10-09T19:15:30Z", d.toISOString());
|
||||||
|
|
||||||
s = "02:15:30 пп, середа, 4 жовтня 2023 р.";
|
s = "02:15:30 пп, середа, 4 жовтня 2023 р.";
|
||||||
pattern = "hh:mm:ss a, EEEE, d MMMM y 'р.'";
|
pattern = "hh:mm:ss a, EEEE, d MMMM y 'р.'";
|
||||||
d = new TbDate(s, pattern, Locale.forLanguageTag("uk-UA"));
|
d = new TbDate(s, pattern, "uk-UA");
|
||||||
localOffsetHrs = ZoneId.systemDefault().getRules().getOffset(d.getInstant()).getTotalSeconds()/60/60;
|
localOffsetHrs = ZoneId.systemDefault().getRules().getOffset(d.getInstant()).getTotalSeconds()/60/60;
|
||||||
hrs = 14 - localOffsetHrs;
|
hrs = 14 - localOffsetHrs;
|
||||||
expected = "2023-10-04T" + hrs + ":15:30Z";
|
expected = "2023-10-04T" + hrs + ":15:30Z";
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user