code: def test_column_name_with_non_ascii(self):
      columnName = "数量"
      self.assertTrue(isinstance(columnName, str))
      schema = StructType([StructField(columnName, LongType(), True)])
      df = self.spark.createDataFrame([(1,)], schema)
      self.assertEqual(schema, df.schema)
      self.assertEqual("DataFrame[数量: bigint]", str(df))
      self.assertEqual([("数量", "bigint")], df.dtypes)
      self.assertEqual(1, df.select("数量").first()[0])
      self.assertEqual(1, df.select(df["数量"]).first()[0])
      self.assertTrue(columnName in repr(df[columnName]))
  
imports: from itertools import chain
  from pyspark.sql import Column, Row
  from pyspark.sql import functions
  from pyspark.sql.types import StructType, StructField, LongType
  from pyspark.errors import AnalysisException, PySparkTypeError, PySparkValueError
  from pyspark.testing.sqlutils import ReusedSQLTestCase
label_desc: Use image node_id 8 for calling the ColumnTestsMixin obj's underlying member method code with example usage: obj.test_column_name_with_non_ascii() without return types