Skip to content

Commit 37e10e1

Browse files
committed
Fix existing test
1 parent 552470d commit 37e10e1

File tree

1 file changed

+20
-10
lines changed

1 file changed

+20
-10
lines changed

powersync/src/db/schema.rs

Lines changed: 20 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -193,7 +193,14 @@ impl Serialize for TableOptions {
193193
where
194194
S: Serializer,
195195
{
196-
let mut serializer = serializer.serialize_struct("TableOptions", 5)?;
196+
let mut serializer = serializer.serialize_struct(
197+
"TableOptions",
198+
4 + if self.track_previous_values.is_some() {
199+
2
200+
} else {
201+
0
202+
},
203+
)?;
197204

198205
serializer.serialize_field("local_only", &self.local_only)?;
199206
serializer.serialize_field("insert_only", &self.insert_only)?;
@@ -212,7 +219,8 @@ impl Serialize for TableOptions {
212219
&include_old.only_when_changed,
213220
)?;
214221
} else {
215-
serializer.serialize_field("include_old_only_when_changed", &false)?;
222+
serializer.skip_field("include_old")?;
223+
serializer.skip_field("include_old_only_when_changed")?;
216224
}
217225

218226
serializer.end()
@@ -455,6 +463,7 @@ impl TrackPreviousValues {
455463
#[cfg(test)]
456464
mod test {
457465
use crate::schema::{Column, RawTable, RawTableSchema, Table, TrackPreviousValues};
466+
use serde_json::json;
458467

459468
#[test]
460469
fn handles_options_track_metadata() {
@@ -513,18 +522,19 @@ mod test {
513522
#[test]
514523
fn handles_options_track_previous_column_filter() {
515524
let value = serde_json::to_value(Table::create("foo", vec![], |tbl| {
516-
tbl.options.track_previous_values = Some(TrackPreviousValues::all())
525+
tbl.options.track_previous_values = Some(TrackPreviousValues {
526+
column_filter: Some(vec!["a".into()]),
527+
only_when_changed: true,
528+
})
517529
}))
518530
.unwrap();
519531
let value = value.as_object().unwrap();
520532

521-
assert!(value.get("include_old").unwrap().as_bool().unwrap());
522-
assert!(
523-
!value
524-
.get("include_old_only_when_changed")
525-
.unwrap()
526-
.as_bool()
527-
.unwrap(),
533+
let include_old = value.get("include_old").unwrap();
534+
assert_eq!(*include_old, json!(["a"]));
535+
assert_eq!(
536+
*value.get("include_old_only_when_changed").unwrap(),
537+
json!(true)
528538
);
529539
}
530540

0 commit comments

Comments
 (0)