Commit 86070cba authored by Kirill Smelkov's avatar Kirill Smelkov

.

parent c98d3f92
......@@ -35,10 +35,10 @@ import (
"lab.nexedi.com/kirr/neo/go/zodb"
)
// TreeGen represents connection to running `treegen trees`.
// TreeGen represents connection to running `treegen trees` server.
//
// Create it with StartTreeGen(zurl).
// - Commit(treeTopology) ->
// - Commit(treeTopology) -> tid
type TreeGen struct {
zurl string
pysrv *exec.Cmd // spawned `treegen trees`
......@@ -104,7 +104,7 @@ func StartTreeGen(zurl string) (_ *TreeGen, err error) {
return nil, fmt.Errorf("root: %s", err)
}
fmt.Printf("XXX started @%s root=%s\n", tg.head, tg.treeRoot)
//fmt.Printf("XXX started @%s root=%s\n", tg.head, tg.treeRoot)
return tg, nil
}
......@@ -140,8 +140,26 @@ func (tg *TreeGen) Commit(tree string) (_ zodb.Tid, err error) {
return tid, nil
}
// XXX
func XXX(t *testing.T, tree1, tree2 string) {
func TestΔBTail(t *testing.T) {
X := exc.Raiseif
// XXX test known cases tree1 -> tree2
testv := []struct { tree1, tree2 string } {
{"T/B:", "T/B:"},
{"T/B:", "T/B1:a"},
// XXX
}
work, err := ioutil.TempDir("", "δBTail"); X(err)
defer func() {
err := os.RemoveAll(work); X(err)
}()
tg, err := StartTreeGen(work + "/1.fs"); X(err)
defer func() {
err := tg.Close(); X(err)
}()
XXX := func(tree1, tree2 string) {
// XXX commit tree1
// XXX load tree1 -> get keys for kv1
//
......@@ -159,30 +177,16 @@ func XXX(t *testing.T, tree1, tree2 string) {
// δB = δbtail.Update(δZ)
//
// verify δB has all keys as expected for tracked set
}
func TestΔBTail(t *testing.T) {
X := exc.Raiseif
tid, err := tg.Commit(tree1); X(err)
tid, err = tg.Commit(tree2); X(err)
// XXX test known cases tree1 -> tree2
testv := []struct { tree1, tree2 string } {
{"T/B", "T/B"},
{"T/B", "T/B1:a"},
// XXX
_ = tid
}
work, err := ioutil.TempDir("", "δBTail"); X(err)
defer func() {
err := os.RemoveAll(work); X(err)
}()
tg, err := StartTreeGen(work + "/1.fs"); X(err)
defer func() {
err := tg.Close(); X(err)
}()
for _, test := range testv {
XXX(t, test.tree1, test.tree2)
XXX(t, test.tree2, test.tree1)
XXX(test.tree1, test.tree2)
XXX(test.tree2, test.tree1)
}
}
......
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