]> git.giacomolli.uk - onechat/blobdiff - tree_test.go
Share the Markdown marks and block parser
[onechat] / tree_test.go
index 146ab07351e8cddbbac134934805006c7c586f0e..d927a9eda6bbafec3fe257504af28cecfe1aafd2 100644 (file)
@@ -80,7 +80,7 @@ func TestTreeReopenLoadsTheSameNodes(t *testing.T) {
 
        data, err := os.ReadFile(filepath.Join(root, "tree", "2026-01-01.jsonl"))
        require.NoError(t, err)
 
        data, err := os.ReadFile(filepath.Join(root, "tree", "2026-01-01.jsonl"))
        require.NoError(t, err)
-       require.Equal(t, `{"l":0,"i":1,"text":"reply: b","size":8}`+"\n", strings.SplitAfter(string(data), "\n")[0])
+       require.JSONEq(t, `{"l":0,"i":1,"text":"reply: b","size":8}`+"\n", strings.SplitAfter(string(data), "\n")[0])
 
        tree, err = openTree(t.Context(), root, 2, clock.Now)
        require.NoError(t, err)
 
        tree, err = openTree(t.Context(), root, 2, clock.Now)
        require.NoError(t, err)
@@ -90,6 +90,7 @@ func TestTreeReopenLoadsTheSameNodes(t *testing.T) {
        }()
 
        require.Equal(t, len(nodes), tree.Count())
        }()
 
        require.Equal(t, len(nodes), tree.Count())
+
        for _, node := range nodes {
                require.Equal(t, node, treeReadNode(t, tree, node.Level, node.Index))
        }
        for _, node := range nodes {
                require.Equal(t, node, treeReadNode(t, tree, node.Level, node.Index))
        }
@@ -125,6 +126,7 @@ func TestTreeBuildsAMissingIndexAgain(t *testing.T) {
        }()
 
        require.Equal(t, len(nodes), tree.Count())
        }()
 
        require.Equal(t, len(nodes), tree.Count())
+
        for _, node := range nodes {
                require.Equal(t, node, treeReadNode(t, tree, node.Level, node.Index))
        }
        for _, node := range nodes {
                require.Equal(t, node, treeReadNode(t, tree, node.Level, node.Index))
        }
@@ -156,33 +158,3 @@ func TestTreeIndexesTheNodesAfterACrash(t *testing.T) {
        require.Equal(t, "reply: b", treeReadNode(t, tree, 0, 1).Text)
        require.NoError(t, tree.Add(treeTestNode(1, 0, "user: a\nreply: b")))
 }
        require.Equal(t, "reply: b", treeReadNode(t, tree, 0, 1).Text)
        require.NoError(t, tree.Add(treeTestNode(1, 0, "user: a\nreply: b")))
 }
-
-func treeTestNode(level, index int, text string) Node {
-       return Node{
-               Level: level,
-               Index: index,
-               Text:  text,
-               Size:  len(text),
-       }
-}
-
-// treeReadNode reads the node (l, i) of tree, which must be built.
-func treeReadNode(t *testing.T, tree *Tree, level, index int) Node {
-       t.Helper()
-
-       node, built, err := tree.Node(level, index)
-       require.NoError(t, err)
-       require.True(t, built, "node (%d, %d)", level, index)
-
-       return node
-}
-
-// treeIsBuilt tells if the node (l, i) of tree is built.
-func treeIsBuilt(t *testing.T, tree *Tree, level, index int) bool {
-       t.Helper()
-
-       built, err := tree.Built(level, index)
-       require.NoError(t, err)
-
-       return built
-}