code: def test_multiselect_enum_coercion():
      """Test E2E Enum Coercion on a selectbox."""
  
      def script():
          from enum import Enum
  
          import streamlit as st
  
          class EnumA(Enum):
              A = 1
              B = 2
              C = 3
  
          selected_list = st.multiselect(
              "my_enum", EnumA, default=[EnumA.A, EnumA.C]
          )
          st.text(id(selected_list[0].__class__))
          st.text(id(EnumA))
          st.text(all(selected in EnumA for selected in selected_list))
  
      at = AppTest.from_function(script).run()
  
      def test_enum():
          multiselect = at.multiselect[0]
          original_class = multiselect.value[0].__class__
          multiselect.set_value(
              [original_class.A, original_class.B]
          ).run()
          assert (
              at.text[0].value == at.text[1].value
          ), "Enum Class ID not the same"
          assert (
              at.text[2].value == "True"
          ), "Not all enums found in class"
  
      with patch_config_options({"runner.enumCoercion": "nameOnly"}):
          test_enum()
      with patch_config_options({"runner.enumCoercion": "off"}):
          with pytest.raises(AssertionError):
              test_enum()
  
imports: from unittest.mock import MagicMock, patch
  import numpy
  import pandas
  import pytest
  from parameterized import parameterized
  import streamlit
  from streamlit.elements.widgets.multiselect import _get_default_count, _get_over_max_options_message
  from streamlit.errors import StreamlitAPIException
  from streamlit.proto.LabelVisibilityMessage_pb2 import LabelVisibilityMessage
  from streamlit.testing.v1.app_test import AppTest
  from streamlit.testing.v1.util import patch_config_options
  from tests.delta_generator_test_case import DeltaGeneratorTestCase
label_desc: Use image node_id 1 for calling a global function with example usage: test_multiselect_enum_coercion() without return types