diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-28 13:16:40 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-28 13:16:40 +0000 |
commit | 47ab3d4a42e9ab51c465c4322d2ec233f6324e6b (patch) | |
tree | a61a0ffd83f4a3def4b36e5c8e99630c559aa723 /src/time/export_test.go | |
parent | Initial commit. (diff) | |
download | golang-1.18-47ab3d4a42e9ab51c465c4322d2ec233f6324e6b.tar.xz golang-1.18-47ab3d4a42e9ab51c465c4322d2ec233f6324e6b.zip |
Adding upstream version 1.18.10.upstream/1.18.10upstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'src/time/export_test.go')
-rw-r--r-- | src/time/export_test.go | 133 |
1 files changed, 133 insertions, 0 deletions
diff --git a/src/time/export_test.go b/src/time/export_test.go new file mode 100644 index 0000000..9baad60 --- /dev/null +++ b/src/time/export_test.go @@ -0,0 +1,133 @@ +// Copyright 2013 The Go Authors. All rights reserved. +// Use of this source code is governed by a BSD-style +// license that can be found in the LICENSE file. + +package time + +import ( + "sync" +) + +func ResetLocalOnceForTest() { + localOnce = sync.Once{} + localLoc = Location{} +} + +func ForceUSPacificForTesting() { + ResetLocalOnceForTest() + localOnce.Do(initTestingZone) +} + +func ZoneinfoForTesting() *string { + return zoneinfo +} + +func ResetZoneinfoForTesting() { + zoneinfo = nil + zoneinfoOnce = sync.Once{} +} + +var ( + ForceZipFileForTesting = forceZipFileForTesting + ParseTimeZone = parseTimeZone + SetMono = (*Time).setMono + GetMono = (*Time).mono + ErrLocation = errLocation + ReadFile = readFile + LoadTzinfo = loadTzinfo + NextStdChunk = nextStdChunk + Tzset = tzset + TzsetName = tzsetName + TzsetOffset = tzsetOffset +) + +func LoadFromEmbeddedTZData(zone string) (string, error) { + return loadFromEmbeddedTZData(zone) +} + +type RuleKind int + +const ( + RuleJulian = RuleKind(ruleJulian) + RuleDOY = RuleKind(ruleDOY) + RuleMonthWeekDay = RuleKind(ruleMonthWeekDay) + UnixToInternal = unixToInternal +) + +type Rule struct { + Kind RuleKind + Day int + Week int + Mon int + Time int +} + +func TzsetRule(s string) (Rule, string, bool) { + r, rs, ok := tzsetRule(s) + rr := Rule{ + Kind: RuleKind(r.kind), + Day: r.day, + Week: r.week, + Mon: r.mon, + Time: r.time, + } + return rr, rs, ok +} + +// StdChunkNames maps from nextStdChunk results to the matched strings. +var StdChunkNames = map[int]string{ + 0: "", + stdLongMonth: "January", + stdMonth: "Jan", + stdNumMonth: "1", + stdZeroMonth: "01", + stdLongWeekDay: "Monday", + stdWeekDay: "Mon", + stdDay: "2", + stdUnderDay: "_2", + stdZeroDay: "02", + stdUnderYearDay: "__2", + stdZeroYearDay: "002", + stdHour: "15", + stdHour12: "3", + stdZeroHour12: "03", + stdMinute: "4", + stdZeroMinute: "04", + stdSecond: "5", + stdZeroSecond: "05", + stdLongYear: "2006", + stdYear: "06", + stdPM: "PM", + stdpm: "pm", + stdTZ: "MST", + stdISO8601TZ: "Z0700", + stdISO8601SecondsTZ: "Z070000", + stdISO8601ShortTZ: "Z07", + stdISO8601ColonTZ: "Z07:00", + stdISO8601ColonSecondsTZ: "Z07:00:00", + stdNumTZ: "-0700", + stdNumSecondsTz: "-070000", + stdNumShortTZ: "-07", + stdNumColonTZ: "-07:00", + stdNumColonSecondsTZ: "-07:00:00", + stdFracSecond0 | 1<<stdArgShift: ".0", + stdFracSecond0 | 2<<stdArgShift: ".00", + stdFracSecond0 | 3<<stdArgShift: ".000", + stdFracSecond0 | 4<<stdArgShift: ".0000", + stdFracSecond0 | 5<<stdArgShift: ".00000", + stdFracSecond0 | 6<<stdArgShift: ".000000", + stdFracSecond0 | 7<<stdArgShift: ".0000000", + stdFracSecond0 | 8<<stdArgShift: ".00000000", + stdFracSecond0 | 9<<stdArgShift: ".000000000", + stdFracSecond9 | 1<<stdArgShift: ".9", + stdFracSecond9 | 2<<stdArgShift: ".99", + stdFracSecond9 | 3<<stdArgShift: ".999", + stdFracSecond9 | 4<<stdArgShift: ".9999", + stdFracSecond9 | 5<<stdArgShift: ".99999", + stdFracSecond9 | 6<<stdArgShift: ".999999", + stdFracSecond9 | 7<<stdArgShift: ".9999999", + stdFracSecond9 | 8<<stdArgShift: ".99999999", + stdFracSecond9 | 9<<stdArgShift: ".999999999", +} + +var Quote = quote |