Github user marmbrus commented on a diff in the pull request:
https://github.com/apache/spark/pull/3999#discussion_r23904649
--- Diff:
sql/core/src/test/scala/org/apache/spark/sql/sources/TableScanSuite.scala ---
@@ -344,4 +344,24 @@ class TableScanSuite extends DataSourceTest {
}
assert(schemaNeeded.getMessage.contains("A schema needs to be
specified when using"))
}
+
+ test("SPARK-5196 schema field with comment") {
+ sql(
+ """
+ |CREATE TEMPORARY TABLE student(name string comment "SN", age int
comment "SA", grade int)
+ |USING org.apache.spark.sql.sources.AllDataTypesScanSource
+ |OPTIONS (
+ | from '1',
+ | to '10'
+ |)
+ """.stripMargin)
+
+ val planned = sql("SELECT * FROM
student").queryExecution.executedPlan
+ val comments = planned.schema.fields.map { field =>
+ if (field.metadata.contains("comment"))
field.metadata.getString("comment")
+ else "NO_COMMENT"
+ }.mkString(",")
+
+ assert(comments === "SN,SA,NO_COMMENT", "assert equals, display all
comments of fields")
--- End diff --
I will fix this up while merging, but I don't think it is useful to both
use `===` and give a comment that doesn't include the actual answer. Ideally,
when the test fails you want to see the answer that does not match the expected
answer so you can figure out what went wrong without having to go and add
`println` manually.
---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at [email protected] or file a JIRA ticket
with INFRA.
---
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]