mirror of
https://github.com/mjl-/mox.git
synced 2025-06-28 05:08:14 +03:00
Add missing wlocks around message delivery to account, mostly for tests.
This commit is contained in:
parent
2da280f2bb
commit
684c716e4d
@ -450,8 +450,11 @@ func TestCtl(t *testing.T) {
|
||||
defer msgf.Close()
|
||||
_, err = msgf.Write(content)
|
||||
tcheck(t, err, "write message file")
|
||||
|
||||
acc.WithWLock(func() {
|
||||
err = acc.DeliverMailbox(ctl.log, "Inbox", m, msgf)
|
||||
tcheck(t, err, "deliver message")
|
||||
})
|
||||
}
|
||||
|
||||
var msgBadSize store.Message
|
||||
|
@ -293,6 +293,8 @@ func TestAuthenticateTLSClientCert(t *testing.T) {
|
||||
tcheck(t, err, "open account")
|
||||
err = acc.SetPassword(pkglog, "test1234")
|
||||
tcheck(t, err, "set password")
|
||||
err = acc.Close()
|
||||
tcheck(t, err, "close account")
|
||||
tc = startArgsMore(t, true, true, nil, &clientConfig, false, true, true, "mjl", addClientCert)
|
||||
tc.transactf("no", "authenticate plain %s", base64.StdEncoding.EncodeToString([]byte("\u0000other@mox.example\u0000test1234")))
|
||||
tc.close()
|
||||
|
@ -646,10 +646,11 @@ func tinsertmsg(t *testing.T, acc *store.Account, mailbox string, m *store.Messa
|
||||
defer mf.Close()
|
||||
_, err = mf.Write([]byte(msg))
|
||||
tcheck(t, err, "write message")
|
||||
|
||||
acc.WithWLock(func() {
|
||||
err = acc.DeliverMailbox(pkglog, mailbox, m, mf)
|
||||
tcheck(t, err, "deliver message")
|
||||
err = mf.Close()
|
||||
tcheck(t, err, "close message")
|
||||
})
|
||||
}
|
||||
|
||||
func tretrain(t *testing.T, acc *store.Account) {
|
||||
|
@ -41,6 +41,7 @@ func TestExport(t *testing.T) {
|
||||
_, err = msgFile.Write([]byte(msg))
|
||||
tcheck(t, err, "write message")
|
||||
|
||||
acc.WithWLock(func() {
|
||||
m := Message{Received: time.Now(), Size: int64(len(msg))}
|
||||
err = acc.DeliverMailbox(pkglog, "Inbox", &m, msgFile)
|
||||
tcheck(t, err, "deliver")
|
||||
@ -48,6 +49,7 @@ func TestExport(t *testing.T) {
|
||||
m = Message{Received: time.Now(), Size: int64(len(msg))}
|
||||
err = acc.DeliverMailbox(pkglog, "Trash", &m, msgFile)
|
||||
tcheck(t, err, "deliver")
|
||||
})
|
||||
|
||||
var maildirZip, maildirTar, mboxZip, mboxTar bytes.Buffer
|
||||
|
||||
|
@ -42,8 +42,11 @@ func TestThreadingUpgrade(t *testing.T) {
|
||||
MsgPrefix: []byte(s),
|
||||
Received: recv,
|
||||
}
|
||||
acc.WithWLock(func() {
|
||||
err = acc.DeliverMailbox(log, "Inbox", &m, f)
|
||||
tcheck(t, err, "deliver")
|
||||
})
|
||||
|
||||
if expThreadID == 0 {
|
||||
expThreadID = m.ID
|
||||
}
|
||||
|
@ -264,6 +264,7 @@ type testmsg struct {
|
||||
}
|
||||
|
||||
func tdeliver(t *testing.T, acc *store.Account, tm *testmsg) {
|
||||
acc.WithWLock(func() {
|
||||
msgFile, err := store.CreateMessageTemp(pkglog, "webmail-test")
|
||||
tcheck(t, err, "create message temp")
|
||||
defer os.Remove(msgFile.Name())
|
||||
@ -286,6 +287,7 @@ func tdeliver(t *testing.T, acc *store.Account, tm *testmsg) {
|
||||
tcheck(t, err, "closing test message")
|
||||
tm.m = m
|
||||
tm.ID = m.ID
|
||||
})
|
||||
}
|
||||
|
||||
func readBody(r io.Reader) string {
|
||||
|
@ -358,7 +358,7 @@ func (x XOps) MailboxesMarkRead(ctx context.Context, log mlog.Log, acc *store.Ac
|
||||
|
||||
// MessageMove moves messages to the mailbox represented by mailboxName, or to mailboxID if mailboxName is empty.
|
||||
func (x XOps) MessageMove(ctx context.Context, log mlog.Log, acc *store.Account, messageIDs []int64, mailboxName string, mailboxID int64) {
|
||||
acc.WithRLock(func() {
|
||||
acc.WithWLock(func() {
|
||||
var changes []store.Change
|
||||
|
||||
x.DBWrite(ctx, acc, func(tx *bstore.Tx) {
|
||||
|
Loading…
x
Reference in New Issue
Block a user