code: def test_null_between(spark):
      source_df = quinn.create_df(
          spark,
          [
              (17, None, 94, True),
              (17, None, 10, False),
              (None, 10, 5, True),
              (None, 10, 88, False),
              (10, 15, 11, True),
              (None, None, 11, False),
              (3, 5, None, False),
              (None, None, None, False),
          ],
          [
              ("lower_age", IntegerType(), True),
              ("upper_age", IntegerType(), True),
              ("age", IntegerType(), True),
              ("expected", BooleanType(), True),
          ],
      )
      actual_df = source_df.withColumn(
          "is_between",
          F.col("age").nullBetween(
              F.col("lower_age"), F.col("upper_age")
          ),
      )
      chispa.assert_column_equality(actual_df, "is_between", "expected")
  
file_path: quinn/tests/extensions/test_column_ext.py
imports: import pyspark.sql.functions
  from pyspark.sql.types import StringType, BooleanType, IntegerType
  import quinn
  import chispa
  from tests.conftest import auto_inject_fixtures
  from quinn.extensions import *
label_desc: Use image node_id 7 for calling a global function with example usage: test_null_between(spark) without return types