diff --git a/src/ansys/dpf/core/collection_base.py b/src/ansys/dpf/core/collection_base.py index e6acfc638e..319eab003e 100644 --- a/src/ansys/dpf/core/collection_base.py +++ b/src/ansys/dpf/core/collection_base.py @@ -140,6 +140,8 @@ def integral_collection(inpt, server: BaseServer = None): return IntCollection(inpt, server=server) if all(isinstance(x, (float, np.float64)) for x in inpt): return FloatCollection(inpt, server=server) + if all(isinstance(x, str) for x in inpt): + return StringCollection(inpt, server=server) else: raise NotImplementedError( f"{IntegralCollection.__name__} is only " diff --git a/tests/test_operator.py b/tests/test_operator.py index 3ebdeb7a18..4993b249b2 100644 --- a/tests/test_operator.py +++ b/tests/test_operator.py @@ -782,6 +782,12 @@ def test_connect_get_output_double_list_operator(server_type): assert np.allclose(d, d_out) +@conftest.raises_for_servers_version_under("5.0") +def test_connect_get_output_string_list_operator(server_clayer): + d = ["hello", "bye"] + dpf.core.operators.utility.forward(d, server=server_clayer) + + def test_connect_result(plate_msup, server_type): model = dpf.core.Model(plate_msup, server=server_type) stress = model.results.stress