Skip to content

Commit

Permalink
Add toString override and improve test coverage
Browse files Browse the repository at this point in the history
Introduce a toString override in ColumnAccessorImpl to enhance debugging and readability. Added tests to verify exception behavior when a column is not found, ensuring stability and clarity in error messages.
  • Loading branch information
zaleslaw committed Nov 18, 2024
1 parent 7695fb2 commit 2f8f023
Show file tree
Hide file tree
Showing 2 changed files with 5 additions and 0 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -43,4 +43,6 @@ internal class ColumnAccessorImpl<T>(val path: ColumnPath) : ColumnAccessor<T> {
override fun getValue(row: AnyRow) = path.getValue(row) as T

override fun getValueOrNull(row: AnyRow) = path.getValueOrNull(row) as T

override fun toString(): String = path().toString()
}
Original file line number Diff line number Diff line change
Expand Up @@ -49,6 +49,9 @@ class GetTests {
shouldThrow<IllegalArgumentException> { row.getValue(c) }
shouldThrow<IllegalArgumentException> { row.getValue(A::c) }

val throwable = shouldThrow<IllegalArgumentException> { df[column<Int>("c")] }
throwable.message shouldContain "Column not found: '[c]'"

val added = df.add(A::c) { "3" }[0]

shouldThrow<ClassCastException> { added.getValue(c) + 1 }
Expand Down

0 comments on commit 2f8f023

Please sign in to comment.