code: def test_schema_from_csv_equality_for_bad_csv(spark):
      path = "tests/test_files/bad_schema.csv"
      with pytest.raises(ValueError) as excinfo:
          schema_from_csv(spark, path)
      assert (
          excinfo.value.args[0]
          == "CSV must contain columns in this order: ['name', 'type', 'nullable', 'metadata']"
      )
  
file_path: quinn/tests/test_schema_helpers.py
imports: from __future__ import annotations
  from pyspark.sql.types import StructType, IntegerType, DecimalType, ArrayType, FloatType, MapType, StringType, DoubleType, TimestampType, StructField
  import pyspark.sql.dataframe
  from quinn.schema_helpers import print_schema_as_code, schema_from_csv, complex_fields
  from chispa.schema_comparer import assert_basic_schema_equality
  import pytest
  from tests.conftest import auto_inject_fixtures
label_desc: Use image node_id 4 for calling a global function with example usage: test_schema_from_csv_equality_for_bad_csv(spark) without return types