diff options
Diffstat (limited to 'tests/testdata/compile/compiler_options')
-rw-r--r-- | tests/testdata/compile/compiler_options/deno.json | 5 | ||||
-rw-r--r-- | tests/testdata/compile/compiler_options/main.ts | 42 |
2 files changed, 47 insertions, 0 deletions
diff --git a/tests/testdata/compile/compiler_options/deno.json b/tests/testdata/compile/compiler_options/deno.json new file mode 100644 index 000000000..504cd646e --- /dev/null +++ b/tests/testdata/compile/compiler_options/deno.json @@ -0,0 +1,5 @@ +{ + "compilerOptions": { + "experimentalDecorators": true + } +} diff --git a/tests/testdata/compile/compiler_options/main.ts b/tests/testdata/compile/compiler_options/main.ts new file mode 100644 index 000000000..40a26bbd4 --- /dev/null +++ b/tests/testdata/compile/compiler_options/main.ts @@ -0,0 +1,42 @@ +// deno-lint-ignore-file +function a() { + console.log("@A evaluated"); + return function ( + target: any, + propertyKey: string, + descriptor: PropertyDescriptor, + ) { + console.log("@A called"); + const fn = descriptor.value; + descriptor.value = function () { + console.log("fn() called from @A"); + fn(); + }; + }; +} + +function b() { + console.log("@B evaluated"); + return function ( + target: any, + propertyKey: string, + descriptor: PropertyDescriptor, + ) { + console.log("@B called"); + const fn = descriptor.value; + descriptor.value = function () { + console.log("fn() called from @B"); + fn(); + }; + }; +} + +class C { + @a() + @b() + static test() { + console.log("C.test() called"); + } +} + +C.test(); |