0

I am doing a unit test, where I check the equality of two Spark dataframes with

Assertions.assertEquals(actualDF.schema(), expectedDF.schema());

If I print the schemas, they look the same:

root
 |-- id: long (nullable = true)
 |-- idvalue: string (nullable = true)
 |-- seqvalue: long (nullable = true)
 |-- idconfig: string (nullable = true)
 |-- key: string (nullable = true)
 |-- value: string (nullable = true)
 |-- date: string (nullable = true)

root
 |-- id: long (nullable = true)
 |-- idvalue: string (nullable = true)
 |-- seqvalue: long (nullable = true)
 |-- idconfig: string (nullable = true)
 |-- key: string (nullable = true)
 |-- value: string (nullable = true)
 |-- date: string (nullable = true)

However, I get an error message

org.opentest4j.AssertionFailedError: expected: org.apache.spark.sql.types.StructType@55b9ffd0<StructType(StructField(id,LongType,true), StructField(idvalue,StringType,true), StructField(seqvalue,LongType,true), StructField(idconfig,StringType,true), StructField(key,StringType,true), StructField(value,StringType,true), StructField(date,StringType,true))> but was: org.apache.spark.sql.types.StructType@a5f5b96<StructType(StructField(id,LongType,true), StructField(idvalue,StringType,true), StructField(seqvalue,LongType,true), StructField(idconfig,StringType,true), StructField(key,StringType,true), StructField(value,StringType,true), StructField(date,StringType,true))>
Expected :StructType(StructField(id,LongType,true), StructField(idvalue,StringType,true), StructField(seqvalue,LongType,true), StructField(idconfig,StringType,true), StructField(key,StringType,true), StructField(value,StringType,true), StructField(date,StringType,true))
Actual   :StructType(StructField(id,LongType,true), StructField(idvalue,StringType,true), StructField(seqvalue,LongType,true), StructField(idconfig,StringType,true), StructField(key,StringType,true), StructField(value,StringType,true), StructField(date,StringType,true))

The only difference I see is that weird number StructType@55b9ff0 vs. StructType@a5f5b96 in the first line, from which I don't know what it means and why it is relevant.

Corram
  • 233
  • 1
  • 3
  • 13
  • Does this answer your question? [How to compare two StructType sharing same contents?](https://stackoverflow.com/questions/41372002/how-to-compare-two-structtype-sharing-same-contents) – Alex Ott Aug 28 '20 at 10:06
  • No, I actually care about the column ordering and my column ordering is the same on both schemata. Doesn't explain the error message – Corram Aug 28 '20 at 13:31

0 Answers0