Commit 85a6574c authored by Kirill Smelkov's avatar Kirill Smelkov

.

parent a243d4e0
...@@ -20,9 +20,14 @@ ...@@ -20,9 +20,14 @@
package demo package demo
import ( import (
"bytes"
"context"
"regexp"
"testing" "testing"
"lab.nexedi.com/kirr/neo/go/internal/xtesting" "lab.nexedi.com/kirr/neo/go/internal/xtesting"
"lab.nexedi.com/kirr/neo/go/zodb"
"lab.nexedi.com/kirr/neo/go/zodb/zodbtools"
) )
// tOptions represents options for testing. // tOptions represents options for testing.
...@@ -48,8 +53,8 @@ func withDemoStorage(t *testing.T, f func(t *testing.T, dsrv *Storage/*XXX -> Sr ...@@ -48,8 +53,8 @@ func withDemoStorage(t *testing.T, f func(t *testing.T, dsrv *Storage/*XXX -> Sr
zdump := "" zdump := ""
if opt.Preload != "" { if opt.Preload != "" {
ctx := context.Background() ctx := context.Background()
buf := bytes.Buffer{} buf := &bytes.Buffer{}
stor, _, err := fs1.Open(ctx, opt.Preload, &zodb.DriverOptions{ReadOnly: true}); X(err) stor, err := zodb.Open(ctx, opt.Preload, &zodb.OpenOptions{ReadOnly: true}); X(err)
err = zodbtools.Dump(ctx, buf, stor, 0, zodb.TidMax, /*hashonly=*/false) err = zodbtools.Dump(ctx, buf, stor, 0, zodb.TidMax, /*hashonly=*/false)
stor.Close() stor.Close()
X(err) X(err)
...@@ -57,7 +62,7 @@ func withDemoStorage(t *testing.T, f func(t *testing.T, dsrv *Storage/*XXX -> Sr ...@@ -57,7 +62,7 @@ func withDemoStorage(t *testing.T, f func(t *testing.T, dsrv *Storage/*XXX -> Sr
} }
// split zdump into transactions // split zdump into transactions
// TODO -> zodbtools.DumpReader // XXX hacky; TODO -> zodbtools.DumpReader
txnRe := regexp.MustCompile(`^txn (?P<tid>[0-9a-f]{16}) "(?P<status>.)"$`) txnRe := regexp.MustCompile(`^txn (?P<tid>[0-9a-f]{16}) "(?P<status>.)"$`)
type zdumpTxn struct { type zdumpTxn struct {
tid zodb.Tid tid zodb.Tid
...@@ -68,12 +73,13 @@ func withDemoStorage(t *testing.T, f func(t *testing.T, dsrv *Storage/*XXX -> Sr ...@@ -68,12 +73,13 @@ func withDemoStorage(t *testing.T, f func(t *testing.T, dsrv *Storage/*XXX -> Sr
// [m[0]:m[1]] refer to whole txn line // [m[0]:m[1]] refer to whole txn line
__ := zdump[m[2]:m[3]] __ := zdump[m[2]:m[3]]
tid, err := zodb.ParseTid(__); X(err) tid, err := zodb.ParseTid(__); X(err)
txnv = append(txnv, zdumpTxn{tid, m[0]) txnv = append(txnv, zdumpTxn{tid, m[0]})
} }
// verify on all combinations of preload being split into base+δ // verify on all combinations of preload being split into base+δ
txnv, err := xtesting.LoadDBHistory(opt.Preload); X(err)
/*
txnv, err := xtesting.LoadDBHistory(opt.Preload); X(err)
_ = txnv _ = txnv
*/
} }
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment