104 lines
2.4 KiB
Go
104 lines
2.4 KiB
Go
package helper
|
|
|
|
import (
|
|
"fmt"
|
|
"testing"
|
|
"time"
|
|
)
|
|
|
|
func TestParse(t *testing.T) {
|
|
got, err := Parse("2024-10-01 10:26:57")
|
|
if err != nil {
|
|
t.Errorf("TestParse() error = %v", err)
|
|
return
|
|
}
|
|
t.Log(got)
|
|
got2, err := Parse2("2024-10-01 10:26:57")
|
|
if err != nil {
|
|
t.Errorf("TestParse() error = %v", err)
|
|
return
|
|
}
|
|
t.Log(got2)
|
|
}
|
|
|
|
func TestDateStringToTime(t *testing.T) {
|
|
got, err := DateStringToTime("2024-01-01 00:00:00")
|
|
if err != nil {
|
|
t.Errorf("DateStringToTime() error = %v", err)
|
|
return
|
|
}
|
|
t.Log(got)
|
|
got2, err := DateStringToTime("2024-01-01 00:00:00")
|
|
if err != nil {
|
|
t.Errorf("DateStringToTime() error = %v", err)
|
|
return
|
|
}
|
|
t.Log(got2)
|
|
t.Log(got.Equal(got2))
|
|
}
|
|
|
|
func TestIsTimeBefore(t *testing.T) {
|
|
bes, err := DateStringToTime("2024-01-12 00:00:00")
|
|
if err != nil {
|
|
t.Errorf("DateStringToTime() error = %v", err)
|
|
return
|
|
}
|
|
bts, err := DateStringToTime("2024-01-20 00:00:00")
|
|
if err != nil {
|
|
t.Errorf("DateStringToTime() error = %v", err)
|
|
return
|
|
}
|
|
b := IsTimeBefore(bes, bts)
|
|
t.Log(b) // false
|
|
}
|
|
|
|
func TestIsInSameNaturalMonth(t *testing.T) {
|
|
startTime, err := DateStringToTime("2024-01-12 12:12:12")
|
|
if err != nil {
|
|
t.Errorf("DateStringToTime() error = %v", err)
|
|
return
|
|
}
|
|
endTime, err := DateStringToTime("2024-02-12 12:12:12")
|
|
if err != nil {
|
|
t.Errorf("DateStringToTime() error = %v", err)
|
|
return
|
|
}
|
|
b := IsInSameNaturalMonth(startTime, endTime)
|
|
t.Log(b) // false
|
|
}
|
|
|
|
func TestRFC3339(t *testing.T) {
|
|
// 输入的时间字符串
|
|
availableBeginTimeStr := "2025-03-07T00:00:00+08:00"
|
|
availableEndTimeStr := "2025-06-05T23:59:59+08:00"
|
|
|
|
// 定义输入时间字符串的格式
|
|
inputFormat := time.RFC3339
|
|
|
|
// 解析开始时间
|
|
availableBeginTime, err := time.Parse(inputFormat, availableBeginTimeStr)
|
|
if err != nil {
|
|
fmt.Printf("解析开始时间出错: %v\n", err)
|
|
return
|
|
}
|
|
|
|
// 解析结束时间
|
|
availableEndTime, err := time.Parse(inputFormat, availableEndTimeStr)
|
|
if err != nil {
|
|
fmt.Printf("解析结束时间出错: %v\n", err)
|
|
return
|
|
}
|
|
|
|
// 定义输出时间的格式
|
|
outputFormat := "2006-01-02 15:04:05"
|
|
|
|
// 格式化开始时间
|
|
formattedBeginTime := availableBeginTime.Format(outputFormat)
|
|
// 格式化结束时间
|
|
formattedEndTime := availableEndTime.Format(outputFormat)
|
|
|
|
// 输出格式化后的时间
|
|
fmt.Printf("格式化后的开始时间: %s\n", formattedBeginTime)
|
|
fmt.Printf("格式化后的结束时间: %s\n", formattedEndTime)
|
|
}
|