37 lines
1.4 KiB
Dart
37 lines
1.4 KiB
Dart
import 'package:flutter_test/flutter_test.dart';
|
|
import 'package:iop_portal/iop_wire/parser_map.dart';
|
|
import 'package:iop_portal/gen/proto/iop/control.pb.dart';
|
|
|
|
void main() {
|
|
test('Parser map should contain PortalHelloRequest and PortalHelloResponse', () {
|
|
expect(portalParserMap.containsKey('iop.PortalHelloRequest'), isTrue);
|
|
expect(portalParserMap.containsKey('iop.PortalHelloResponse'), isTrue);
|
|
expect(portalParserMap.containsKey('PortalHelloRequest'), isTrue);
|
|
expect(portalParserMap.containsKey('PortalHelloResponse'), isTrue);
|
|
|
|
// Verify parser works
|
|
final req = PortalHelloRequest()
|
|
..clientId = 'test-client'
|
|
..clientVersion = '1.0.0';
|
|
final reqBytes = req.writeToBuffer();
|
|
|
|
final parserReq = portalParserMap['PortalHelloRequest'];
|
|
expect(parserReq, isNotNull);
|
|
final parsedReq = parserReq!(reqBytes) as PortalHelloRequest;
|
|
expect(parsedReq.clientId, equals('test-client'));
|
|
expect(parsedReq.clientVersion, equals('1.0.0'));
|
|
|
|
final res = PortalHelloResponse()
|
|
..ready = true
|
|
..protocol = 'proto'
|
|
..message = 'welcome';
|
|
final resBytes = res.writeToBuffer();
|
|
|
|
final parserRes = portalParserMap['PortalHelloResponse'];
|
|
expect(parserRes, isNotNull);
|
|
final parsedRes = parserRes!(resBytes) as PortalHelloResponse;
|
|
expect(parsedRes.ready, isTrue);
|
|
expect(parsedRes.protocol, equals('proto'));
|
|
expect(parsedRes.message, equals('welcome'));
|
|
});
|
|
}
|