Skip to content

Commit af987f1

Browse files
committed
progress
1 parent b72b244 commit af987f1

File tree

6 files changed

+31
-18
lines changed

6 files changed

+31
-18
lines changed

crates/pgt_pretty_print/src/nodes.rs

Lines changed: 19 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -711,25 +711,27 @@ impl ToTokens for pgt_query::protobuf::ResTarget {
711711
if e.is_within_group(GroupKind::UpdateStmt) {
712712
if !self.name.is_empty() {
713713
e.token(TokenKind::IDENT(self.name.clone()));
714+
for d in &self.indirection {
715+
e.token(TokenKind::DOT);
716+
d.to_tokens(e);
717+
}
714718
e.space();
715719
e.token(TokenKind::IDENT("=".to_string()));
716720
e.space();
717721
}
718722
if let Some(ref val) = self.val {
719723
val.to_tokens(e);
720724
}
721-
} else {
722-
if let Some(ref val) = self.val {
723-
val.to_tokens(e);
724-
if !self.name.is_empty() {
725-
e.space();
726-
e.token(TokenKind::AS_KW);
727-
e.space();
728-
e.token(TokenKind::IDENT(self.name.clone()));
729-
}
730-
} else if !self.name.is_empty() {
725+
} else if let Some(ref val) = self.val {
726+
val.to_tokens(e);
727+
if !self.name.is_empty() {
728+
e.space();
729+
e.token(TokenKind::AS_KW);
730+
e.space();
731731
e.token(TokenKind::IDENT(self.name.clone()));
732732
}
733+
} else if !self.name.is_empty() {
734+
e.token(TokenKind::IDENT(self.name.clone()));
733735
}
734736

735737
e.group_end();
@@ -4183,14 +4185,21 @@ impl ToTokens for pgt_query::protobuf::CreateDomainStmt {
41834185

41844186
impl ToTokens for pgt_query::protobuf::CollateClause {
41854187
fn to_tokens(&self, e: &mut EventEmitter) {
4188+
if let Some(arg) = &self.arg {
4189+
arg.to_tokens(e);
4190+
e.space();
4191+
}
4192+
41864193
e.token(TokenKind::COLLATE_KW);
41874194
e.space();
41884195

41894196
for (i, name) in self.collname.iter().enumerate() {
41904197
if i > 0 {
41914198
e.token(TokenKind::DOT);
41924199
}
4200+
e.token(TokenKind::IDENT('"'.to_string()));
41934201
name.to_tokens(e);
4202+
e.token(TokenKind::IDENT('"'.to_string()));
41944203
}
41954204
}
41964205
}

crates/pgt_pretty_print/tests/data/collate_expr_test_0_60.sql

Lines changed: 0 additions & 1 deletion
This file was deleted.

crates/pgt_pretty_print/tests/data/subscripting_ref_0_60.sql

Lines changed: 0 additions & 1 deletion
This file was deleted.
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
---
2+
source: crates/pgt_pretty_print/tests/tests.rs
3+
input_file: crates/pgt_pretty_print/tests/data/field_store_0_60.sql
4+
snapshot_kind: text
5+
---
6+
UPDATE my_table SET composite_col.field1 = 'new_value';

crates/pgt_pretty_print/tests/snapshots/tests__subscripting_ref_0_60.snap

Lines changed: 0 additions & 5 deletions
This file was deleted.

crates/pgt_pretty_print/tests/tests.rs

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,9 @@ use pgt_pretty_print::{
1313
)]
1414
fn test_formatter(fixture: Fixture<&str>) {
1515
let content = fixture.content();
16+
17+
println!("Original content: {}", content);
18+
1619
let absolute_fixture_path = Utf8Path::new(fixture.path());
1720
let input_file = absolute_fixture_path;
1821
let test_name = absolute_fixture_path
@@ -30,6 +33,8 @@ fn test_formatter(fixture: Fixture<&str>) {
3033
let parsed = pgt_query::parse(content).expect("Failed to parse SQL");
3134
let mut ast = parsed.into_root().expect("No root node found");
3235

36+
println!("Original AST: {:?}", ast);
37+
3338
let mut emitter = EventEmitter::new();
3439
ast.to_tokens(&mut emitter);
3540

@@ -67,7 +72,7 @@ fn test_formatter(fixture: Fixture<&str>) {
6772
fn validate_test_data(fixture: Fixture<&str>) {
6873
let content = fixture.content();
6974
let absolute_fixture_path = Utf8Path::new(fixture.path());
70-
let test_name = absolute_fixture_path
75+
let _test_name = absolute_fixture_path
7176
.file_name()
7277
.and_then(|x| x.strip_suffix(".sql"))
7378
.unwrap();

0 commit comments

Comments
 (0)