mirror of
https://github.com/mjl-/mox.git
synced 2025-07-12 17:04:39 +03:00
add debug logging about bstore db schema upgrades
bstore was updated to v0.0.6 to add this logging. this simplifies some of the db-handling code in mtastsdb,tlsrptdb,dmarcdb. we now call the package-level Init() and Close() in all tests properly.
This commit is contained in:
@ -24,8 +24,6 @@ import (
|
||||
func TestHookIncoming(t *testing.T) {
|
||||
acc, cleanup := setup(t)
|
||||
defer cleanup()
|
||||
err := Init()
|
||||
tcheck(t, err, "queue init")
|
||||
|
||||
accret, err := store.OpenAccount(pkglog, "retired")
|
||||
tcheck(t, err, "open account for retired")
|
||||
@ -119,8 +117,6 @@ func TestHookIncoming(t *testing.T) {
|
||||
func TestFromIDIncomingDelivery(t *testing.T) {
|
||||
acc, cleanup := setup(t)
|
||||
defer cleanup()
|
||||
err := Init()
|
||||
tcheck(t, err, "queue init")
|
||||
|
||||
accret, err := store.OpenAccount(pkglog, "retired")
|
||||
tcheck(t, err, "open account for retired")
|
||||
@ -525,8 +521,6 @@ func TestFromIDIncomingDelivery(t *testing.T) {
|
||||
func TestHookListFilterSort(t *testing.T) {
|
||||
_, cleanup := setup(t)
|
||||
defer cleanup()
|
||||
err := Init()
|
||||
tcheck(t, err, "queue init")
|
||||
|
||||
now := time.Now().Round(0)
|
||||
h := Hook{0, 0, "fromid", "messageid", "subj", nil, "mjl", "http://localhost", "", false, "delivered", "", now, 0, now, []HookResult{}}
|
||||
@ -534,7 +528,7 @@ func TestHookListFilterSort(t *testing.T) {
|
||||
h1.Submitted = now.Add(-time.Second)
|
||||
h1.NextAttempt = now.Add(time.Minute)
|
||||
hl := []Hook{h, h, h, h, h, h1}
|
||||
err = DB.Write(ctxbg, func(tx *bstore.Tx) error {
|
||||
err := DB.Write(ctxbg, func(tx *bstore.Tx) error {
|
||||
for i := range hl {
|
||||
err := hookInsert(tx, &hl[i], now, time.Minute)
|
||||
tcheck(t, err, "insert hook")
|
||||
|
@ -350,7 +350,9 @@ func Init() error {
|
||||
}
|
||||
|
||||
var err error
|
||||
DB, err = bstore.Open(mox.Shutdown, qpath, &bstore.Options{Timeout: 5 * time.Second, Perm: 0660}, DBTypes...)
|
||||
log := mlog.New("queue", nil)
|
||||
opts := bstore.Options{Timeout: 5 * time.Second, Perm: 0660, RegisterLogger: log.Logger}
|
||||
DB, err = bstore.Open(mox.Shutdown, qpath, &opts, DBTypes...)
|
||||
if err == nil {
|
||||
err = DB.Read(mox.Shutdown, func(tx *bstore.Tx) error {
|
||||
return metricHoldUpdate(tx)
|
||||
|
@ -28,6 +28,7 @@ import (
|
||||
"github.com/mjl-/mox/dns"
|
||||
"github.com/mjl-/mox/mlog"
|
||||
"github.com/mjl-/mox/mox-"
|
||||
"github.com/mjl-/mox/mtastsdb"
|
||||
"github.com/mjl-/mox/smtp"
|
||||
"github.com/mjl-/mox/smtpclient"
|
||||
"github.com/mjl-/mox/store"
|
||||
@ -60,6 +61,12 @@ func setup(t *testing.T) (*store.Account, func()) {
|
||||
mox.Context = ctxbg
|
||||
mox.ConfigStaticPath = filepath.FromSlash("../testdata/queue/mox.conf")
|
||||
mox.MustLoadConfig(true, false)
|
||||
err := Init()
|
||||
tcheck(t, err, "queue init")
|
||||
err = mtastsdb.Init(false)
|
||||
tcheck(t, err, "mtastsdb init")
|
||||
err = tlsrptdb.Init()
|
||||
tcheck(t, err, "tlsrptdb init")
|
||||
acc, err := store.OpenAccount(log, "mjl")
|
||||
tcheck(t, err, "open account")
|
||||
err = acc.SetPassword(log, "testtest")
|
||||
@ -72,6 +79,10 @@ func setup(t *testing.T) (*store.Account, func()) {
|
||||
mox.ShutdownCancel()
|
||||
mox.Shutdown, mox.ShutdownCancel = context.WithCancel(ctxbg)
|
||||
Shutdown()
|
||||
err := mtastsdb.Close()
|
||||
tcheck(t, err, "mtastsdb close")
|
||||
err = tlsrptdb.Close()
|
||||
tcheck(t, err, "tlsrptdb close")
|
||||
switchStop()
|
||||
}
|
||||
}
|
||||
@ -95,8 +106,6 @@ func prepareFile(t *testing.T) *os.File {
|
||||
func TestQueue(t *testing.T) {
|
||||
acc, cleanup := setup(t)
|
||||
defer cleanup()
|
||||
err := Init()
|
||||
tcheck(t, err, "queue init")
|
||||
|
||||
idfilter := func(msgID int64) Filter {
|
||||
return Filter{IDs: []int64{msgID}}
|
||||
@ -951,8 +960,6 @@ func checkTLSResults(t *testing.T, policyDomain, expRecipientDomain string, expI
|
||||
func TestRetiredHooks(t *testing.T) {
|
||||
_, cleanup := setup(t)
|
||||
defer cleanup()
|
||||
err := Init()
|
||||
tcheck(t, err, "queue init")
|
||||
|
||||
addr, err := smtp.ParseAddress("mjl@mox.example")
|
||||
tcheck(t, err, "parse address")
|
||||
@ -1193,6 +1200,7 @@ func TestQueueStart(t *testing.T) {
|
||||
<-done
|
||||
mox.Shutdown, mox.ShutdownCancel = context.WithCancel(ctxbg)
|
||||
}()
|
||||
Shutdown() // DB was opened already. Start will open it again. Just close it before.
|
||||
err := Start(resolver, done)
|
||||
tcheck(t, err, "queue start")
|
||||
|
||||
@ -1284,8 +1292,6 @@ func TestQueueStart(t *testing.T) {
|
||||
func TestListFilterSort(t *testing.T) {
|
||||
_, cleanup := setup(t)
|
||||
defer cleanup()
|
||||
err := Init()
|
||||
tcheck(t, err, "queue init")
|
||||
|
||||
// insert Msgs. insert RetiredMsgs based on that. call list with filters and sort. filter to select a single. filter to paginate one by one, and in reverse.
|
||||
|
||||
@ -1301,7 +1307,7 @@ func TestListFilterSort(t *testing.T) {
|
||||
qm1.Queued = now.Add(-time.Second)
|
||||
qm1.NextAttempt = now.Add(time.Minute)
|
||||
qml := []Msg{qm, qm, qm, qm, qm, qm1}
|
||||
err = Add(ctxbg, pkglog, "mjl", mf, qml...)
|
||||
err := Add(ctxbg, pkglog, "mjl", mf, qml...)
|
||||
tcheck(t, err, "add messages to queue")
|
||||
qm1 = qml[len(qml)-1]
|
||||
|
||||
|
@ -10,8 +10,6 @@ import (
|
||||
func TestSuppression(t *testing.T) {
|
||||
_, cleanup := setup(t)
|
||||
defer cleanup()
|
||||
err := Init()
|
||||
tcheck(t, err, "queue init")
|
||||
|
||||
l, err := SuppressionList(ctxbg, "bogus")
|
||||
tcheck(t, err, "listing suppressions for unknown account")
|
||||
|
Reference in New Issue
Block a user