OLD | NEW |
| (Empty) |
1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file | |
2 // for details. All rights reserved. Use of this source code is governed by a | |
3 // BSD-style license that can be found in the LICENSE file. | |
4 | |
5 // Regression test for missing immutability check in the ListSet | |
6 // methods in the API. This allowed overwriting const Lists. | |
7 | |
8 #import("dart:io"); | |
9 | |
10 String getFilename(String path) => | |
11 new File(path).existsSync() ? path : 'runtime/' + path; | |
12 | |
13 void main() { | |
14 var a = const [0]; | |
15 var b = const [0]; | |
16 Expect.isTrue(a === b); | |
17 | |
18 String filename = getFilename("bin/file_test.cc"); | |
19 File file = new File(filename); | |
20 InputStream input = file.openInputStream(); | |
21 try { | |
22 input.readInto(a, 0, 1); | |
23 Expect.fail("no exception thrown"); | |
24 } catch (var e) { | |
25 Expect.isTrue(e is UnsupportedOperationException); | |
26 } | |
27 Expect.equals(0, a[0]); | |
28 Expect.equals(0, b[0]); | |
29 } | |
OLD | NEW |