doubly_linked_list_test.go 1.04 KiB
package datastructure
import (
"testing"
)
func TestAdd(t *testing.T) {
doublyLinkedList := &DoublyLinkedList{}
doublyLinkedList.Add(12)
doublyLinkedList.Add(12)
doublyLinkedList.Add(15)
doublyLinkedList.Add(99)
if doublyLinkedList.GetSize() != 4 {
t.Error("the size of the list is wrong")
}
}
func TestDelete(t *testing.T) {
doublyLinkedList := &DoublyLinkedList{}
doublyLinkedList.Add(12)
doublyLinkedList.Add(13)
doublyLinkedList.Add(15)
doublyLinkedList.Add(99)
if _, err := doublyLinkedList.RemoveFirst(); err != nil {
t.Error(err)
}
firstEntry, err := doublyLinkedList.GetFirst()
if err != nil {
t.Error(err)
}
if firstEntry != 13 {
t.Error("first entry should be 13 after delete")
}
if _, err := doublyLinkedList.RemoveLast(); err != nil {
t.Error(err)
}
lastEntry, err := doublyLinkedList.GetLast()
if err != nil {
t.Error(err)
}
if lastEntry != 15 {
t.Error("last entry should be 15 after delete")
}
if doublyLinkedList.GetSize() != 2 {
t.Error("the size of the list should be 2 after delete")
}
}