Skip to content

Commit 78604f4

Browse files
Merge pull request #342 from bryan-hunter/add-ts-support
feat(ts-support): adds ts support
2 parents f017855 + b21a750 commit 78604f4

File tree

2 files changed

+18
-1
lines changed

2 files changed

+18
-1
lines changed

lib/yamlParser.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ module.exports = {
1717
const serviceFileName = this.options.config || this.serverless.config.serverless.service.serviceFilename || 'serverless.yml';
1818
const serverlessYmlPath = path.join(servicePath, serviceFileName);
1919

20-
if (['.js', '.json'].includes(path.extname(serverlessYmlPath))) {
20+
if (['.js', '.json', '.ts'].includes(path.extname(serverlessYmlPath))) {
2121
parse = this.loadFromRequiredFile;
2222
} else {
2323
parse = fromYamlFile;

lib/yamlParser.test.js

+17
Original file line numberDiff line numberDiff line change
@@ -148,6 +148,23 @@ describe('#yamlParse', () => {
148148
});
149149
});
150150

151+
it('should be able to load from a ts file', () => {
152+
serverless.config.serverless.service.serviceFilename = 'serverless.ts';
153+
const requireFileStub = sinon.stub(serverlessStepFunctions, 'loadFromRequiredFile')
154+
.returns(BbPromise.resolve({
155+
stepFunctions: {
156+
stateMachines: 'stepFunctions',
157+
activities: 'my-activity',
158+
},
159+
}));
160+
serverlessStepFunctions.yamlParse()
161+
.then(() => {
162+
expect(requireFileStub.calledOnce).to.be.equal(true);
163+
expect(serverless.service.stepFunctions.stateMachines).to.be.equal('stepFunctions');
164+
expect(serverless.service.stepFunctions.activities).to.be.equal('my-activity');
165+
});
166+
});
167+
151168
it('should create empty object when stepfunctions param are not given', () => {
152169
serverlessStepFunctions.serverless.yamlParser.parse.restore();
153170
serverlessStepFunctions.serverless.variables.populateObject.restore();

0 commit comments

Comments
 (0)