class_docstr: Test ability to marshall deck_gl_json_chart protos via st.map.
class_docstr_tok: ["Test","ability","to","marshall","deck_gl_json_chart","protos","via","st.map","."]
docstr: Test that when we modify the outgoing DF we don't mutate the input DF.
docstr_tok: ["Test","that","when","we","modify","the","outgoing","DF","we","do","n't","mutate","the","input","DF","."]
code: def test_original_df_is_untouched(self):
      """Test that when we modify the outgoing DF we don't mutate the input DF."""
      df = pd.DataFrame(
          {
              "lat": [38.8762997, 38.8742997, 38.9025842],
              "lon": [-77.0037, -77.0057, -77.0556545],
              "foo": [0, 1, 2],
          }
      )
  
      st.map(df)
      c = json.loads(
          self.get_delta_from_queue().new_element.deck_gl_json_chart.json
      )
      self.assertEqual(len(c.get("layers")[0].get("data")[0]), 2)
      self.assertEqual(len(df.columns), 3)
  
imports: import itertools
  import json
  import numpy
  import pandas
  import pytest
  from parameterized import parameterized
  import streamlit
  from streamlit.elements.map import _DEFAULT_MAP, _DEFAULT_ZOOM_LEVEL
  from streamlit.errors import StreamlitAPIException
  from tests.delta_generator_test_case import DeltaGeneratorTestCase
  from tests.streamlit import pyspark_mocks
  from tests.streamlit.snowpark_mocks import DataFrame
  from tests.streamlit.snowpark_mocks import Table
  from tests.testutil import create_snowpark_session, patch_config_options
label_desc: Use image node_id 7 for calling the StMapTest obj's underlying member method code with example usage: obj.test_original_df_is_untouched() without return types