mirror of https://github.com/Xhofe/alist
48 lines
868 B
Go
48 lines
868 B
Go
![]() |
package url_tree_test
|
||
|
|
||
|
import (
|
||
|
"testing"
|
||
|
|
||
|
"github.com/alist-org/alist/v3/drivers/url_tree"
|
||
|
)
|
||
|
|
||
|
func testTree() (*url_tree.Node, error) {
|
||
|
text := `folder1:
|
||
|
name1:url1
|
||
|
url2
|
||
|
folder2:
|
||
|
url3
|
||
|
url4
|
||
|
url5
|
||
|
folder3:
|
||
|
url6
|
||
|
url7
|
||
|
url8`
|
||
|
return url_tree.BuildTree(text, false)
|
||
|
}
|
||
|
|
||
|
func TestBuildTree(t *testing.T) {
|
||
|
node, err := testTree()
|
||
|
if err != nil {
|
||
|
t.Errorf("failed to build tree: %+v", err)
|
||
|
} else {
|
||
|
t.Logf("tree: %+v", node)
|
||
|
}
|
||
|
}
|
||
|
|
||
|
func TestGetNode(t *testing.T) {
|
||
|
root, err := testTree()
|
||
|
if err != nil {
|
||
|
t.Errorf("failed to build tree: %+v", err)
|
||
|
return
|
||
|
}
|
||
|
node := url_tree.GetNodeFromRootByPath(root, "/")
|
||
|
if node != root {
|
||
|
t.Errorf("got wrong node: %+v", node)
|
||
|
}
|
||
|
url3 := url_tree.GetNodeFromRootByPath(root, "/folder1/folder2/url3")
|
||
|
if url3 != root.Children[0].Children[2].Children[0] {
|
||
|
t.Errorf("got wrong node: %+v", url3)
|
||
|
}
|
||
|
}
|