diff --git a/src/ansys/fluent/core/meshing/workflow.py b/src/ansys/fluent/core/meshing/workflow.py index a59ba7b023f0..946caa2a36e5 100644 --- a/src/ansys/fluent/core/meshing/workflow.py +++ b/src/ansys/fluent/core/meshing/workflow.py @@ -50,7 +50,8 @@ def CommandArguments(self): def _refreshed_command(self): task_arg_state = self.Arguments.get_state() cmd = self._command() - cmd.set_state(task_arg_state) + if task_arg_state: + cmd.update_dict(task_arg_state) return cmd def _command(self): diff --git a/src/ansys/fluent/core/services/datamodel_se.py b/src/ansys/fluent/core/services/datamodel_se.py index 404a220bddde..8e1adccefcf2 100644 --- a/src/ansys/fluent/core/services/datamodel_se.py +++ b/src/ansys/fluent/core/services/datamodel_se.py @@ -72,11 +72,7 @@ def initialize_datamodel( def get_attribute_value( self, request: DataModelProtoModule.GetAttributeValueRequest ) -> DataModelProtoModule.GetAttributeValueResponse: - ret = self.__stub.getAttributeValue(request, metadata=self.__metadata) - try: - return ret.item - except AttributeError: - return ret + return self.__stub.getAttributeValue(request, metadata=self.__metadata) @catch_grpc_error def get_state( @@ -168,13 +164,13 @@ def _convert_variant_to_value(var: Variant): elif var.HasField("string_state"): return var.string_state elif var.HasField("bool_vector_state"): - return var.bool_vector_state + return var.bool_vector_state.item elif var.HasField("int64_vector_state"): - return var.int64_vector_state + return var.int64_vector_state.item elif var.HasField("double_vector_state"): - return var.double_vector_state + return var.double_vector_state.item elif var.HasField("string_vector_state"): - return var.string_vector_state + return var.string_vector_state.item elif var.HasField("variant_vector_state"): val = [] for item in var.variant_vector_state.item: diff --git a/tests/test_meshing_workflow.py b/tests/test_meshing_workflow.py index 1296e3041c42..28fafd17d005 100644 --- a/tests/test_meshing_workflow.py +++ b/tests/test_meshing_workflow.py @@ -228,3 +228,14 @@ def test_meshing_object_commands(new_mesh_session, tmp_path=pyfluent.EXAMPLES_PA os.remove(file_path) assert returned + + +@pytest.mark.skipif(os.getenv("FLUENT_IMAGE_TAG") == "v22.2.0", reason="Skip on 22.2") +def test_attribute_query_list_types(new_mesh_session): + session_new = new_mesh_session + w = session_new.workflow + w.InitializeWorkflow(WorkflowType="Watertight Geometry") + igt = w.TaskObject["Import Geometry"] + assert ["CAD", "Mesh"] == igt.CommandArguments.FileFormat.getAttribValue( + "allowedValues" + )