Add tests for null sorting on asc/desc factories

This commit is contained in:
Simon Binder 2022-08-28 22:39:07 +02:00
parent b399db78e3
commit 80f8546122
No known key found for this signature in database
GPG Key ID: 7891917E4147B8C0
3 changed files with 12 additions and 3 deletions

View File

@ -46,7 +46,6 @@ import 'package:drift/drift.dart';
import 'package:flutter/services.dart' show rootBundle;
import 'package:path/path.dart' as p;
LazyDatabase _openConnection() {
return LazyDatabase(() async {
// put the database file, called db.sqlite here, into the documents folder

View File

@ -53,7 +53,7 @@ class OrderingTerm extends Component {
/// Creates an ordering term that sorts for ascending values
/// of [expression] and the [nulls].
factory OrderingTerm.asc(Expression expression, [NullsOrder? nulls]) {
factory OrderingTerm.asc(Expression expression, {NullsOrder? nulls}) {
return OrderingTerm(
expression: expression,
mode: OrderingMode.asc,
@ -63,7 +63,7 @@ class OrderingTerm extends Component {
/// Creates an ordering term that sorts for descending values
/// of [expression] and the [nulls].
factory OrderingTerm.desc(Expression expression, [NullsOrder? nulls]) {
factory OrderingTerm.desc(Expression expression, {NullsOrder? nulls}) {
return OrderingTerm(
expression: expression,
mode: OrderingMode.desc,

View File

@ -75,4 +75,14 @@ void main() {
argThat(isEmpty),
));
});
test('works with helper factories', () {
final table = db.users;
expect(OrderingTerm.asc(table.id), generates('id ASC'));
expect(OrderingTerm.asc(table.id, nulls: NullsOrder.last),
generates('id ASC NULLS LAST'));
expect(OrderingTerm.desc(table.id, nulls: NullsOrder.first),
generates('id DESC NULLS FIRST'));
});
}