fix(csvimport): report accurate physical line numbers via FieldPos; add blank-line + zero-row tests
This commit is contained in:
@@ -32,3 +32,20 @@ func TestParseRejectsEmptyField(t *testing.T) {
|
||||
t.Fatal("empty password must error")
|
||||
}
|
||||
}
|
||||
|
||||
func TestParseBlankLineKeepsCorrectLineNumber(t *testing.T) {
|
||||
// blank physical line 2, malformed row on physical line 3
|
||||
_, err := Parse(strings.NewReader("a@x,p1,a@y,p2\n\nbad,row,here\n"))
|
||||
if err == nil {
|
||||
t.Fatal("expected error for 3-column row")
|
||||
}
|
||||
if !strings.Contains(err.Error(), "line 3") {
|
||||
t.Fatalf("error must reference physical line 3, got: %v", err)
|
||||
}
|
||||
}
|
||||
|
||||
func TestParseZeroRowsErrors(t *testing.T) {
|
||||
if _, err := Parse(strings.NewReader("\n\n \n")); err == nil {
|
||||
t.Fatal("expected error when no rows parsed")
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user