mirror of
https://github.com/ipfs/kubo.git
synced 2025-09-09 19:32:24 +08:00
55 lines
863 B
Go
55 lines
863 B
Go
package merkledag
|
|
|
|
import (
|
|
"testing"
|
|
)
|
|
|
|
func TestRemoveLink(t *testing.T) {
|
|
nd := &Node{
|
|
Links: []*Link{
|
|
&Link{Name: "a"},
|
|
&Link{Name: "b"},
|
|
&Link{Name: "a"},
|
|
&Link{Name: "a"},
|
|
&Link{Name: "c"},
|
|
&Link{Name: "a"},
|
|
},
|
|
}
|
|
|
|
err := nd.RemoveNodeLink("a")
|
|
if err != nil {
|
|
t.Fatal(err)
|
|
}
|
|
|
|
if len(nd.Links) != 2 {
|
|
t.Fatal("number of links incorrect")
|
|
}
|
|
|
|
if nd.Links[0].Name != "b" {
|
|
t.Fatal("link order wrong")
|
|
}
|
|
|
|
if nd.Links[1].Name != "c" {
|
|
t.Fatal("link order wrong")
|
|
}
|
|
|
|
// should fail
|
|
err = nd.RemoveNodeLink("a")
|
|
if err != ErrNotFound {
|
|
t.Fatal("should have failed to remove link")
|
|
}
|
|
|
|
// ensure nothing else got touched
|
|
if len(nd.Links) != 2 {
|
|
t.Fatal("number of links incorrect")
|
|
}
|
|
|
|
if nd.Links[0].Name != "b" {
|
|
t.Fatal("link order wrong")
|
|
}
|
|
|
|
if nd.Links[1].Name != "c" {
|
|
t.Fatal("link order wrong")
|
|
}
|
|
}
|