1 | "use strict";
|
2 | Object.defineProperty(exports, "__esModule", { value: true });
|
3 | require("reflect-metadata");
|
4 | const deprecate_1 = require("../maintenance/deprecate");
|
5 | function createSetupTeardownDecorator(metadataDescription, isAsync) {
|
6 | return (target, decoratedPropertyKey, descriptor) => {
|
7 | const functions = Reflect.getMetadata(metadataDescription, target) || [];
|
8 | if (isAsync) {
|
9 | const functionName = metadataDescription
|
10 | .replace("alsatian:", "")
|
11 | .replace("-fixture", "Fixture")
|
12 | .replace("setup", "Setup")
|
13 | .replace("teardown", "Teardown");
|
14 | deprecate_1.deprecate(`Async${functionName}`, "4.0.0", `Use the ${functionName} decorator instead.`);
|
15 | }
|
16 | functions.push({
|
17 | isAsync,
|
18 | propertyKey: decoratedPropertyKey
|
19 | });
|
20 | Reflect.defineMetadata(metadataDescription, functions, target);
|
21 | };
|
22 | }
|
23 | exports.createSetupTeardownDecorator = createSetupTeardownDecorator;
|
24 |
|
\ | No newline at end of file |