mirror of
https://github.com/mjl-/mox.git
synced 2025-06-28 08:18:16 +03:00
imapclient: parse fetch attribute "internaldate" as time.Time instead of keeping it as string
similar to the SAVEDATE fetch attribute implemented recently.
This commit is contained in:
parent
02c4715724
commit
6ed97469b7
@ -688,7 +688,10 @@ func (c *Conn) xmsgatt1() FetchAttr {
|
||||
|
||||
case "INTERNALDATE":
|
||||
c.xspace()
|
||||
return FetchInternalDate(c.xquoted()) // todo: parsed time
|
||||
s := c.xquoted()
|
||||
v, err := time.Parse("_2-Jan-2006 15:04:05 -0700", s)
|
||||
c.xcheckf(err, "parsing internaldate")
|
||||
return FetchInternalDate{v}
|
||||
|
||||
case "SAVEDATE":
|
||||
c.xspace()
|
||||
|
@ -455,7 +455,10 @@ type Address struct {
|
||||
}
|
||||
|
||||
// "INTERNALDATE" fetch response.
|
||||
type FetchInternalDate string // todo: parsed time
|
||||
type FetchInternalDate struct {
|
||||
Date time.Time
|
||||
}
|
||||
|
||||
func (f FetchInternalDate) Attr() string { return "INTERNALDATE" }
|
||||
|
||||
// "SAVEDATE" fetch response. ../rfc/8514:265
|
||||
|
@ -23,7 +23,7 @@ func TestFetch(t *testing.T) {
|
||||
tc.client.Select("inbox")
|
||||
|
||||
uid1 := imapclient.FetchUID(1)
|
||||
date1 := imapclient.FetchInternalDate("16-Nov-2022 10:01:00 +0100")
|
||||
date1 := imapclient.FetchInternalDate{received}
|
||||
rfcsize1 := imapclient.FetchRFC822Size(len(exampleMsg))
|
||||
env1 := imapclient.FetchEnvelope{
|
||||
Date: "Mon, 7 Feb 1994 21:52:25 -0800",
|
||||
|
Loading…
x
Reference in New Issue
Block a user