Files
Qlyra/test/webapp_module_test.dart
sevenhill f74057ce9b
Build Android (FCM) / build-android-fcm (push) Canceled after 0s
Build Android / build-android (push) Canceled after 0s
Build iOS / build-ios (push) Canceled after 0s
Build Linux / build-linux (push) Canceled after 0s
Build macOS / build-macos (push) Canceled after 0s
Build Windows / build-windows (push) Canceled after 0s
Release (main) / android (oneme) (push) Canceled after 0s
Release (main) / android (qlyra) (push) Canceled after 0s
Release (main) / windows (push) Canceled after 0s
Release (main) / linux (push) Canceled after 0s
Release (main) / macos (push) Canceled after 0s
Release (main) / ios (push) Canceled after 0s
Release (main) / release (push) Canceled after 0s
Rebrand application as Qlyra
2026-08-30 13:16:17 +03:00

35 lines
902 B
Dart

import 'package:flutter_test/flutter_test.dart';
import 'package:qlyra/backend/modules/webapp.dart';
void main() {
group('ExternalCallbackResult', () {
test('parses callback response fields', () {
final result = ExternalCallbackResult.fromPayload({
'botId': '123456',
'startParam': 'esia-complete',
});
expect(result?.botId, 123456);
expect(result?.startParam, 'esia-complete');
});
test('parses a nested protocol response', () {
final result = ExternalCallbackResult.fromPayload({
'data': {'bot_id': 42, 'start_param': 'done'},
});
expect(result?.botId, 42);
expect(result?.startParam, 'done');
});
test('rejects a response without a bot id', () {
expect(
ExternalCallbackResult.fromPayload({
'data': {'startParam': 'done'},
}),
isNull,
);
});
});
}