blob: 4fb61821c2fd07c0f3a556038571a8a8711cc343 [file] [log] [blame]
 // Copyright (c) 2019, 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 An expression element (the base case in lists and sets): /// /// It is a compile-time error if the expression is not a constant expression. /// The expansion is the value of the expression. /// /// @description Checks that the expansion is the value of the expression /// @author sgrekhov@unipro.ru import "../../Utils/expect.dart"; main() { const x = 3; List list1 = const [if (1 > 0) 1, 1 ]; Expect.listEquals([1, 1], list1); List list2 = const [if (1 > 0) x, 2 ]; Expect.listEquals([x, 2], list2); const List list3 = [if (-1 > 0) 1, 1 ]; Expect.listEquals([1], list3); const List list4 = [if (1 > 0) 1, if (false) -1 ]; Expect.listEquals([1], list4); var list5 = const [if (x > 0) 1, 5 + 1, ]; Expect.listEquals([1, 6], list5); var list6 = const [if (1 > 0) x, 1, ]; Expect.listEquals([x, 1], list6); var list7 = const [if (x > 0) x, 7, ]; Expect.listEquals([x, 7], list7); var list8 = const [if (1 > 0) x, 8, ]; Expect.listEquals([x, 8], list8); const list9 = [if (x > 0) 1 + 1, 1 ]; Expect.listEquals([2, 1], list9); const list10 = [if (1 > 0) x + x, 1 + 7]; Expect.listEquals([x + x, 8], list10); Set set1 = const {if (x > 0) 1, -1 }; Expect.setEquals({1, -1}, set1); Set set2 = const {if (1 > 0) x, 1 - 1 }; Expect.setEquals({x, 0}, set2); const Set set3 = {if (x > 0) 1, -1 }; Expect.setEquals({1, -1}, set3); const Set set4 = {if (-1 > 0) x, -1 }; Expect.setEquals({-1}, set4); var set5 = const {if (x > 0) 1, -1, }; Expect.setEquals({1, -1}, set5); var set6 = const {if (1 > 0) x, -1, }; Expect.setEquals({x, -1}, set6); var set7 = const {if (x > 0) 1, -1, }; Expect.setEquals({1, -1}, set7); var set8 = const {if (1 > 0) x, -1, }; Expect.setEquals({x, -1}, set8); const set9 = {if (x > 0) 1, -1 }; Expect.setEquals({1, -1}, set9); const set10 = {if (1 > 0) x, -1 }; Expect.setEquals({x, -1}, set10); }