Skip to content

Commit a804199

Browse files
authored
Merge pull request #69 from powersync-ja/fix-drift-tests
Make drift tests stable
2 parents e197601 + c36a138 commit a804199

File tree

1 file changed

+21
-10
lines changed

1 file changed

+21
-10
lines changed

Diff for: packages/drift_sqlite_async/test/db_test.dart

+21-10
Original file line numberDiff line numberDiff line change
@@ -48,8 +48,15 @@ void main() {
4848

4949
test('watch', () async {
5050
var stream = dbu.select(dbu.todoItems).watch();
51-
var resultsPromise =
52-
stream.distinct().skipWhile((e) => e.isEmpty).take(3).toList();
51+
var resultsPromise = stream
52+
// toString() so that we can use distinct()
53+
.map((rows) => rows.toString())
54+
// Drift may or may not emit duplicate update notifications.
55+
// We use distinct() to ignore those.
56+
.distinct()
57+
.skipWhile((e) => e.isEmpty)
58+
.take(3)
59+
.toList();
5360

5461
await dbu.into(dbu.todoItems).insert(
5562
TodoItemsCompanion.insert(id: Value(1), description: 'Test 1'));
@@ -65,16 +72,20 @@ void main() {
6572
expect(
6673
results,
6774
equals([
68-
[TodoItem(id: 1, description: 'Test 1')],
69-
[TodoItem(id: 1, description: 'Test 1B')],
70-
[]
75+
'[TodoItem(id: 1, description: Test 1)]',
76+
'[TodoItem(id: 1, description: Test 1B)]',
77+
'[]'
7178
]));
7279
});
7380

7481
test('watch with external updates', () async {
7582
var stream = dbu.select(dbu.todoItems).watch();
76-
var resultsPromise =
77-
stream.distinct().skipWhile((e) => e.isEmpty).take(3).toList();
83+
var resultsPromise = stream
84+
.map((rows) => rows.toString())
85+
.distinct()
86+
.skipWhile((e) => e.isEmpty)
87+
.take(3)
88+
.toList();
7889

7990
await db.execute(
8091
'INSERT INTO todos(id, description) VALUES(?, ?)', [1, 'Test 1']);
@@ -88,9 +99,9 @@ void main() {
8899
expect(
89100
results,
90101
equals([
91-
[TodoItem(id: 1, description: 'Test 1')],
92-
[TodoItem(id: 1, description: 'Test 1B')],
93-
[]
102+
'[TodoItem(id: 1, description: Test 1)]',
103+
'[TodoItem(id: 1, description: Test 1B)]',
104+
'[]'
94105
]));
95106
});
96107
});

0 commit comments

Comments
 (0)