mirror of
https://github.com/jhillyerd/inbucket.git
synced 2025-12-19 02:27:03 +00:00
storage: More refactoring for #69
- impl Store.AddMessage - file: Use AddMessage() in tests - smtp: Switch to AddMessage - storage: Remove NewMessage, Append, Close methods
This commit is contained in:
@@ -13,24 +13,18 @@ import (
|
||||
func TestDoRetentionScan(t *testing.T) {
|
||||
ds := test.NewStore()
|
||||
// Mockup some different aged messages (num is in hours)
|
||||
new1 := mockMessage(0)
|
||||
new2 := mockMessage(1)
|
||||
new3 := mockMessage(2)
|
||||
old1 := mockMessage(4)
|
||||
old2 := mockMessage(12)
|
||||
old3 := mockMessage(24)
|
||||
ds.AddMessage("mb1", new1)
|
||||
new1.On("Mailbox").Return("mb1")
|
||||
ds.AddMessage("mb1", old1)
|
||||
old1.On("Mailbox").Return("mb1")
|
||||
ds.AddMessage("mb1", old2)
|
||||
old2.On("Mailbox").Return("mb1")
|
||||
ds.AddMessage("mb2", old3)
|
||||
old3.On("Mailbox").Return("mb2")
|
||||
ds.AddMessage("mb2", new2)
|
||||
new2.On("Mailbox").Return("mb2")
|
||||
ds.AddMessage("mb3", new3)
|
||||
new3.On("Mailbox").Return("mb3")
|
||||
new1 := mockMessage("mb1", 0)
|
||||
new2 := mockMessage("mb2", 1)
|
||||
new3 := mockMessage("mb3", 2)
|
||||
old1 := mockMessage("mb1", 4)
|
||||
old2 := mockMessage("mb1", 12)
|
||||
old3 := mockMessage("mb2", 24)
|
||||
ds.AddMessage(new1)
|
||||
ds.AddMessage(old1)
|
||||
ds.AddMessage(old2)
|
||||
ds.AddMessage(old3)
|
||||
ds.AddMessage(new2)
|
||||
ds.AddMessage(new3)
|
||||
// Test 4 hour retention
|
||||
cfg := config.DataStoreConfig{
|
||||
RetentionMinutes: 239,
|
||||
@@ -56,8 +50,9 @@ func TestDoRetentionScan(t *testing.T) {
|
||||
}
|
||||
|
||||
// Make a MockMessage of a specific age
|
||||
func mockMessage(ageHours int) *storage.MockMessage {
|
||||
func mockMessage(mailbox string, ageHours int) *storage.MockMessage {
|
||||
msg := &storage.MockMessage{}
|
||||
msg.On("Mailbox").Return(mailbox)
|
||||
msg.On("ID").Return(fmt.Sprintf("MSG[age=%vh]", ageHours))
|
||||
msg.On("Date").Return(time.Now().Add(time.Duration(ageHours*-1) * time.Hour))
|
||||
msg.On("Delete").Return(nil)
|
||||
|
||||
Reference in New Issue
Block a user