Files

40 lines
1.4 KiB
Python

import unittest
from src.StringsToList import StringsToList
class TestStringsToList(unittest.TestCase):
def setUp(self):
self.node = StringsToList()
def test_collects_strings_in_input_order(self):
result = self.node.collect_strings(
text_g="seven", text_a="one", text_d="four"
)
self.assertEqual(result, (["one", "four", "seven"],))
def test_preserves_connected_empty_strings(self):
result = self.node.collect_strings(text_a="alpha", text_b="", text_c="gamma")
self.assertEqual(result, (["alpha", "", "gamma"],))
def test_no_connected_inputs_returns_empty_list(self):
result = self.node.collect_strings()
self.assertEqual(result, ([],))
def test_node_definition(self):
input_types = self.node.INPUT_TYPES()
self.assertEqual(input_types["required"], {})
self.assertEqual(
list(input_types["optional"].keys()),
[f"text_{suffix}" for suffix in "abcdefg"],
)
for input_type in input_types["optional"].values():
self.assertEqual(input_type, ("STRING", {"forceInput": True}))
self.assertEqual(self.node.RETURN_TYPES, ("LIST",))
self.assertEqual(self.node.CATEGORY, "TextListProduct")
self.assertFalse(hasattr(self.node, "OUTPUT_IS_LIST"))
if __name__ == "__main__":
unittest.main()