code: def describe_snake_case_col_names():
      def it_snake_cases_col_names(spark):
          schema = StructType(
              [
                  StructField("I like CHEESE", StringType(), True),
                  StructField("YUMMMMY stuff", StringType(), True),
              ]
          )
          data = [("jose", "a"), ("li", "b"), ("sam", "c")]
          source_df = spark.createDataFrame(data, schema)
          actual_df = quinn.snake_case_col_names(source_df)
          expected_df = quinn.create_df(
              spark,
              [("jose", "a"), ("li", "b"), ("sam", "c")],
              [
                  ("i_like_cheese", StringType(), True),
                  ("yummmmy_stuff", StringType(), True),
              ],
          )
          chispa.assert_df_equality(actual_df, expected_df)
  
imports: from __future__ import annotations
  import pytest
  import chispa
  import quinn
  from pyspark.sql import DataFrame
  from pyspark.sql.types import StructType, StructField, StringType, IntegerType, ArrayType, MapType
  from quinn.transformations import flatten_struct, flatten_map, flatten_dataframe
  from tests.conftest import auto_inject_fixtures
label_desc: Use image node_id 3 for calling a global function with example usage: describe_snake_case_col_names() without return types