40611dd611
TBR=kustermann@google.com BUG= Review URL: https://codereview.chromium.org/2454993003 .
61 lines
1.3 KiB
Dart
61 lines
1.3 KiB
Dart
// Copyright (c) 2016, 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.
|
|
|
|
// Tests of block scoping.
|
|
|
|
import 'package:expect/expect.dart';
|
|
|
|
bool oracle() => true;
|
|
|
|
test0() {
|
|
var x = 'outer', y = x;
|
|
Expect.isTrue(x == 'outer');
|
|
Expect.isTrue(y == 'outer');
|
|
{ var x = 'inner';
|
|
Expect.isTrue(x == 'inner');
|
|
Expect.isTrue(y == 'outer');
|
|
}
|
|
Expect.isTrue(x == 'outer');
|
|
Expect.isTrue(y == 'outer');
|
|
|
|
if (oracle()) {
|
|
var y = 'inner';
|
|
Expect.isTrue(x == 'outer');
|
|
Expect.isTrue(y == 'inner');
|
|
} else {
|
|
Expect.isTrue(false);
|
|
}
|
|
Expect.isTrue(x == 'outer');
|
|
Expect.isTrue(y == 'outer');
|
|
}
|
|
|
|
var x = 'toplevel';
|
|
|
|
test1() {
|
|
var y = 'outer';
|
|
Expect.isTrue(x == 'toplevel');
|
|
Expect.isTrue(y == 'outer');
|
|
{ var x = 'inner';
|
|
Expect.isTrue(x == 'inner');
|
|
Expect.isTrue(y == 'outer');
|
|
}
|
|
Expect.isTrue(x == 'toplevel');
|
|
Expect.isTrue(y == 'outer');
|
|
|
|
if (oracle()) {
|
|
var y = 'inner';
|
|
Expect.isTrue(x == 'toplevel');
|
|
Expect.isTrue(y == 'inner');
|
|
} else {
|
|
Expect.isTrue(false);
|
|
}
|
|
Expect.isTrue(x == 'toplevel');
|
|
Expect.isTrue(y == 'outer');
|
|
}
|
|
|
|
main() {
|
|
test0();
|
|
test1();
|
|
}
|