46 lines
971 B
Go
46 lines
971 B
Go
package main
|
|
|
|
import (
|
|
"strings"
|
|
"testing"
|
|
)
|
|
|
|
func TestListTrashShowsDeletedNodesAndPhysicalEntries(t *testing.T) {
|
|
app, _ := setupTestApp(t)
|
|
|
|
n, err := app.CreateNodeFromTemplate("", "Trash Me", "folder.default")
|
|
if err != nil {
|
|
t.Fatalf("create node: %v", err)
|
|
}
|
|
if err := app.DeleteNode(n.ID); err != nil {
|
|
t.Fatalf("DeleteNode: %v", err)
|
|
}
|
|
|
|
trash, err := app.ListTrash()
|
|
if err != nil {
|
|
t.Fatalf("ListTrash: %v", err)
|
|
}
|
|
|
|
var foundNode bool
|
|
for _, node := range trash.Nodes {
|
|
if node.ID == n.ID && node.Title == "Trash Me" && node.DeletedAt != "" {
|
|
foundNode = true
|
|
break
|
|
}
|
|
}
|
|
if !foundNode {
|
|
t.Fatalf("deleted node %s missing from trash nodes: %#v", n.ID, trash.Nodes)
|
|
}
|
|
|
|
var foundPhysical bool
|
|
for _, entry := range trash.Entries {
|
|
if strings.Contains(entry.Name, n.ID) && entry.IsDir {
|
|
foundPhysical = true
|
|
break
|
|
}
|
|
}
|
|
if !foundPhysical {
|
|
t.Fatalf("physical trash entry for %s missing: %#v", n.ID, trash.Entries)
|
|
}
|
|
}
|