Add LIST tests
This commit is contained in:
@@ -1,11 +1,11 @@
|
||||
import pytest
|
||||
from src.basic_data_handling.data_list_nodes import (
|
||||
DataListAppend,
|
||||
DataListCreate,
|
||||
DataListCreateFromBoolean,
|
||||
DataListCreateFromFloat,
|
||||
DataListCreateFromInt,
|
||||
DataListCreateFromString,
|
||||
#DataListCreate,
|
||||
#DataListCreateFromBoolean,
|
||||
#DataListCreateFromFloat,
|
||||
#DataListCreateFromInt,
|
||||
#DataListCreateFromString,
|
||||
DataListExtend,
|
||||
DataListInsert,
|
||||
DataListRemove,
|
||||
@@ -27,8 +27,8 @@ from src.basic_data_handling.data_list_nodes import (
|
||||
DataListLast,
|
||||
DataListMin,
|
||||
DataListMax,
|
||||
DataListToList,
|
||||
DataListToSet,
|
||||
#DataListToList,
|
||||
#DataListToSet,
|
||||
)
|
||||
|
||||
|
||||
|
||||
+49
-14
@@ -1,28 +1,31 @@
|
||||
import pytest
|
||||
from src.basic_data_handling.list_nodes import (
|
||||
ListAppend,
|
||||
ListContains,
|
||||
ListCount,
|
||||
ListCreate,
|
||||
ListCreateFromBoolean,
|
||||
ListCreateFromFloat,
|
||||
ListCreateFromInt,
|
||||
ListCreateFromString,
|
||||
ListAppend,
|
||||
ListExtend,
|
||||
ListInsert,
|
||||
ListRemove,
|
||||
ListPop,
|
||||
ListIndex,
|
||||
ListCount,
|
||||
ListSort,
|
||||
ListReverse,
|
||||
ListLength,
|
||||
ListSlice,
|
||||
ListFirst,
|
||||
ListGetItem,
|
||||
ListSetItem,
|
||||
ListContains,
|
||||
ListMin,
|
||||
ListIndex,
|
||||
ListInsert,
|
||||
ListLast,
|
||||
ListLength,
|
||||
ListMax,
|
||||
ListMin,
|
||||
ListPop,
|
||||
ListPopRandom,
|
||||
ListRemove,
|
||||
ListReverse,
|
||||
ListSetItem,
|
||||
ListSlice,
|
||||
ListSort,
|
||||
ListToDataList,
|
||||
ListToSet
|
||||
ListToSet,
|
||||
)
|
||||
|
||||
|
||||
@@ -61,6 +64,38 @@ def test_list_pop():
|
||||
assert node.pop([], 0) == ([], None) # Empty list pop
|
||||
|
||||
|
||||
def test_list_pop_random():
|
||||
node = ListPopRandom()
|
||||
# Test with single item - must remove that item
|
||||
result, item = node.pop_random_element([42])
|
||||
assert result == [] and item == 42
|
||||
|
||||
# Test with multiple items - can't predict which one will be popped
|
||||
# but we can check the result list length and that the popped item was from the original list
|
||||
original_list = [1, 2, 3, 4]
|
||||
result, item = node.pop_random_element(original_list)
|
||||
assert len(result) == len(original_list) - 1
|
||||
assert item in original_list
|
||||
assert item not in result
|
||||
|
||||
# Test with empty list
|
||||
assert node.pop_random_element([]) == ([], None)
|
||||
|
||||
|
||||
def test_list_first():
|
||||
node = ListFirst()
|
||||
assert node.get_first_element([1, 2, 3]) == (1,)
|
||||
assert node.get_first_element(["a", "b", "c"]) == ("a",)
|
||||
assert node.get_first_element([]) == (None,) # Empty list
|
||||
|
||||
|
||||
def test_list_last():
|
||||
node = ListLast()
|
||||
assert node.get_last_element([1, 2, 3]) == (3,)
|
||||
assert node.get_last_element(["a", "b", "c"]) == ("c",)
|
||||
assert node.get_last_element([]) == (None,) # Empty list
|
||||
|
||||
|
||||
def test_list_index():
|
||||
node = ListIndex()
|
||||
assert node.index([1, 2, 3, 2], 2) == (1,)
|
||||
|
||||
Reference in New Issue
Block a user