Skip to content
This repository was archived by the owner on Feb 25, 2025. It is now read-only.

Commit 3a963ff

Browse files
author
Dart CI
committed
Version 2.16.0-63.0.dev
Merge commit 'c39b2434358298d92572eb758ba1ecd88d427a5a' into 'dev'
2 parents 7ed7aac + c39b243 commit 3a963ff

31 files changed

+1541
-39
lines changed

pkg/dartdev/test/utils.dart

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -113,15 +113,14 @@ dev_dependencies:
113113
],
114114
workingDirectory: workingDir ?? dir.path,
115115
environment: {if (logAnalytics) '_DARTDEV_LOG_ANALYTICS': 'true'});
116-
117-
final stdoutContents = await _process.stdout.transform(utf8.decoder).join();
118-
final stderrContents = await _process.stderr.transform(utf8.decoder).join();
116+
final stdoutContents = _process.stdout.transform(utf8.decoder).join();
117+
final stderrContents = _process.stderr.transform(utf8.decoder).join();
119118
final code = await _process.exitCode;
120119
return ProcessResult(
121120
_process.pid,
122121
code,
123-
stdoutContents,
124-
stderrContents,
122+
await stdoutContents,
123+
await stderrContents,
125124
);
126125
}
127126

pkg/front_end/test/incremental_dart2js_load_from_dill_test.dart

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -138,8 +138,8 @@ class Strategy extends EquivalenceStrategy {
138138
if (a != null && b != null) {
139139
ReferenceName thisName = ReferenceName.fromReference(a)!;
140140
ReferenceName otherName = ReferenceName.fromReference(b)!;
141-
if (thisName.kind == ReferenceNameKind.Member &&
142-
otherName.kind == ReferenceNameKind.Member &&
141+
if (thisName.isMember &&
142+
otherName.isMember &&
143143
thisName.memberName == otherName.memberName) {
144144
String? thisClassName = thisName.declarationName;
145145
String? otherClassName = otherName.declarationName;

pkg/front_end/test/spell_checking_list_tests.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -158,6 +158,7 @@ cb
158158
cc
159159
ccc
160160
cell
161+
certificate
161162
cf
162163
characteristics
163164
charset
Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
// Copyright (c) 2021, 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+
// All three libraries have an HttpRequest class.
6+
import "conditional_import.dart"
7+
if (dart.library.io) "dart:io"
8+
if (dart.library.html) "dart:html" as a;
9+
10+
// All three libraries have an HttpRequest class.
11+
import "conditional_import.dart" if (dart.library.foo) "dart:foo" as b;
12+
13+
class HttpRequest {}
14+
15+
testA(a.HttpRequest request) {
16+
request.certificate; // error (from dart:io)
17+
request.response; // ok (from dart:io and dart:html)
18+
request.readyState; // ok (from dart:html)
19+
request.hashCode; // ok
20+
}
21+
22+
testB(b.HttpRequest request) {
23+
request.certificate; // error
24+
request.response; // error
25+
request.readyState; // error
26+
request.hashCode; // ok
27+
}
28+
29+
void main() {
30+
expect(false, const bool.fromEnvironment("dart.library.io"));
31+
expect(true, const bool.fromEnvironment("dart.library.html"));
32+
expect(false, const bool.fromEnvironment("dart.library.foo"));
33+
}
34+
35+
expect(expected, actual) {
36+
if (expected != actual) throw 'Expected $expected, actual $actual';
37+
}
Lines changed: 84 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,84 @@
1+
library /*isNonNullableByDefault*/;
2+
//
3+
// Problems in library:
4+
//
5+
// pkg/front_end/testcases/dart2js/conditional_import.dart:18:11: Error: The getter 'readyState' isn't defined for the class 'HttpRequest'.
6+
// - 'HttpRequest' is from 'dart:_http'.
7+
// Try correcting the name to the name of an existing getter, or defining a getter or field named 'readyState'.
8+
// request.readyState; // ok (from dart:html)
9+
// ^^^^^^^^^^
10+
//
11+
// pkg/front_end/testcases/dart2js/conditional_import.dart:23:11: Error: The getter 'certificate' isn't defined for the class 'HttpRequest'.
12+
// - 'HttpRequest' is from 'pkg/front_end/testcases/dart2js/conditional_import.dart'.
13+
// Try correcting the name to the name of an existing getter, or defining a getter or field named 'certificate'.
14+
// request.certificate; // error
15+
// ^^^^^^^^^^^
16+
//
17+
// pkg/front_end/testcases/dart2js/conditional_import.dart:24:11: Error: The getter 'response' isn't defined for the class 'HttpRequest'.
18+
// - 'HttpRequest' is from 'pkg/front_end/testcases/dart2js/conditional_import.dart'.
19+
// Try correcting the name to the name of an existing getter, or defining a getter or field named 'response'.
20+
// request.response; // error
21+
// ^^^^^^^^
22+
//
23+
// pkg/front_end/testcases/dart2js/conditional_import.dart:25:11: Error: The getter 'readyState' isn't defined for the class 'HttpRequest'.
24+
// - 'HttpRequest' is from 'pkg/front_end/testcases/dart2js/conditional_import.dart'.
25+
// Try correcting the name to the name of an existing getter, or defining a getter or field named 'readyState'.
26+
// request.readyState; // error
27+
// ^^^^^^^^^^
28+
//
29+
import self as self;
30+
import "dart:core" as core;
31+
import "dart:_http" as _ht;
32+
import "dart:io" as io;
33+
34+
import "dart:io" as a;
35+
import "org-dartlang-testcase:///conditional_import.dart" as b;
36+
37+
class HttpRequest extends core::Object {
38+
synthetic constructor •() → self::HttpRequest
39+
: super core::Object::•()
40+
;
41+
static method _#new#tearOff() → self::HttpRequest
42+
return new self::HttpRequest::•();
43+
}
44+
static method testA(_ht::HttpRequest request) → dynamic {
45+
request.{_ht::HttpRequest::certificate}{io::X509Certificate?};
46+
request.{_ht::HttpRequest::response}{_ht::HttpResponse};
47+
invalid-expression "pkg/front_end/testcases/dart2js/conditional_import.dart:18:11: Error: The getter 'readyState' isn't defined for the class 'HttpRequest'.
48+
- 'HttpRequest' is from 'dart:_http'.
49+
Try correcting the name to the name of an existing getter, or defining a getter or field named 'readyState'.
50+
request.readyState; // ok (from dart:html)
51+
^^^^^^^^^^" in request{<unresolved>}.readyState;
52+
request.{core::Object::hashCode}{core::int};
53+
}
54+
static method testB(self::HttpRequest request) → dynamic {
55+
invalid-expression "pkg/front_end/testcases/dart2js/conditional_import.dart:23:11: Error: The getter 'certificate' isn't defined for the class 'HttpRequest'.
56+
- 'HttpRequest' is from 'pkg/front_end/testcases/dart2js/conditional_import.dart'.
57+
Try correcting the name to the name of an existing getter, or defining a getter or field named 'certificate'.
58+
request.certificate; // error
59+
^^^^^^^^^^^" in request{<unresolved>}.certificate;
60+
invalid-expression "pkg/front_end/testcases/dart2js/conditional_import.dart:24:11: Error: The getter 'response' isn't defined for the class 'HttpRequest'.
61+
- 'HttpRequest' is from 'pkg/front_end/testcases/dart2js/conditional_import.dart'.
62+
Try correcting the name to the name of an existing getter, or defining a getter or field named 'response'.
63+
request.response; // error
64+
^^^^^^^^" in request{<unresolved>}.response;
65+
invalid-expression "pkg/front_end/testcases/dart2js/conditional_import.dart:25:11: Error: The getter 'readyState' isn't defined for the class 'HttpRequest'.
66+
- 'HttpRequest' is from 'pkg/front_end/testcases/dart2js/conditional_import.dart'.
67+
Try correcting the name to the name of an existing getter, or defining a getter or field named 'readyState'.
68+
request.readyState; // error
69+
^^^^^^^^^^" in request{<unresolved>}.readyState;
70+
request.{core::Object::hashCode}{core::int};
71+
}
72+
static method main() → void {
73+
self::expect(false, #C1);
74+
self::expect(true, #C1);
75+
self::expect(false, #C1);
76+
}
77+
static method expect(dynamic expected, dynamic actual) → dynamic {
78+
if(!(expected =={core::Object::==}{(core::Object) → core::bool} actual))
79+
throw "Expected ${expected}, actual ${actual}";
80+
}
81+
82+
constants {
83+
#C1 = false
84+
}
Lines changed: 84 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,84 @@
1+
library /*isNonNullableByDefault*/;
2+
//
3+
// Problems in library:
4+
//
5+
// pkg/front_end/testcases/dart2js/conditional_import.dart:18:11: Error: The getter 'readyState' isn't defined for the class 'HttpRequest'.
6+
// - 'HttpRequest' is from 'dart:_http'.
7+
// Try correcting the name to the name of an existing getter, or defining a getter or field named 'readyState'.
8+
// request.readyState; // ok (from dart:html)
9+
// ^^^^^^^^^^
10+
//
11+
// pkg/front_end/testcases/dart2js/conditional_import.dart:23:11: Error: The getter 'certificate' isn't defined for the class 'HttpRequest'.
12+
// - 'HttpRequest' is from 'pkg/front_end/testcases/dart2js/conditional_import.dart'.
13+
// Try correcting the name to the name of an existing getter, or defining a getter or field named 'certificate'.
14+
// request.certificate; // error
15+
// ^^^^^^^^^^^
16+
//
17+
// pkg/front_end/testcases/dart2js/conditional_import.dart:24:11: Error: The getter 'response' isn't defined for the class 'HttpRequest'.
18+
// - 'HttpRequest' is from 'pkg/front_end/testcases/dart2js/conditional_import.dart'.
19+
// Try correcting the name to the name of an existing getter, or defining a getter or field named 'response'.
20+
// request.response; // error
21+
// ^^^^^^^^
22+
//
23+
// pkg/front_end/testcases/dart2js/conditional_import.dart:25:11: Error: The getter 'readyState' isn't defined for the class 'HttpRequest'.
24+
// - 'HttpRequest' is from 'pkg/front_end/testcases/dart2js/conditional_import.dart'.
25+
// Try correcting the name to the name of an existing getter, or defining a getter or field named 'readyState'.
26+
// request.readyState; // error
27+
// ^^^^^^^^^^
28+
//
29+
import self as self;
30+
import "dart:core" as core;
31+
import "dart:_http" as _ht;
32+
import "dart:io" as io;
33+
34+
import "dart:io" as a;
35+
import "org-dartlang-testcase:///conditional_import.dart" as b;
36+
37+
class HttpRequest extends core::Object {
38+
synthetic constructor •() → self::HttpRequest
39+
: super core::Object::•()
40+
;
41+
static method _#new#tearOff() → self::HttpRequest
42+
return new self::HttpRequest::•();
43+
}
44+
static method testA(_ht::HttpRequest request) → dynamic {
45+
request.{_ht::HttpRequest::certificate}{io::X509Certificate?};
46+
request.{_ht::HttpRequest::response}{_ht::HttpResponse};
47+
invalid-expression "pkg/front_end/testcases/dart2js/conditional_import.dart:18:11: Error: The getter 'readyState' isn't defined for the class 'HttpRequest'.
48+
- 'HttpRequest' is from 'dart:_http'.
49+
Try correcting the name to the name of an existing getter, or defining a getter or field named 'readyState'.
50+
request.readyState; // ok (from dart:html)
51+
^^^^^^^^^^" in request{<unresolved>}.readyState;
52+
request.{core::Object::hashCode}{core::int};
53+
}
54+
static method testB(self::HttpRequest request) → dynamic {
55+
invalid-expression "pkg/front_end/testcases/dart2js/conditional_import.dart:23:11: Error: The getter 'certificate' isn't defined for the class 'HttpRequest'.
56+
- 'HttpRequest' is from 'pkg/front_end/testcases/dart2js/conditional_import.dart'.
57+
Try correcting the name to the name of an existing getter, or defining a getter or field named 'certificate'.
58+
request.certificate; // error
59+
^^^^^^^^^^^" in request{<unresolved>}.certificate;
60+
invalid-expression "pkg/front_end/testcases/dart2js/conditional_import.dart:24:11: Error: The getter 'response' isn't defined for the class 'HttpRequest'.
61+
- 'HttpRequest' is from 'pkg/front_end/testcases/dart2js/conditional_import.dart'.
62+
Try correcting the name to the name of an existing getter, or defining a getter or field named 'response'.
63+
request.response; // error
64+
^^^^^^^^" in request{<unresolved>}.response;
65+
invalid-expression "pkg/front_end/testcases/dart2js/conditional_import.dart:25:11: Error: The getter 'readyState' isn't defined for the class 'HttpRequest'.
66+
- 'HttpRequest' is from 'pkg/front_end/testcases/dart2js/conditional_import.dart'.
67+
Try correcting the name to the name of an existing getter, or defining a getter or field named 'readyState'.
68+
request.readyState; // error
69+
^^^^^^^^^^" in request{<unresolved>}.readyState;
70+
request.{core::Object::hashCode}{core::int};
71+
}
72+
static method main() → void {
73+
self::expect(false, #C1);
74+
self::expect(true, #C1);
75+
self::expect(false, #C1);
76+
}
77+
static method expect(dynamic expected, dynamic actual) → dynamic {
78+
if(!(expected =={core::Object::==}{(core::Object) → core::bool} actual))
79+
throw "Expected ${expected}, actual ${actual}";
80+
}
81+
82+
constants {
83+
#C1 = false
84+
}
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
import "conditional_import.dart"
2+
if (dart.library.io) "dart:io"
3+
if (dart.library.html) "dart:html" as a;
4+
import "conditional_import.dart" if (dart.library.foo) "dart:foo" as b;
5+
6+
class HttpRequest {}
7+
8+
testA(a.HttpRequest request) {}
9+
testB(b.HttpRequest request) {}
10+
void main() {}
11+
expect(expected, actual) {}
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
import "conditional_import.dart" if (dart.library.foo) "dart:foo" as b;
2+
import "conditional_import.dart"
3+
if (dart.library.io) "dart:io"
4+
if (dart.library.html) "dart:html" as a;
5+
6+
class HttpRequest {}
7+
8+
expect(expected, actual) {}
9+
testA(a.HttpRequest request) {}
10+
testB(b.HttpRequest request) {}
11+
void main() {}
Lines changed: 84 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,84 @@
1+
library /*isNonNullableByDefault*/;
2+
//
3+
// Problems in library:
4+
//
5+
// pkg/front_end/testcases/dart2js/conditional_import.dart:18:11: Error: The getter 'readyState' isn't defined for the class 'HttpRequest'.
6+
// - 'HttpRequest' is from 'dart:_http'.
7+
// Try correcting the name to the name of an existing getter, or defining a getter or field named 'readyState'.
8+
// request.readyState; // ok (from dart:html)
9+
// ^^^^^^^^^^
10+
//
11+
// pkg/front_end/testcases/dart2js/conditional_import.dart:23:11: Error: The getter 'certificate' isn't defined for the class 'HttpRequest'.
12+
// - 'HttpRequest' is from 'pkg/front_end/testcases/dart2js/conditional_import.dart'.
13+
// Try correcting the name to the name of an existing getter, or defining a getter or field named 'certificate'.
14+
// request.certificate; // error
15+
// ^^^^^^^^^^^
16+
//
17+
// pkg/front_end/testcases/dart2js/conditional_import.dart:24:11: Error: The getter 'response' isn't defined for the class 'HttpRequest'.
18+
// - 'HttpRequest' is from 'pkg/front_end/testcases/dart2js/conditional_import.dart'.
19+
// Try correcting the name to the name of an existing getter, or defining a getter or field named 'response'.
20+
// request.response; // error
21+
// ^^^^^^^^
22+
//
23+
// pkg/front_end/testcases/dart2js/conditional_import.dart:25:11: Error: The getter 'readyState' isn't defined for the class 'HttpRequest'.
24+
// - 'HttpRequest' is from 'pkg/front_end/testcases/dart2js/conditional_import.dart'.
25+
// Try correcting the name to the name of an existing getter, or defining a getter or field named 'readyState'.
26+
// request.readyState; // error
27+
// ^^^^^^^^^^
28+
//
29+
import self as self;
30+
import "dart:core" as core;
31+
import "dart:_http" as _ht;
32+
import "dart:io" as io;
33+
34+
import "dart:io" as a;
35+
import "org-dartlang-testcase:///conditional_import.dart" as b;
36+
37+
class HttpRequest extends core::Object {
38+
synthetic constructor •() → self::HttpRequest
39+
: super core::Object::•()
40+
;
41+
static method _#new#tearOff() → self::HttpRequest
42+
return new self::HttpRequest::•();
43+
}
44+
static method testA(_ht::HttpRequest request) → dynamic {
45+
request.{_ht::HttpRequest::certificate}{io::X509Certificate?};
46+
request.{_ht::HttpRequest::response}{_ht::HttpResponse};
47+
invalid-expression "pkg/front_end/testcases/dart2js/conditional_import.dart:18:11: Error: The getter 'readyState' isn't defined for the class 'HttpRequest'.
48+
- 'HttpRequest' is from 'dart:_http'.
49+
Try correcting the name to the name of an existing getter, or defining a getter or field named 'readyState'.
50+
request.readyState; // ok (from dart:html)
51+
^^^^^^^^^^" in request{<unresolved>}.readyState;
52+
request.{core::Object::hashCode}{core::int};
53+
}
54+
static method testB(self::HttpRequest request) → dynamic {
55+
invalid-expression "pkg/front_end/testcases/dart2js/conditional_import.dart:23:11: Error: The getter 'certificate' isn't defined for the class 'HttpRequest'.
56+
- 'HttpRequest' is from 'pkg/front_end/testcases/dart2js/conditional_import.dart'.
57+
Try correcting the name to the name of an existing getter, or defining a getter or field named 'certificate'.
58+
request.certificate; // error
59+
^^^^^^^^^^^" in request{<unresolved>}.certificate;
60+
invalid-expression "pkg/front_end/testcases/dart2js/conditional_import.dart:24:11: Error: The getter 'response' isn't defined for the class 'HttpRequest'.
61+
- 'HttpRequest' is from 'pkg/front_end/testcases/dart2js/conditional_import.dart'.
62+
Try correcting the name to the name of an existing getter, or defining a getter or field named 'response'.
63+
request.response; // error
64+
^^^^^^^^" in request{<unresolved>}.response;
65+
invalid-expression "pkg/front_end/testcases/dart2js/conditional_import.dart:25:11: Error: The getter 'readyState' isn't defined for the class 'HttpRequest'.
66+
- 'HttpRequest' is from 'pkg/front_end/testcases/dart2js/conditional_import.dart'.
67+
Try correcting the name to the name of an existing getter, or defining a getter or field named 'readyState'.
68+
request.readyState; // error
69+
^^^^^^^^^^" in request{<unresolved>}.readyState;
70+
request.{core::Object::hashCode}{core::int};
71+
}
72+
static method main() → void {
73+
self::expect(false, #C1);
74+
self::expect(true, #C1);
75+
self::expect(false, #C1);
76+
}
77+
static method expect(dynamic expected, dynamic actual) → dynamic {
78+
if(!(expected =={core::Object::==}{(core::Object) → core::bool} actual))
79+
throw "Expected ${expected}, actual ${actual}";
80+
}
81+
82+
constants {
83+
#C1 = false
84+
}
Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
library /*isNonNullableByDefault*/;
2+
import self as self;
3+
import "dart:core" as core;
4+
import "dart:_http" as _ht;
5+
6+
import "dart:io" as a;
7+
import "org-dartlang-testcase:///conditional_import.dart" as b;
8+
9+
class HttpRequest extends core::Object {
10+
synthetic constructor •() → self::HttpRequest
11+
;
12+
static method _#new#tearOff() → self::HttpRequest
13+
return new self::HttpRequest::•();
14+
}
15+
static method testA(_ht::HttpRequest request) → dynamic
16+
;
17+
static method testB(self::HttpRequest request) → dynamic
18+
;
19+
static method main() → void
20+
;
21+
static method expect(dynamic expected, dynamic actual) → dynamic
22+
;

0 commit comments

Comments
 (0)