docstr: Test the accept_multiple_files flag
docstr_tok: ["Test","the","accept_multiple_files","flag"]
code: def test_multiple_files(self, get_upload_files_patch):
      """Test the accept_multiple_files flag"""
      # Patch UploadFileManager to return two files
      rec1 = UploadedFileRec("file1", "file1", "type", b"123")
      rec2 = UploadedFileRec("file2", "file2", "type", b"456")
  
      uploaded_files = [
          UploadedFile(
              rec1,
              FileURLsProto(
                  file_id="file1", delete_url="d1", upload_url="u1"
              ),
          ),
          UploadedFile(
              rec2,
              FileURLsProto(
                  file_id="file2", delete_url="d1", upload_url="u1"
              ),
          ),
      ]
  
      get_upload_files_patch.return_value = uploaded_files
  
      for accept_multiple in [True, False]:
          return_val = st.file_uploader(
              "label", type="png", accept_multiple_files=accept_multiple
          )
          c = self.get_delta_from_queue().new_element.file_uploader
          self.assertEqual(accept_multiple, c.multiple_files)
  
          # If "accept_multiple_files" is True, then we should get a list of
          # values back. Otherwise, we should just get a single value.
  
          if accept_multiple:
              self.assertEqual(return_val, uploaded_files)
  
              for actual, expected in zip(return_val, uploaded_files):
                  self.assertEqual(actual.name, expected.name)
                  self.assertEqual(actual.type, expected.type)
                  self.assertEqual(actual.size, expected.size)
                  self.assertEqual(
                      actual.getvalue(), expected.getvalue()
                  )
          else:
              first_uploaded_file = uploaded_files[0]
              self.assertEqual(return_val, first_uploaded_file)
              self.assertEqual(
                  return_val.name, first_uploaded_file.name
              )
              self.assertEqual(
                  return_val.type, first_uploaded_file.type
              )
              self.assertEqual(
                  return_val.size, first_uploaded_file.size
              )
              self.assertEqual(
                  return_val.getvalue(), first_uploaded_file.getvalue()
              )
  
imports: from unittest.mock import patch
  from parameterized import parameterized
  import streamlit
  from streamlit import config
  from streamlit.errors import StreamlitAPIException
  from streamlit.proto.Common_pb2 import FileURLs
  from streamlit.proto.LabelVisibilityMessage_pb2 import LabelVisibilityMessage
  from streamlit.runtime.uploaded_file_manager import DeletedFile, UploadedFile, UploadedFileRec
  from tests.delta_generator_test_case import DeltaGeneratorTestCase
label_desc: Use image node_id 7 for calling the FileUploaderTest obj's underlying member method code with example usage: obj.test_multiple_files(get_upload_files_patch) without return types