@@ -15,6 +15,19 @@ describe('Scf', () => {
1515 } ; 
1616
1717 const  triggers  =  { 
18+  apigw : { 
19+  apigw : { 
20+  parameters : { 
21+  serviceName : 'serverless_test' , 
22+  endpoints : [ 
23+  { 
24+  path : '/' , 
25+  method : 'GET' , 
26+  } , 
27+  ] , 
28+  } , 
29+  } , 
30+  } , 
1831 timer : { 
1932 timer : { 
2033 name : 'timer' , 
@@ -39,19 +52,6 @@ describe('Scf', () => {
3952 } , 
4053 } , 
4154 } , 
42-  apigw : { 
43-  apigw : { 
44-  parameters : { 
45-  serviceName : 'serverless_test' , 
46-  endpoints : [ 
47-  { 
48-  path : '/' , 
49-  method : 'GET' , 
50-  } , 
51-  ] , 
52-  } , 
53-  } , 
54-  } , 
5555 cls : { 
5656 cls : { 
5757 parameters : { 
@@ -75,7 +75,8 @@ describe('Scf', () => {
7575 } ; 
7676
7777 const  inputs : ScfDeployInputs  =  { 
78-  name : `serverless-test-${ Date . now ( ) }  , 
78+  // name: `serverless-test-${Date.now()}`, 
79+  name : `serverless-test-fixed` , 
7980 code : { 
8081 bucket : process . env . BUCKET , 
8182 object : 'express_code.zip' , 
@@ -143,7 +144,7 @@ describe('Scf', () => {
143144 } ) ; 
144145
145146 afterAll ( async  ( done )  =>  { 
146-  sleep ( 5000 ) ; 
147+  await   sleep ( 3000 ) ; 
147148 await  cfs . remove ( { 
148149 fsName : cfsInputs . fsName , 
149150 fileSystemId : inputs . cfs [ 0 ] . cfsId , 
@@ -153,7 +154,7 @@ describe('Scf', () => {
153154 } ) ; 
154155
155156 test ( 'should deploy SCF success' ,  async  ( )  =>  { 
156-  sleep ( 5000 ) ; 
157+  await   sleep ( 3000 ) ; 
157158 outputs  =  await  scf . deploy ( inputs ) ; 
158159 expect ( outputs ) . toEqual ( { 
159160 Qualifier : '$LATEST' , 
@@ -209,74 +210,7 @@ describe('Scf', () => {
209210 PublicNetStatus : 'ENABLE' , 
210211 EipConfig : {  EipStatus : 'ENABLE' ,  EipAddress : expect . any ( Array )  } , 
211212 } , 
212-  Triggers : [ 
213-  { 
214-  AddTime : expect . any ( String ) , 
215-  AvailableStatus : 'Available' , 
216-  CustomArgument : triggers . timer . timer . parameters . argument , 
217-  Enable : 1 , 
218-  ModTime : expect . any ( String ) , 
219-  TriggerDesc : `{"cron":"${ triggers . timer . timer . parameters . cronExpression }  , 
220-  TriggerName : triggers . timer . timer . name , 
221-  Type : 'timer' , 
222-  BindStatus : '' , 
223-  ResourceId : '' , 
224-  TriggerAttribute : '' , 
225-  } , 
226-  { 
227-  AddTime : expect . any ( String ) , 
228-  AvailableStatus : '' , 
229-  CustomArgument : '' , 
230-  Enable : 1 , 
231-  ModTime : expect . any ( String ) , 
232-  TriggerDesc : `{"bucketUrl":"${ triggers . cos . cos . parameters . bucket } ${ triggers . cos . cos . parameters . events } ${ triggers . cos . cos . parameters . filter . prefix } ${ triggers . cos . cos . parameters . filter . suffix }  , 
233-  TriggerName : expect . stringContaining ( 'cos_' ) , 
234-  Type : 'cos' , 
235-  BindStatus : '' , 
236-  ResourceId : '' , 
237-  TriggerAttribute : '' , 
238-  } , 
239-  { 
240-  created : true , 
241-  serviceId : expect . stringContaining ( 'service-' ) , 
242-  serviceName : 'serverless_test' , 
243-  subDomain : expect . stringContaining ( '.apigw.tencentcs.com' ) , 
244-  protocols : 'http' , 
245-  environment : 'release' , 
246-  apiList : [ 
247-  { 
248-  path : '/' , 
249-  internalDomain : expect . any ( String ) , 
250-  method : 'GET' , 
251-  apiName : 'index' , 
252-  apiId : expect . stringContaining ( 'api-' ) , 
253-  created : true , 
254-  authType : 'NONE' , 
255-  businessType : 'NORMAL' , 
256-  isBase64Encoded : false , 
257-  } , 
258-  ] , 
259-  } , 
260-  { 
261-  enable : triggers . cls . cls . parameters . enable , 
262-  namespace : inputs . namespace  ||  'default' , 
263-  functionName : inputs . name , 
264-  maxSize : triggers . cls . cls . parameters . maxSize , 
265-  maxWait : triggers . cls . cls . parameters . maxWait , 
266-  qualifier : triggers . cls . cls . parameters . qualifier , 
267-  topicId : triggers . cls . cls . parameters . topicId , 
268-  } , 
269-  // { 
270-  // enable: triggers.mps.mps.parameters.enable, 
271-  // namespace: inputs.namespace || 'default', 
272-  // functionName: inputs.name, 
273-  // qualifier: triggers.mps.mps.parameters.qualifier, 
274-  // type: triggers.mps.mps.parameters.type, 
275-  // resourceId: expect.stringContaining( 
276-  // `TriggerType/${triggers.mps.mps.parameters.type}Event`, 
277-  // ), 
278-  // }, 
279-  ] , 
213+  Triggers : expect . any ( Array ) , 
280214 ClsLogsetId : '' , 
281215 ClsTopicId : '' , 
282216 CodeInfo : '' , 
@@ -312,9 +246,85 @@ describe('Scf', () => {
312246 Traffic : inputs . traffic , 
313247 ConfigTrafficVersion : '1' , 
314248 } ) ; 
249+ 
250+  // expect triggers result 
251+  expect ( outputs . Triggers ) . toEqual ( [ 
252+  { 
253+  NeedCreate : expect . any ( Boolean ) , 
254+  created : true , 
255+  serviceId : expect . stringContaining ( 'service-' ) , 
256+  serviceName : 'serverless_test' , 
257+  subDomain : expect . stringContaining ( '.apigw.tencentcs.com' ) , 
258+  protocols : 'http' , 
259+  environment : 'release' , 
260+  apiList : [ 
261+  { 
262+  path : '/' , 
263+  internalDomain : expect . any ( String ) , 
264+  method : 'GET' , 
265+  apiName : 'index' , 
266+  apiId : expect . stringContaining ( 'api-' ) , 
267+  created : true , 
268+  authType : 'NONE' , 
269+  businessType : 'NORMAL' , 
270+  isBase64Encoded : false , 
271+  } , 
272+  ] , 
273+  } , 
274+  { 
275+  NeedCreate : expect . any ( Boolean ) , 
276+  AddTime : expect . any ( String ) , 
277+  AvailableStatus : expect . any ( String ) , 
278+  CustomArgument : triggers . timer . timer . parameters . argument , 
279+  Enable : 1 , 
280+  ModTime : expect . any ( String ) , 
281+  TriggerDesc : `{"cron":"${ triggers . timer . timer . parameters . cronExpression }  , 
282+  TriggerName : triggers . timer . timer . name , 
283+  Type : 'timer' , 
284+  BindStatus : expect . any ( String ) , 
285+  ResourceId : expect . any ( String ) , 
286+  TriggerAttribute : expect . any ( String ) , 
287+  Qualifier : expect . any ( String ) , 
288+  } , 
289+  { 
290+  NeedCreate : expect . any ( Boolean ) , 
291+  AddTime : expect . any ( String ) , 
292+  AvailableStatus : expect . any ( String ) , 
293+  CustomArgument : expect . any ( String ) , 
294+  Enable : 1 , 
295+  ModTime : expect . any ( String ) , 
296+  TriggerDesc : `{"bucketUrl":"${ triggers . cos . cos . parameters . bucket } ${ triggers . cos . cos . parameters . events } ${ triggers . cos . cos . parameters . filter . prefix } ${ triggers . cos . cos . parameters . filter . suffix }  , 
297+  TriggerName : expect . stringContaining ( 'cos' ) , 
298+  Type : 'cos' , 
299+  BindStatus : expect . any ( String ) , 
300+  ResourceId : expect . any ( String ) , 
301+  TriggerAttribute : expect . any ( String ) , 
302+  Qualifier : expect . any ( String ) , 
303+  } , 
304+  { 
305+  NeedCreate : expect . any ( Boolean ) , 
306+  enable : triggers . cls . cls . parameters . enable , 
307+  namespace : inputs . namespace  ||  'default' , 
308+  functionName : inputs . name , 
309+  maxSize : triggers . cls . cls . parameters . maxSize , 
310+  maxWait : triggers . cls . cls . parameters . maxWait , 
311+  qualifier : triggers . cls . cls . parameters . qualifier , 
312+  topicId : triggers . cls . cls . parameters . topicId , 
313+  Qualifier : expect . any ( String ) , 
314+  } , 
315+  // { 
316+  // enable: triggers.mps.mps.parameters.enable, 
317+  // namespace: inputs.namespace || 'default', 
318+  // functionName: inputs.name, 
319+  // qualifier: triggers.mps.mps.parameters.qualifier, 
320+  // type: triggers.mps.mps.parameters.type, 
321+  // resourceId: expect.stringContaining( 
322+  // `TriggerType/${triggers.mps.mps.parameters.type}Event`, 
323+  // ), 
324+  // }, 
325+  ] ) ; 
315326 } ) ; 
316327 test ( 'should invoke Scf success' ,  async  ( )  =>  { 
317-  sleep ( 5000 ) ; 
318328 const  res  =  await  scf . invoke ( { 
319329 functionName : inputs . name , 
320330 } ) ; 
@@ -333,7 +343,6 @@ describe('Scf', () => {
333343 } ) ; 
334344 } ) ; 
335345 test ( 'should remove Scf success' ,  async  ( )  =>  { 
336-  sleep ( 5000 ) ; 
337346 const  res  =  await  scf . remove ( { 
338347 functionName : inputs . name , 
339348 ...outputs , 
0 commit comments