Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(42)

Side by Side Diff: tests/language/built_in_identifier_test.dart

Issue 2992903002: Fix a couple of things causing bot redness: (Closed)
Patch Set: Created 3 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « no previous file | tests/language/language_dart2js.status » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
(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 // Check that we can use pseudo keywords as names in function level code.
5
6 import "package:expect/expect.dart";
7
8 class PseudoKWTest {
9 static testMain() {
10 // This is a list of built-in identifiers from the Dart spec.
11 // It sanity checks that these pseudo-keywords are legal identifiers.
12
13 var abstract = 0; // //# 01: ok
14 var as = 0;
15 var dynamic = 0;
16 var export = 0;
17 var external = 0; // //# 01: ok
18 var factory = 0;
19 var get = 0;
20 var implements = 0;
21 var import = 0;
22 var library = 0;
23 var operator = 0;
24 var part = 0;
25 var set = 0;
26 var static = 0; // //# 01: ok
27 var typedef = 0;
28
29 // "native" is a per-implementation extension that is not a part of the
30 // Dart language. While it is not an official built-in identifier, it
31 // is useful to ensure that it remains a legal identifier.
32 var native = 0;
33
34 // The code below adds a few additional variants of usage without any
35 // attempt at complete coverage.
36 {
37 void factory(set) {
38 return; // //# 01: ok
39 }
40 }
41
42 get:
43 while (import > 0) {
44 break get;
45 }
46
47 return
48 static + // //# 01: ok
49 library * operator;
50 }
51 }
52
53 typedef(x) => "typedef $x"; // //# 01: ok
54
55 static(abstract) { // //# 01: ok
56 return abstract == true; // //# 01: ok
57 } // //# 01: ok
58
59 class A {
60 var typedef = 0;
61 final operator = "smooth";
62
63 set(x) {
64 typedef = x;
65 }
66
67 get() => typedef - 5;
68
69 static static() { // //# 01: ok
70 return 1; // //# 01: ok
71 } // //# 01: ok
72 static check() {
73 var o = new A();
74 o.set(55);
75 Expect.equals(50, o.get());
76 static(); // //# 01: ok
77 }
78 }
79
80 class B {
81 var set = 100;
82 get get => set;
83 set get(get) => set = 2 * get.get;
84
85 static() { // //# 01: ok
86 var set = new B(); // //# 01: ok
87 set.get = set; // //# 01: ok
88 Expect.equals(200, set.get); // //# 01: ok
89 } // //# 01: ok
90 int operator() {
91 return 1;
92 }
93 }
94
95 class C {
96 static int operator = (5);
97 static var get;
98 static get set => 111;
99 static set set(set) {}
100 }
101
102 main() {
103 PseudoKWTest.testMain();
104 A.check();
105 new B().static(); // //# 01: ok
106 Expect.equals(1, new B().operator());
107 Expect.equals(1, A.static()); // //# 01: ok
108 typedef("T"); // //# 01: ok
109 Expect.equals("typedef T", typedef("T")); // //# 01: ok
110 static("true"); // //# 01: ok
111 Expect.equals(false, static("true")); // //# 01: ok
112 Expect.equals(5, C.operator);
113 Expect.equals(null, C.get);
114 C.set = 0;
115 Expect.equals(111, C.set);
116 }
OLDNEW
« no previous file with comments | « no previous file | tests/language/language_dart2js.status » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698