Files
fl-query/packages/fl_query/test/query_options_test.dart
T
2022-02-07 00:11:15 +06:00

52 lines
1.6 KiB
Dart

import 'package:gql/ast.dart';
import 'package:gql/language.dart';
import 'package:fl_query/fl_query.dart';
import 'package:test/test.dart';
void main() {
group('query options', () {
group('type getters', () {
test('on QueryOptions', () {
final options = QueryOptions(
document: parseString('query { bar }'),
);
expect(options.type, equals(OperationType.query));
expect(options.isQuery, equals(true));
});
test('on MutationOptions', () {
final options = MutationOptions(
document: parseString('mutation { bar }'),
);
expect(options.type, equals(OperationType.mutation));
expect(options.isMutation, equals(true));
});
test('on SubscriptionOptions', () {
final options = SubscriptionOptions(
document: parseString('subscription { bar }'),
);
expect(options.type, equals(OperationType.subscription));
expect(options.isSubscription, equals(true));
});
});
group('gql integration', () {
test('Options.asRequest', () {
final options = QueryOptions(
document: parseString('query { bar }'),
variables: {
'foo': {
'biz': 'bar',
'bam': [1]
}
},
context: Context.fromList([
HttpLinkHeaders(headers: {'my': 'header'})
]));
final req = options.asRequest;
expect(options.document, equals(req.operation.document));
expect(options.variables, equals(req.variables));
expect(options.context, equals(req.context));
});
});
});
}