Skip to content

Commit 62b3fcd

Browse files
Test ALTER MATERIALIZED VIEW formatter errors
1 parent 803174d commit 62b3fcd

1 file changed

Lines changed: 27 additions & 0 deletions

File tree

‎tests/sqlparser_postgres.rs‎

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11897,3 +11897,30 @@ fn parse_alter_materialized_view() {
1189711897
);
1189811898
}
1189911899
}
11900+
11901+
#[test]
11902+
fn display_alter_materialized_view_propagates_write_errors() {
11903+
use core::fmt::{self, Write};
11904+
11905+
struct RejectingWriter(&'static str);
11906+
11907+
impl Write for RejectingWriter {
11908+
fn write_str(&mut self, value: &str) -> fmt::Result {
11909+
if value == self.0 {
11910+
Err(fmt::Error)
11911+
} else {
11912+
Ok(())
11913+
}
11914+
}
11915+
}
11916+
11917+
let materialized = pg_and_generic().verified_stmt("ALTER MATERIALIZED VIEW m RENAME TO m2");
11918+
for rejected in ["ALTER ", "MATERIALIZED ", "VIEW "] {
11919+
let mut writer = RejectingWriter(rejected);
11920+
assert_eq!(
11921+
write!(writer, "{materialized}"),
11922+
Err(fmt::Error),
11923+
"{rejected:?}"
11924+
);
11925+
}
11926+
}

0 commit comments

Comments
 (0)