You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
37 lines
679 B
37 lines
679 B
package tests
|
|
|
|
import (
|
|
"testing"
|
|
"github.com/stretchr/testify/assert"
|
|
"MY/dsa/llist"
|
|
)
|
|
|
|
func TestLinkedList(t *testing.T) {
|
|
list := llist.LinkedList{}
|
|
assert.Nil(t, list.PopBack())
|
|
assert.Nil(t, list.PopFront())
|
|
|
|
list.Add("front")
|
|
list.Add("back")
|
|
list.Dump()
|
|
back := list.PopBack()
|
|
assert.Equal(t, back.Data, "back")
|
|
|
|
list.Add("middle1")
|
|
list.Add("middle2")
|
|
list.Add("back2")
|
|
|
|
list.Dump()
|
|
back = list.PopBack()
|
|
assert.Equal(t, back.Data, "back2")
|
|
|
|
front := list.PopFront()
|
|
assert.Equal(t, front.Data, "front")
|
|
list.Dump()
|
|
|
|
middle := list.Find("middle2")
|
|
assert.Equal(t, middle.Data, "middle2")
|
|
|
|
list.Delete(middle)
|
|
list.Dump()
|
|
}
|
|
|