[tests] Porting deleted super member tests to the hot reload framework.
Change-Id: Ibdbe23fe2da83c9583e0aa4b2b3a2794a8762b67 Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/414663 Reviewed-by: Nicholas Shahan <nshahan@google.com> Commit-Queue: Mark Zhou <markzipan@google.com>
This commit is contained in:
@@ -0,0 +1,34 @@
|
||||
// Copyright (c) 2025, 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.
|
||||
|
||||
import 'package:expect/expect.dart';
|
||||
import 'package:reload_test/reload_test_utils.dart';
|
||||
|
||||
// Adapted from:
|
||||
// https://github.com/dart-lang/sdk/blob/cb96256bc2be8021c649da6d36c010de97cd3986/runtime/vm/isolate_reload_test.cc#L3480
|
||||
|
||||
var retained;
|
||||
|
||||
class C {
|
||||
var deleted = 'hello';
|
||||
}
|
||||
|
||||
class D extends C {
|
||||
curry() => () => super.deleted;
|
||||
}
|
||||
|
||||
helper() {
|
||||
retained = D().curry();
|
||||
}
|
||||
|
||||
Future<void> main() async {
|
||||
helper();
|
||||
Expect.equals('hello', retained());
|
||||
await hotReload();
|
||||
|
||||
Expect.throws<NoSuchMethodError>(
|
||||
retained,
|
||||
(error) => '$error'.contains('deleted'),
|
||||
);
|
||||
}
|
||||
@@ -0,0 +1,52 @@
|
||||
// Copyright (c) 2025, 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.
|
||||
|
||||
import 'package:expect/expect.dart';
|
||||
import 'package:reload_test/reload_test_utils.dart';
|
||||
|
||||
// Adapted from:
|
||||
// https://github.com/dart-lang/sdk/blob/cb96256bc2be8021c649da6d36c010de97cd3986/runtime/vm/isolate_reload_test.cc#L3480
|
||||
|
||||
var retained;
|
||||
|
||||
class C {}
|
||||
|
||||
class D extends C {}
|
||||
|
||||
helper() {}
|
||||
|
||||
Future<void> main() async {
|
||||
helper();
|
||||
Expect.equals('hello', retained());
|
||||
await hotReload();
|
||||
|
||||
Expect.throws<NoSuchMethodError>(
|
||||
retained,
|
||||
(error) => '$error'.contains('deleted'),
|
||||
);
|
||||
}
|
||||
|
||||
/** DIFF **/
|
||||
/*
|
||||
|
||||
var retained;
|
||||
|
||||
-class C {
|
||||
- var deleted = 'hello';
|
||||
-}
|
||||
+class C {}
|
||||
|
||||
-class D extends C {
|
||||
- curry() => () => super.deleted;
|
||||
-}
|
||||
+class D extends C {}
|
||||
|
||||
-helper() {
|
||||
- retained = D().curry();
|
||||
-}
|
||||
+helper() {}
|
||||
|
||||
Future<void> main() async {
|
||||
helper();
|
||||
*/
|
||||
@@ -0,0 +1,34 @@
|
||||
// Copyright (c) 2025, 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.
|
||||
|
||||
import 'package:expect/expect.dart';
|
||||
import 'package:reload_test/reload_test_utils.dart';
|
||||
|
||||
// Adapted from:
|
||||
// https://github.com/dart-lang/sdk/blob/cb96256bc2be8021c649da6d36c010de97cd3986/runtime/vm/isolate_reload_test.cc#L3513
|
||||
|
||||
var retained;
|
||||
|
||||
class C {
|
||||
var deleted;
|
||||
}
|
||||
|
||||
class D extends C {
|
||||
curry() => () => super.deleted = 'hello';
|
||||
}
|
||||
|
||||
helper() {
|
||||
retained = D().curry();
|
||||
}
|
||||
|
||||
Future<void> main() async {
|
||||
helper();
|
||||
Expect.equals('hello', retained());
|
||||
await hotReload();
|
||||
|
||||
Expect.throws<NoSuchMethodError>(
|
||||
retained,
|
||||
(error) => '$error'.contains('deleted'),
|
||||
);
|
||||
}
|
||||
@@ -0,0 +1,52 @@
|
||||
// Copyright (c) 2025, 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.
|
||||
|
||||
import 'package:expect/expect.dart';
|
||||
import 'package:reload_test/reload_test_utils.dart';
|
||||
|
||||
// Adapted from:
|
||||
// https://github.com/dart-lang/sdk/blob/cb96256bc2be8021c649da6d36c010de97cd3986/runtime/vm/isolate_reload_test.cc#L3513
|
||||
|
||||
var retained;
|
||||
|
||||
class C {}
|
||||
|
||||
class D extends C {}
|
||||
|
||||
helper() {}
|
||||
|
||||
Future<void> main() async {
|
||||
helper();
|
||||
Expect.equals('hello', retained());
|
||||
await hotReload();
|
||||
|
||||
Expect.throws<NoSuchMethodError>(
|
||||
retained,
|
||||
(error) => '$error'.contains('deleted'),
|
||||
);
|
||||
}
|
||||
|
||||
/** DIFF **/
|
||||
/*
|
||||
|
||||
var retained;
|
||||
|
||||
-class C {
|
||||
- var deleted;
|
||||
-}
|
||||
+class C {}
|
||||
|
||||
-class D extends C {
|
||||
- curry() => () => super.deleted = 'hello';
|
||||
-}
|
||||
+class D extends C {}
|
||||
|
||||
-helper() {
|
||||
- retained = D().curry();
|
||||
-}
|
||||
+helper() {}
|
||||
|
||||
Future<void> main() async {
|
||||
helper();
|
||||
*/
|
||||
@@ -0,0 +1,36 @@
|
||||
// Copyright (c) 2025, 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.
|
||||
|
||||
import 'package:expect/expect.dart';
|
||||
import 'package:reload_test/reload_test_utils.dart';
|
||||
|
||||
// Adapted from:
|
||||
// https://github.com/dart-lang/sdk/blob/cb96256bc2be8021c649da6d36c010de97cd3986/runtime/vm/isolate_reload_test.cc#L3348
|
||||
|
||||
var retained;
|
||||
|
||||
class C {
|
||||
deleted() {
|
||||
return 'hello';
|
||||
}
|
||||
}
|
||||
|
||||
class D extends C {
|
||||
curry() => () => super.deleted();
|
||||
}
|
||||
|
||||
helper() {
|
||||
retained = D().curry();
|
||||
}
|
||||
|
||||
Future<void> main() async {
|
||||
helper();
|
||||
Expect.equals('hello', retained());
|
||||
await hotReload();
|
||||
|
||||
Expect.throws<NoSuchMethodError>(
|
||||
retained,
|
||||
(error) => '$error'.contains('deleted'),
|
||||
);
|
||||
}
|
||||
@@ -0,0 +1,54 @@
|
||||
// Copyright (c) 2025, 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.
|
||||
|
||||
import 'package:expect/expect.dart';
|
||||
import 'package:reload_test/reload_test_utils.dart';
|
||||
|
||||
// Adapted from:
|
||||
// https://github.com/dart-lang/sdk/blob/cb96256bc2be8021c649da6d36c010de97cd3986/runtime/vm/isolate_reload_test.cc#L3348
|
||||
|
||||
var retained;
|
||||
|
||||
class C {}
|
||||
|
||||
class D extends C {}
|
||||
|
||||
helper() {}
|
||||
|
||||
Future<void> main() async {
|
||||
helper();
|
||||
Expect.equals('hello', retained());
|
||||
await hotReload();
|
||||
|
||||
Expect.throws<NoSuchMethodError>(
|
||||
retained,
|
||||
(error) => '$error'.contains('deleted'),
|
||||
);
|
||||
}
|
||||
|
||||
/** DIFF **/
|
||||
/*
|
||||
|
||||
var retained;
|
||||
|
||||
-class C {
|
||||
- deleted() {
|
||||
- return 'hello';
|
||||
- }
|
||||
-}
|
||||
+class C {}
|
||||
|
||||
-class D extends C {
|
||||
- curry() => () => super.deleted();
|
||||
-}
|
||||
+class D extends C {}
|
||||
|
||||
-helper() {
|
||||
- retained = D().curry();
|
||||
-}
|
||||
+helper() {}
|
||||
|
||||
Future<void> main() async {
|
||||
helper();
|
||||
*/
|
||||
@@ -0,0 +1,36 @@
|
||||
// Copyright (c) 2025, 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.
|
||||
|
||||
import 'package:expect/expect.dart';
|
||||
import 'package:reload_test/reload_test_utils.dart';
|
||||
|
||||
// Adapted from:
|
||||
// https://github.com/dart-lang/sdk/blob/cb96256bc2be8021c649da6d36c010de97cd3986/runtime/vm/isolate_reload_test.cc#L3381
|
||||
|
||||
var retained;
|
||||
|
||||
class C {
|
||||
deleted() {
|
||||
return 'hello';
|
||||
}
|
||||
}
|
||||
|
||||
class D extends C {
|
||||
curry() => () => super.deleted();
|
||||
}
|
||||
|
||||
helper() {
|
||||
retained = D().curry();
|
||||
}
|
||||
|
||||
Future<void> main() async {
|
||||
helper();
|
||||
Expect.equals('hello', retained());
|
||||
await hotReload();
|
||||
|
||||
Expect.throws<NoSuchMethodError>(
|
||||
retained,
|
||||
(error) => '$error'.contains('deleted'),
|
||||
);
|
||||
}
|
||||
@@ -0,0 +1,57 @@
|
||||
// Copyright (c) 2025, 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.
|
||||
|
||||
import 'package:expect/expect.dart';
|
||||
import 'package:reload_test/reload_test_utils.dart';
|
||||
|
||||
// Adapted from:
|
||||
// https://github.com/dart-lang/sdk/blob/cb96256bc2be8021c649da6d36c010de97cd3986/runtime/vm/isolate_reload_test.cc#L3381
|
||||
|
||||
var retained;
|
||||
|
||||
class C {
|
||||
deleted(newParameter) {
|
||||
return 'hello';
|
||||
}
|
||||
}
|
||||
|
||||
class D extends C {}
|
||||
|
||||
helper() {}
|
||||
|
||||
Future<void> main() async {
|
||||
helper();
|
||||
Expect.equals('hello', retained());
|
||||
await hotReload();
|
||||
|
||||
Expect.throws<NoSuchMethodError>(
|
||||
retained,
|
||||
(error) => '$error'.contains('deleted'),
|
||||
);
|
||||
}
|
||||
|
||||
/** DIFF **/
|
||||
/*
|
||||
var retained;
|
||||
|
||||
class C {
|
||||
- deleted() {
|
||||
+ deleted(newParameter) {
|
||||
return 'hello';
|
||||
}
|
||||
}
|
||||
|
||||
-class D extends C {
|
||||
- curry() => () => super.deleted();
|
||||
-}
|
||||
+class D extends C {}
|
||||
|
||||
-helper() {
|
||||
- retained = D().curry();
|
||||
-}
|
||||
+helper() {}
|
||||
|
||||
Future<void> main() async {
|
||||
helper();
|
||||
*/
|
||||
@@ -0,0 +1,36 @@
|
||||
// Copyright (c) 2025, 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.
|
||||
|
||||
import 'package:expect/expect.dart';
|
||||
import 'package:reload_test/reload_test_utils.dart';
|
||||
|
||||
// Adapted from:
|
||||
// https://github.com/dart-lang/sdk/blob/cb96256bc2be8021c649da6d36c010de97cd3986/runtime/vm/isolate_reload_test.cc#L3414
|
||||
|
||||
var retained;
|
||||
|
||||
class C {
|
||||
get deleted {
|
||||
return 'hello';
|
||||
}
|
||||
}
|
||||
|
||||
class D extends C {
|
||||
curry() => () => super.deleted;
|
||||
}
|
||||
|
||||
helper() {
|
||||
retained = D().curry();
|
||||
}
|
||||
|
||||
Future<void> main() async {
|
||||
helper();
|
||||
Expect.equals('hello', retained());
|
||||
await hotReload();
|
||||
|
||||
Expect.throws<NoSuchMethodError>(
|
||||
retained,
|
||||
(error) => '$error'.contains('deleted'),
|
||||
);
|
||||
}
|
||||
@@ -0,0 +1,54 @@
|
||||
// Copyright (c) 2025, 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.
|
||||
|
||||
import 'package:expect/expect.dart';
|
||||
import 'package:reload_test/reload_test_utils.dart';
|
||||
|
||||
// Adapted from:
|
||||
// https://github.com/dart-lang/sdk/blob/cb96256bc2be8021c649da6d36c010de97cd3986/runtime/vm/isolate_reload_test.cc#L3414
|
||||
|
||||
var retained;
|
||||
|
||||
class C {}
|
||||
|
||||
class D extends C {}
|
||||
|
||||
helper() {}
|
||||
|
||||
Future<void> main() async {
|
||||
helper();
|
||||
Expect.equals('hello', retained());
|
||||
await hotReload();
|
||||
|
||||
Expect.throws<NoSuchMethodError>(
|
||||
retained,
|
||||
(error) => '$error'.contains('deleted'),
|
||||
);
|
||||
}
|
||||
|
||||
/** DIFF **/
|
||||
/*
|
||||
|
||||
var retained;
|
||||
|
||||
-class C {
|
||||
- get deleted {
|
||||
- return 'hello';
|
||||
- }
|
||||
-}
|
||||
+class C {}
|
||||
|
||||
-class D extends C {
|
||||
- curry() => () => super.deleted;
|
||||
-}
|
||||
+class D extends C {}
|
||||
|
||||
-helper() {
|
||||
- retained = D().curry();
|
||||
-}
|
||||
+helper() {}
|
||||
|
||||
Future<void> main() async {
|
||||
helper();
|
||||
*/
|
||||
@@ -0,0 +1,34 @@
|
||||
// Copyright (c) 2025, 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.
|
||||
|
||||
import 'package:expect/expect.dart';
|
||||
import 'package:reload_test/reload_test_utils.dart';
|
||||
|
||||
// Adapted from:
|
||||
// https://github.com/dart-lang/sdk/blob/cb96256bc2be8021c649da6d36c010de97cd3986/runtime/vm/isolate_reload_test.cc#L3447
|
||||
|
||||
var retained;
|
||||
|
||||
class C {
|
||||
set deleted(x) {}
|
||||
}
|
||||
|
||||
class D extends C {
|
||||
curry() => () => super.deleted = 'hello';
|
||||
}
|
||||
|
||||
helper() {
|
||||
retained = D().curry();
|
||||
}
|
||||
|
||||
Future<void> main() async {
|
||||
helper();
|
||||
Expect.equals('hello', retained());
|
||||
await hotReload();
|
||||
|
||||
Expect.throws<NoSuchMethodError>(
|
||||
retained,
|
||||
(error) => '$error'.contains('deleted'),
|
||||
);
|
||||
}
|
||||
@@ -0,0 +1,52 @@
|
||||
// Copyright (c) 2025, 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.
|
||||
|
||||
import 'package:expect/expect.dart';
|
||||
import 'package:reload_test/reload_test_utils.dart';
|
||||
|
||||
// Adapted from:
|
||||
// https://github.com/dart-lang/sdk/blob/cb96256bc2be8021c649da6d36c010de97cd3986/runtime/vm/isolate_reload_test.cc#L3447
|
||||
|
||||
var retained;
|
||||
|
||||
class C {}
|
||||
|
||||
class D extends C {}
|
||||
|
||||
helper() {}
|
||||
|
||||
Future<void> main() async {
|
||||
helper();
|
||||
Expect.equals('hello', retained());
|
||||
await hotReload();
|
||||
|
||||
Expect.throws<NoSuchMethodError>(
|
||||
retained,
|
||||
(error) => '$error'.contains('deleted'),
|
||||
);
|
||||
}
|
||||
|
||||
/** DIFF **/
|
||||
/*
|
||||
|
||||
var retained;
|
||||
|
||||
-class C {
|
||||
- set deleted(x) {}
|
||||
-}
|
||||
+class C {}
|
||||
|
||||
-class D extends C {
|
||||
- curry() => () => super.deleted = 'hello';
|
||||
-}
|
||||
+class D extends C {}
|
||||
|
||||
-helper() {
|
||||
- retained = D().curry();
|
||||
-}
|
||||
+helper() {}
|
||||
|
||||
Future<void> main() async {
|
||||
helper();
|
||||
*/
|
||||
Reference in New Issue
Block a user