UNPKG

swagger-node-runner-fork

Version:

This project is a fork of swagger-node-runner: https://github.com/apigee-127/swagger-node-runner.git

596 lines (584 loc) 105 kB
> swagger-node-runner-fork@0.7.3 test /Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner > mocha test/lib test/fittings (node:11039) DeprecationWarning: Configuration via mocha.opts is DEPRECATED and will be removed from a future version of Mocha. Use RC files or package.json instead. connect_middleware standard [{"code":"EXTRA_REFERENCE_PROPERTIES","message":"Extra JSON Reference properties will be ignored: type","path":["paths","/hello","get","responses","200","schema"]}] 2 controllers ✓ should execute (40ms) ✓ should execute without operationId ✓ should get query parameter ✓ should get formData parameter ✓ should get body parameter ✓ should get file parameter (61ms) ✓ should get text body ✓ should get a 404 for unknown path and operation ✓ should get a 405 for known path and unknown operation Error: Path [/hello] defined in Swagger, but PUT operation is not. at middleware (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/lib/connect_middleware.js:31:21) at call (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/connect/index.js:239:7) at next (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/connect/index.js:183:5) at Function.handle (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/connect/index.js:186:3) at Server.app (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/connect/index.js:51:37) at Server.emit (events.js:198:13) at Server.EventEmitter.emit (domain.js:448:20) at parserOnIncoming (_http_server.js:677:12) at HTTPParser.parserOnHeadersComplete (_http_common.js:109:17) ✓ should not get a 204 for known path and undeclared options operation ✓ should get a 500 for missing controller Error: Path [/hello_missing_controller] defined in Swagger, but PUT operation is not. at middleware (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/lib/connect_middleware.js:31:21) at call (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/connect/index.js:239:7) at next (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/connect/index.js:183:5) at Function.handle (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/connect/index.js:186:3) at Server.app (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/connect/index.js:51:37) at Server.emit (events.js:198:13) at Server.EventEmitter.emit (domain.js:448:20) at parserOnIncoming (_http_server.js:677:12) at HTTPParser.parserOnHeadersComplete (_http_common.js:109:17) ✓ should get a 405 for missing operation function Error: Path [/hello_missing_operation] defined in Swagger, but PUT operation is not. at middleware (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/lib/connect_middleware.js:31:21) at call (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/connect/index.js:239:7) at next (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/connect/index.js:183:5) at Function.handle (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/connect/index.js:186:3) at Server.app (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/connect/index.js:51:37) at Server.emit (events.js:198:13) at Server.EventEmitter.emit (domain.js:448:20) at parserOnIncoming (_http_server.js:677:12) at HTTPParser.parserOnHeadersComplete (_http_common.js:109:17) request validation ✓ should reject when invalid parameter type ✓ should reject when missing parameter ✓ should reject when invalid content security loaded from path ✓ should deny when swagger-tools handler denies ✓ should allow when swagger-tools handler accepts explicit in config ✓ should deny when missing handler ✓ should deny when swagger-tools handler denies ✓ should allow when swagger-tools handler accepts non-controller routing ✓ empty path Error: Path [/empty_path] defined in Swagger, but PUT operation is not. at middleware (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/lib/connect_middleware.js:31:21) at call (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/connect/index.js:239:7) at next (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/connect/index.js:183:5) at Function.handle (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/connect/index.js:186:3) at Server.app (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/connect/index.js:51:37) at Server.emit (events.js:198:13) at Server.EventEmitter.emit (domain.js:448:20) at parserOnIncoming (_http_server.js:677:12) at HTTPParser.parserOnHeadersComplete (_http_common.js:109:17) ✓ no controller specified Error: No implementation found for this path. at /Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/lib/connect_middleware.js:50:21 at Runner.applyMetadata (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/index.js:112:5) at middleware (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/lib/connect_middleware.js:45:14) at call (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/connect/index.js:239:7) at next (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/connect/index.js:183:5) at Function.handle (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/connect/index.js:186:3) at Server.app (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/connect/index.js:51:37) at Server.emit (events.js:198:13) at Server.EventEmitter.emit (domain.js:448:20) at parserOnIncoming (_http_server.js:677:12) at HTTPParser.parserOnHeadersComplete (_http_common.js:109:17) /swagger should respond ✓ with json ✓ with yaml /pipe_on_get should respond ✓ to get operation ✓ with 405 on put operation Error: Path [/pipe_on_get] defined in Swagger, but PUT operation is not. at middleware (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/lib/connect_middleware.js:31:21) at call (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/connect/index.js:239:7) at next (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/connect/index.js:183:5) at Function.handle (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/connect/index.js:186:3) at Server.app (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/connect/index.js:51:37) at Server.emit (events.js:198:13) at Server.EventEmitter.emit (domain.js:448:20) at parserOnIncoming (_http_server.js:677:12) at HTTPParser.parserOnHeadersComplete (_http_common.js:109:17) response validation listeners ✓ should receive invalid response code errors ✓ should receive invalid header errors ✓ should receive schema validation errors ✓ should not validate multiple writes mock [{"code":"EXTRA_REFERENCE_PROPERTIES","message":"Extra JSON Reference properties will be ignored: type","path":["paths","/hello","get","responses","200","schema"]}] 2 ✓ should return from mock controller handler if exists ✓ should return example if exists and no mock controller ✓ should return example if exists based on accept header ✓ should return example based on _mockReturnStatus header express_middleware standard [{"code":"EXTRA_REFERENCE_PROPERTIES","message":"Extra JSON Reference properties will be ignored: type","path":["paths","/hello","get","responses","200","schema"]}] 2 controllers ✓ should execute ✓ should execute without operationId ✓ should get query parameter ✓ should get formData parameter ✓ should get body parameter ✓ should get file parameter ✓ should get text body ✓ should get a 404 for unknown path and operation ✓ should get a 405 for known path and unknown operation Error: Path [/hello] defined in Swagger, but PUT operation is not. at middleware (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/lib/connect_middleware.js:31:21) at Layer.handle [as handle_request] (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/express/lib/router/layer.js:95:5) at trim_prefix (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/express/lib/router/index.js:317:13) at /Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/express/lib/router/index.js:284:7 at Function.process_params (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/express/lib/router/index.js:335:12) at next (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/express/lib/router/index.js:275:10) at expressInit (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/express/lib/middleware/init.js:40:5) at Layer.handle [as handle_request] (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/express/lib/router/layer.js:95:5) at trim_prefix (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/express/lib/router/index.js:317:13) at /Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/express/lib/router/index.js:284:7 at Function.process_params (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/express/lib/router/index.js:335:12) at next (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/express/lib/router/index.js:275:10) at query (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/express/lib/middleware/query.js:45:5) at Layer.handle [as handle_request] (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/express/lib/router/layer.js:95:5) at trim_prefix (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/express/lib/router/index.js:317:13) at /Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/express/lib/router/index.js:284:7 at Function.process_params (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/express/lib/router/index.js:335:12) at next (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/express/lib/router/index.js:275:10) at Function.handle (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/express/lib/router/index.js:174:3) at Function.handle (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/express/lib/application.js:174:10) at Server.app (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/express/lib/express.js:39:9) at Server.emit (events.js:198:13) at Server.EventEmitter.emit (domain.js:466:23) at parserOnIncoming (_http_server.js:677:12) at HTTPParser.parserOnHeadersComplete (_http_common.js:109:17) ✓ should not get a 204 for known path and undeclared options operation ✓ should get a 500 for missing controller Error: Path [/hello_missing_controller] defined in Swagger, but PUT operation is not. at middleware (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/lib/connect_middleware.js:31:21) at Layer.handle [as handle_request] (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/express/lib/router/layer.js:95:5) at trim_prefix (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/express/lib/router/index.js:317:13) at /Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/express/lib/router/index.js:284:7 at Function.process_params (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/express/lib/router/index.js:335:12) at next (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/express/lib/router/index.js:275:10) at expressInit (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/express/lib/middleware/init.js:40:5) at Layer.handle [as handle_request] (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/express/lib/router/layer.js:95:5) at trim_prefix (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/express/lib/router/index.js:317:13) at /Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/express/lib/router/index.js:284:7 at Function.process_params (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/express/lib/router/index.js:335:12) at next (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/express/lib/router/index.js:275:10) at query (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/express/lib/middleware/query.js:45:5) at Layer.handle [as handle_request] (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/express/lib/router/layer.js:95:5) at trim_prefix (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/express/lib/router/index.js:317:13) at /Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/express/lib/router/index.js:284:7 at Function.process_params (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/express/lib/router/index.js:335:12) at next (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/express/lib/router/index.js:275:10) at Function.handle (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/express/lib/router/index.js:174:3) at Function.handle (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/express/lib/application.js:174:10) at Server.app (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/express/lib/express.js:39:9) at Server.emit (events.js:198:13) at Server.EventEmitter.emit (domain.js:466:23) at parserOnIncoming (_http_server.js:677:12) at HTTPParser.parserOnHeadersComplete (_http_common.js:109:17) ✓ should get a 405 for missing operation function Error: Path [/hello_missing_operation] defined in Swagger, but PUT operation is not. at middleware (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/lib/connect_middleware.js:31:21) at Layer.handle [as handle_request] (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/express/lib/router/layer.js:95:5) at trim_prefix (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/express/lib/router/index.js:317:13) at /Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/express/lib/router/index.js:284:7 at Function.process_params (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/express/lib/router/index.js:335:12) at next (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/express/lib/router/index.js:275:10) at expressInit (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/express/lib/middleware/init.js:40:5) at Layer.handle [as handle_request] (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/express/lib/router/layer.js:95:5) at trim_prefix (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/express/lib/router/index.js:317:13) at /Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/express/lib/router/index.js:284:7 at Function.process_params (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/express/lib/router/index.js:335:12) at next (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/express/lib/router/index.js:275:10) at query (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/express/lib/middleware/query.js:45:5) at Layer.handle [as handle_request] (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/express/lib/router/layer.js:95:5) at trim_prefix (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/express/lib/router/index.js:317:13) at /Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/express/lib/router/index.js:284:7 at Function.process_params (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/express/lib/router/index.js:335:12) at next (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/express/lib/router/index.js:275:10) at Function.handle (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/express/lib/router/index.js:174:3) at Function.handle (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/express/lib/application.js:174:10) at Server.app (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/express/lib/express.js:39:9) at Server.emit (events.js:198:13) at Server.EventEmitter.emit (domain.js:466:23) at parserOnIncoming (_http_server.js:677:12) at HTTPParser.parserOnHeadersComplete (_http_common.js:109:17) request validation ✓ should reject when invalid parameter type ✓ should reject when missing parameter ✓ should reject when invalid content security loaded from path ✓ should deny when swagger-tools handler denies ✓ should allow when swagger-tools handler accepts explicit in config ✓ should deny when missing handler ✓ should deny when swagger-tools handler denies ✓ should allow when swagger-tools handler accepts non-controller routing ✓ empty path Error: Path [/empty_path] defined in Swagger, but PUT operation is not. at middleware (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/lib/connect_middleware.js:31:21) at Layer.handle [as handle_request] (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/express/lib/router/layer.js:95:5) at trim_prefix (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/express/lib/router/index.js:317:13) at /Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/express/lib/router/index.js:284:7 at Function.process_params (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/express/lib/router/index.js:335:12) at next (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/express/lib/router/index.js:275:10) at expressInit (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/express/lib/middleware/init.js:40:5) at Layer.handle [as handle_request] (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/express/lib/router/layer.js:95:5) at trim_prefix (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/express/lib/router/index.js:317:13) at /Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/express/lib/router/index.js:284:7 at Function.process_params (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/express/lib/router/index.js:335:12) at next (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/express/lib/router/index.js:275:10) at query (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/express/lib/middleware/query.js:45:5) at Layer.handle [as handle_request] (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/express/lib/router/layer.js:95:5) at trim_prefix (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/express/lib/router/index.js:317:13) at /Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/express/lib/router/index.js:284:7 at Function.process_params (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/express/lib/router/index.js:335:12) at next (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/express/lib/router/index.js:275:10) at Function.handle (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/express/lib/router/index.js:174:3) at Function.handle (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/express/lib/application.js:174:10) at Server.app (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/express/lib/express.js:39:9) at Server.emit (events.js:198:13) at Server.EventEmitter.emit (domain.js:466:23) at parserOnIncoming (_http_server.js:677:12) at HTTPParser.parserOnHeadersComplete (_http_common.js:109:17) ✓ no controller specified Error: No implementation found for this path. at /Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/lib/connect_middleware.js:50:21 at Runner.applyMetadata (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/index.js:112:5) at middleware (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/lib/connect_middleware.js:45:14) at Layer.handle [as handle_request] (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/express/lib/router/layer.js:95:5) at trim_prefix (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/express/lib/router/index.js:317:13) at /Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/express/lib/router/index.js:284:7 at Function.process_params (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/express/lib/router/index.js:335:12) at next (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/express/lib/router/index.js:275:10) at expressInit (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/express/lib/middleware/init.js:40:5) at Layer.handle [as handle_request] (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/express/lib/router/layer.js:95:5) at trim_prefix (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/express/lib/router/index.js:317:13) at /Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/express/lib/router/index.js:284:7 at Function.process_params (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/express/lib/router/index.js:335:12) at next (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/express/lib/router/index.js:275:10) at query (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/express/lib/middleware/query.js:45:5) at Layer.handle [as handle_request] (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/express/lib/router/layer.js:95:5) at trim_prefix (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/express/lib/router/index.js:317:13) at /Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/express/lib/router/index.js:284:7 at Function.process_params (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/express/lib/router/index.js:335:12) at next (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/express/lib/router/index.js:275:10) at Function.handle (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/express/lib/router/index.js:174:3) at Function.handle (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/express/lib/application.js:174:10) at Server.app (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/express/lib/express.js:39:9) at Server.emit (events.js:198:13) at Server.EventEmitter.emit (domain.js:466:23) at parserOnIncoming (_http_server.js:677:12) at HTTPParser.parserOnHeadersComplete (_http_common.js:109:17) /swagger should respond ✓ with json ✓ with yaml /pipe_on_get should respond ✓ to get operation ✓ with 405 on put operation Error: Path [/pipe_on_get] defined in Swagger, but PUT operation is not. at middleware (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/lib/connect_middleware.js:31:21) at Layer.handle [as handle_request] (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/express/lib/router/layer.js:95:5) at trim_prefix (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/express/lib/router/index.js:317:13) at /Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/express/lib/router/index.js:284:7 at Function.process_params (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/express/lib/router/index.js:335:12) at next (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/express/lib/router/index.js:275:10) at expressInit (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/express/lib/middleware/init.js:40:5) at Layer.handle [as handle_request] (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/express/lib/router/layer.js:95:5) at trim_prefix (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/express/lib/router/index.js:317:13) at /Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/express/lib/router/index.js:284:7 at Function.process_params (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/express/lib/router/index.js:335:12) at next (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/express/lib/router/index.js:275:10) at query (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/express/lib/middleware/query.js:45:5) at Layer.handle [as handle_request] (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/express/lib/router/layer.js:95:5) at trim_prefix (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/express/lib/router/index.js:317:13) at /Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/express/lib/router/index.js:284:7 at Function.process_params (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/express/lib/router/index.js:335:12) at next (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/express/lib/router/index.js:275:10) at Function.handle (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/express/lib/router/index.js:174:3) at Function.handle (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/express/lib/application.js:174:10) at Server.app (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/express/lib/express.js:39:9) at Server.emit (events.js:198:13) at Server.EventEmitter.emit (domain.js:466:23) at parserOnIncoming (_http_server.js:677:12) at HTTPParser.parserOnHeadersComplete (_http_common.js:109:17) response validation listeners ✓ should receive invalid response code errors ✓ should receive invalid header errors ✓ should receive schema validation errors ✓ should not validate multiple writes mock [{"code":"EXTRA_REFERENCE_PROPERTIES","message":"Extra JSON Reference properties will be ignored: type","path":["paths","/hello","get","responses","200","schema"]}] 2 ✓ should return from mock controller handler if exists ✓ should return example if exists and no mock controller ✓ should return example if exists based on accept header ✓ should return example based on _mockReturnStatus header hapi_middleware standard (node:11039) [DEP0022] DeprecationWarning: os.tmpDir() is deprecated. Use os.tmpdir() instead. [{"code":"EXTRA_REFERENCE_PROPERTIES","message":"Extra JSON Reference properties will be ignored: type","path":["paths","/hello","get","responses","200","schema"]}] 2 controllers ✓ should execute ✓ should execute without operationId ✓ should get query parameter ✓ should get formData parameter ✓ should get body parameter ✓ should get file parameter ✓ should get text body ✓ should get a 404 for unknown path and operation ✓ should get a 405 for known path and unknown operation ✓ should not get a 204 for known path and undeclared options operation ✓ should get a 500 for missing controller ✓ should get a 405 for missing operation function request validation ✓ should reject when invalid parameter type ✓ should reject when missing parameter ✓ should reject when invalid content security loaded from path ✓ should deny when swagger-tools handler denies ✓ should allow when swagger-tools handler accepts explicit in config ✓ should deny when missing handler ✓ should deny when swagger-tools handler denies ✓ should allow when swagger-tools handler accepts non-controller routing ✓ empty path ✓ no controller specified /swagger should respond ✓ with json ✓ with yaml /pipe_on_get should respond ✓ to get operation ✓ with 405 on put operation response validation listeners ✓ should receive invalid response code errors ✓ should receive invalid header errors ✓ should receive schema validation errors ✓ should not validate multiple writes mock [{"code":"EXTRA_REFERENCE_PROPERTIES","message":"Extra JSON Reference properties will be ignored: type","path":["paths","/hello","get","responses","200","schema"]}] 2 ✓ should return from mock controller handler if exists ✓ should return example if exists and no mock controller ✓ should return example if exists based on accept header ✓ should return example based on _mockReturnStatus header restify_middleware standard [{"code":"EXTRA_REFERENCE_PROPERTIES","message":"Extra JSON Reference properties will be ignored: type","path":["paths","/hello","get","responses","200","schema"]}] 2 { AssertionError [ERR_ASSERTION]: The first character of a path should be `/` or `*` at Router.on (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/find-my-way/index.js:69:3) at RouterRegistryRadix.add (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/restify/lib/routerRegistryRadix.js:42:21) at Router.mount (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/restify/lib/router.js:212:20) at Server.serverMethod [as del] (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/restify/lib/server.js:1686:33) at /Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/lib/restify_middleware.js:23:18 at Array.forEach (<anonymous>) at Middleware.register (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/lib/restify_middleware.js:22:17) at /Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/test/lib/restify_middleware.js:81:16 at /Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/index.js:234:7 generatedMessage: false, name: 'AssertionError [ERR_ASSERTION]', code: 'ERR_ASSERTION', actual: false, expected: true, operator: '==' } 1) "before all" hook in "standard" mock [{"code":"EXTRA_REFERENCE_PROPERTIES","message":"Extra JSON Reference properties will be ignored: type","path":["paths","/hello","get","responses","200","schema"]}] 2 { AssertionError [ERR_ASSERTION]: The first character of a path should be `/` or `*` at Router.on (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/find-my-way/index.js:69:3) at RouterRegistryRadix.add (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/restify/lib/routerRegistryRadix.js:42:21) at Router.mount (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/restify/lib/router.js:212:20) at Server.serverMethod [as del] (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/restify/lib/server.js:1686:33) at /Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/lib/restify_middleware.js:23:18 at Array.forEach (<anonymous>) at Middleware.register (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/lib/restify_middleware.js:22:17) at /Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/test/lib/restify_middleware.js:81:16 at /Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/index.js:234:7 generatedMessage: false, name: 'AssertionError [ERR_ASSERTION]', code: 'ERR_ASSERTION', actual: false, expected: true, operator: '==' } 2) "before all" hook for "should return from mock controller handler if exists" connect_middleware ✓ should be a factory function that names 1 argument: runner when called with a runner object the returned provider ✓ should be an initiated provider module ✓ should have member .runner - as the injected runner ✓ should have method .middleware() ✓ should have method .register(app) .middleware() when called - should return a middleware function(req,res,next) the returned middleware when used with request that matches no operation nor path - should call next with no side effects when used with request that matches no operation AND path has no 'x-swagger-pipe' AND method is not OPTIONS - should not fail - should call next the yielded error - should have .statusCode: 405 - should have .status: 405 (for sails) - should have .message like 'Path [<path>] defined in Swagger, but <method> operation is not' - should have .allowedMethods - should setHeader('Allow') properly when used with request that matches no operation but path has 'x-swagger-pipe' - TBD when used with request that matches a concrete operation and pipe NOT found - should yield an error the yielded error - should have .message like 'No implementation found for this path' - should have .statusCode: 405 and pipe is found - should play the pipe and pipe executes to _finnish and context.error is set by the pipe - should yield the error and context.statusCode is set - should set response.statusCode and context.headers is set - should set each header in context.headers and context.output is set and response content-type is set to application/json - should emit response body as JSON serialization of context.output - should call next and response content-type is not set and request accept type set to application/json - should emit response body as JSON serialization of context.output - should call next and request accept type set to */* or not set - should use the default mimetype in operation.produces[0] - should yield no error and context.output is set not set - should yield no error without writing anything and pipe is not executed to _finnish - TBD and 'responseValidationError' event on the runner is watched - should place response validation hooks and 'responseValidationError' event on the runner not watched - should not place response validation hooks .register(app) when called with a server instance - TBD express_compatibility ✓ should add missing properties to request and response ✓ should properly handle json() ✓ request.get should get a header ✓ request.status should set status json_error_handler error in context ✓ should set headers ✓ should set status code ✓ should emit appropriate json ✓ should not handle unexpected errors by default ✓ should handle unexpected errors if configured to do so error with statusCode in context ✓ should set headers ✓ should set status code ✓ should emit appropriate json includeErrStack:true ✓ should allow the stack in the response body handle500Errors:true and error fails to stringify and context has a logger on request ✓ should not fail ✓ should remove the error from the context ✓ should pass stringification error to the logger and context has no logger on req.log, but has on request.app.log ✓ should not fail ✓ should remove the error from the context ✓ should pass stringification error to the logger and context has no logger on request, but has on response ✓ should not fail ✓ should remove the error from the context ✓ should pass stringification error to the logger no error in context ✓ should not set headers ✓ should not set status code ✓ should not emit error json swagger_raw ✓ should retrieve swagger json ✓ should retrieve swagger yaml ✓ should be able to set the filter ✓ should be able to modify privateTags & apply to operations end-to-end [{"code":"EXTRA_REFERENCE_PROPERTIES","message":"Extra JSON Reference properties will be ignored: type","path":["paths","/hello","get","responses","200","schema"]},{"code":"UNUSED_DEFINITION","message":"Definition is not used: #/definitions/veryVeryBigCompoundType","path":["definitions","veryVeryBigCompoundType"]}] 2 when requested with accept:application/json ✓ should yield the document as json when requested with accept:application/yaml ✓ should yield the document as json index [{"code":"OBJECT_MISSING_REQUIRED_PROPERTY","params":["paths"],"message":"Missing required property: paths","path":[],"schemaId":"http://swagger.io/v2/schema.json#","title":"A JSON Schema for Swagger 2.0 API."},{"code":"OBJECT_MISSING_REQUIRED_PROPERTY","params":["info"],"message":"Missing required property: info","path":[],"schemaId":"http://swagger.io/v2/schema.json#","title":"A JSON Schema for Swagger 2.0 API."}] 2 ✓ should continue with bad swagger if startWithErrors is true ✓ should fail with bad swagger if startWithErrors is false ✓ should fail with swagger warnings if startWithWarnings is false [{"code":"UNUSED_DEFINITION","message":"Definition is not used: #/definitions/SomeUnusedDefinition","path":["definitions","SomeUnusedDefinition"]}] 2 ✓ should continue with swagger warnings if startWithWarnings is true 3) should allow paths using global security instantiation ✓ should fail without config ✓ should fail without config.appRoot [{"code":"EXTRA_REFERENCE_PROPERTIES","message":"Extra JSON Reference properties will be ignored: type","path":["paths","/hello","get","responses","200","schema"]}] 2 ✓ should accept passed in configuration (50ms) [{"code":"EXTRA_REFERENCE_PROPERTIES","message":"Extra JSON Reference properties will be ignored: type","path":["paths","/hello","get","responses","200","schema"]}] 2 ✓ should accept env configuration (51ms) [{"code":"EXTRA_REFERENCE_PROPERTIES","message":"Extra JSON Reference properties will be ignored: type","path":["paths","/hello","get","responses","200","schema"]}] 2 4) should create default config when missing TypeError: Cannot read property 'method' of undefined at ServerResponse.__send (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/restify/lib/response.js:378:31) at ServerResponse.send (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/restify/lib/response.js:316:21) at ServerResponse.json (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/restify/lib/response.js:251:21) at hello (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/test/assets/project/api/controllers/hello_world.js:17:7) at swagger_router (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/fittings/swagger_router.js:104:13) at Runner.<anonymous> (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/bagpipes/lib/bagpipes.js:171:7) at bound (domain.js:402:14) at Runner.runBound (domain.js:415:12) at Runner.pipeline (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/pipeworks/pipeworks.js:72:17) at Runner.flow (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/pipeworks/pipeworks.js:223:19) at Pipeworks.flow (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/pipeworks/pipeworks.js:135:17) at Pipeworks.siphon (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/pipeworks/pipeworks.js:186:19) at Runner.<anonymous> (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/bagpipes/lib/bagpipes.js:98:22) at bound (domain.js:402:14) at Runner.runBound (domain.js:415:12) at Runner.<anonymous> (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/pipeworks/pipeworks.js:72:17) at postFlight (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/bagpipes/lib/bagpipes.js:220:3) at /Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/bagpipes/lib/bagpipes.js:174:9 at expressCompatibility (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/fittings/express_compatibility.js:44:3) at express_compatibility (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/fittings/express_compatibility.js:12:5) at Runner.<anonymous> (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/bagpipes/lib/bagpipes.js:171:7) at bound (domain.js:402:14) at Runner.runBound (domain.js:415:12) at Runner.<anonymous> (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/pipeworks/pipeworks.js:72:17) at Runner.<anonymous> (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/pipeworks/pipeworks.js:179:12) at bound (domain.js:402:14) at Runner.runBound (domain.js:415:12) at Runner.<anonymous> (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/pipeworks/pipeworks.js:72:17) at postFlight (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/bagpipes/lib/bagpipes.js:220:3) at /Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/bagpipes/lib/bagpipes.js:174:9 at swagger_validator (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/fittings/swagger_validator.js:31:5) at Runner.<anonymous> (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/bagpipes/lib/bagpipes.js:171:7) at bound (domain.js:402:14) at Runner.runBound (domain.js:415:12) at Runner.pipeline (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/pipeworks/pipeworks.js:72:17) at Runner.flow (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/pipeworks/pipeworks.js:223:19) at Pipeworks.flow (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/pipeworks/pipeworks.js:135:17) at Pipeworks.siphon (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/pipeworks/pipeworks.js:186:19) at Runner.<anonymous> (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/bagpipes/lib/bagpipes.js:98:22) at bound (domain.js:402:14) at Runner.runBound (domain.js:415:12) at Runner.<anonymous> (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/pipeworks/pipeworks.js:72:17) at postFlight (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/bagpipes/lib/bagpipes.js:220:3) at /Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/bagpipes/lib/bagpipes.js:174:9 at swagger_security (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/fittings/swagger_security.js:34:53) at Runner.<anonymous> (/Users/xavierjouclas/Documents/Code/Transaction_Connect/Libs/swagger-node-runner/node_modules/bagpipes/lib/bagpipes.js:171:7) at bound (domain.js:402:14) at Runner.runBound (domain.js:415:12) at Runner.<anonymous> (/Users/xavierjouclas/Documents/Code/Transaction_Connect/