@@ -16,15 +16,18 @@ describe('swagger_raw', function() {
1616 var bagpipes = { config : { swaggerNodeRunner : { swagger : swagger } } } ;
1717 swaggerDoc = swagger_raw ( { } , bagpipes ) ;
1818
19- // hokey algorithm, but at least it's different than the one it's testing
2019 var filteredSwagger = _ . cloneDeep ( swagger ) ;
21- var OMIT = [ 'x-swagger-router-controller' , 'x-swagger-pipe' ] ;
20+ delete ( filteredSwagger . paths [ '/invalid_header' ] ) ;
21+
22+ // hokey algorithm, but at least it's different than the one it's testing
23+ var OMIT = [ 'x-swagger-router-controller' , 'x-swagger-pipe' , 'x-hidden' , 'x-private' ] ;
2224 _ . forEach ( filteredSwagger . paths , function ( element , name ) {
2325 filteredSwagger . paths [ name ] = _ . omit ( element , OMIT ) ;
2426 _ . forEach ( filteredSwagger . paths [ name ] , function ( element , subName ) {
2527 filteredSwagger . paths [ name ] [ subName ] = _ . omit ( element , OMIT ) ;
2628 } ) ;
2729 } ) ;
30+
2831 yaml = YAML . safeDump ( filteredSwagger , { indent : 2 } ) ;
2932 json = JSON . stringify ( filteredSwagger , null , 2 ) ;
3033 } ) ;
@@ -83,7 +86,42 @@ describe('swagger_raw', function() {
8386 should . not . exist ( err ) ;
8487 'application/yaml' . should . eql ( context . headers [ 'Content-Type' ] ) ;
8588
86- var yaml = YAML . safeDump ( swagger , { indent : 2 } ) ;
89+ var filteredSwagger = _ . cloneDeep ( swagger ) ;
90+ delete ( filteredSwagger . paths [ '/invalid_header' ] ) ;
91+ should . exist ( filteredSwagger . paths [ '/invalid_response_code' ] . get )
92+ var yaml = YAML . safeDump ( filteredSwagger , { indent : 2 } ) ;
93+
94+ output . should . eql ( yaml ) ;
95+ done ( ) ;
96+ } ) ;
97+ } ) ;
98+
99+ it ( 'should be able to modify privateTags & apply to operations' , function ( done ) {
100+
101+ var context = {
102+ headers : { } ,
103+ request : {
104+ headers : { accept : 'application/yaml' }
105+ }
106+ } ;
107+
108+ config = {
109+ filter : '.*' ,
110+ privateTags : [ 'x-private' , 'x-hidden' ]
111+ } ;
112+
113+ var bagpipes = { config : { swaggerNodeRunner : { swagger : swagger } } } ;
114+ var swaggerDoc = swagger_raw ( config , bagpipes ) ;
115+
116+ swaggerDoc ( context , function ( err , output ) {
117+ should . not . exist ( err ) ;
118+ 'application/yaml' . should . eql ( context . headers [ 'Content-Type' ] ) ;
119+
120+ var filteredSwagger = _ . cloneDeep ( swagger ) ;
121+ delete ( filteredSwagger . paths [ '/invalid_header' ] ) ;
122+ delete ( filteredSwagger . paths [ '/invalid_response_code' ] . get ) ;
123+ var yaml = YAML . safeDump ( filteredSwagger , { indent : 2 } ) ;
124+
87125 output . should . eql ( yaml ) ;
88126 done ( ) ;
89127 } ) ;
0 commit comments