summaryrefslogtreecommitdiff
path: root/cli/tests
diff options
context:
space:
mode:
Diffstat (limited to 'cli/tests')
-rw-r--r--cli/tests/091_use_define_for_class_fields.ts4
-rw-r--r--cli/tests/091_use_define_for_class_fields.ts.out4
-rw-r--r--cli/tests/bundle/fixture13.out4
-rw-r--r--cli/tests/integration_tests.rs6
4 files changed, 15 insertions, 3 deletions
diff --git a/cli/tests/091_use_define_for_class_fields.ts b/cli/tests/091_use_define_for_class_fields.ts
new file mode 100644
index 000000000..9be984abf
--- /dev/null
+++ b/cli/tests/091_use_define_for_class_fields.ts
@@ -0,0 +1,4 @@
+class A {
+ b = this.a;
+ constructor(public a: unknown) {}
+}
diff --git a/cli/tests/091_use_define_for_class_fields.ts.out b/cli/tests/091_use_define_for_class_fields.ts.out
new file mode 100644
index 000000000..08f94a967
--- /dev/null
+++ b/cli/tests/091_use_define_for_class_fields.ts.out
@@ -0,0 +1,4 @@
+[WILDCARD]error: TS2729 [ERROR]: Property 'a' is used before its initialization.
+ b = this.a;
+ ^
+[WILDCARD]
diff --git a/cli/tests/bundle/fixture13.out b/cli/tests/bundle/fixture13.out
index 2c5115280..1c7a8c991 100644
--- a/cli/tests/bundle/fixture13.out
+++ b/cli/tests/bundle/fixture13.out
@@ -9,11 +9,9 @@ function d() {
return Object.assign(promise, methods);
}
class A {
+ s = d();
a() {
this.s.resolve();
}
- constructor(){
- this.s = d();
- }
}
new A();
diff --git a/cli/tests/integration_tests.rs b/cli/tests/integration_tests.rs
index 827fc871b..5067b8163 100644
--- a/cli/tests/integration_tests.rs
+++ b/cli/tests/integration_tests.rs
@@ -2867,6 +2867,12 @@ console.log("finish");
util::test_pty(args, output, input);
}
+ itest!(_091_use_define_for_class_fields {
+ args: "run 091_use_define_for_class_fields.ts",
+ output: "091_use_define_for_class_fields.ts.out",
+ exit_code: 1,
+ });
+
itest!(js_import_detect {
args: "run --quiet --reload js_import_detect.ts",
output: "js_import_detect.ts.out",