| // Copyright (c) 2018, 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. |
| |
| /// @assertion If s is a set literal, then it has the form |
| /// const? ('<' type '>')? '{' ... '}' where ... is zero or more comma-separated |
| /// element expressions (potentially with a trailing comma which is otherwise |
| /// ignored). |
| /// |
| /// @description Checks set literal syntax |
| /// @author sgrekhov@unipro.ru |
| |
| import "../../Utils/expect.dart"; |
| |
| main() { |
| var v1 = const <int> {1, 2, 3,}; |
| Expect.equals(3, v1.length); |
| Expect.iterableEquals(new Set.from([1, 2, 3]), v1); |
| |
| var v2 = <int> {1, 2, 3, 4,}; |
| Expect.equals(4, v2.length); |
| Expect.iterableEquals(new Set.from([1, 2, 3, 4]), v2); |
| |
| var v3 = {1, 2, 3, 4, 5,}; |
| Expect.equals(5, v3.length); |
| Expect.iterableEquals(new Set.from([1, 2, 3, 4, 5]), v3); |
| |
| var v4 = const <int> {1, 2, 3}; |
| Expect.equals(3, v1.length); |
| Expect.iterableEquals(new Set.from([1, 2, 3]), v4); |
| |
| var v5 = <int> {1, 2, 3, 4}; |
| Expect.equals(4, v2.length); |
| Expect.iterableEquals(new Set.from([1, 2, 3, 4]), v5); |
| |
| var v6 = {1, 2, 3, 4, 5}; |
| Expect.equals(5, v3.length); |
| Expect.iterableEquals(new Set.from([1, 2, 3, 4, 5]), v6); |
| } |