-
Notifications
You must be signed in to change notification settings - Fork 186
/
Copy pathrepeated_field_test.dart
43 lines (37 loc) · 1.17 KB
/
repeated_field_test.dart
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
// Copyright (c) 2015, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
import 'package:protobuf/protobuf.dart';
import 'package:test/test.dart';
import '../out/protos/google/protobuf/unittest.pb.dart';
void main() {
test('check properties are initialized for repeated fields', () {
final msg = TestAllTypes();
expect(
(msg.info_.byName['repeatedNestedMessage']
as FieldInfo<TestAllTypes_NestedMessage>)
.check,
isNotNull);
expect(
(msg.info_.byName['repeatedgroup']
as FieldInfo<TestAllTypes_RepeatedGroup>)
.check,
isNotNull);
expect(
(msg.info_.byName['repeatedNestedEnum']
as FieldInfo<TestAllTypes_NestedEnum>)
.check,
isNotNull);
});
test('check read-only default list type', () {
final msg = TestAllTypes()..freeze();
final list = msg.repeatedInt32;
expect(
list.firstWhere(
(msgParam) => false,
orElse: () => 123,
),
123,
);
});
}