Skip to content

Commit

Permalink
test: update swagger-merger
Browse files Browse the repository at this point in the history
  • Loading branch information
WindomZ committed Feb 13, 2022
1 parent dc573d5 commit 497a543
Show file tree
Hide file tree
Showing 2 changed files with 54 additions and 50 deletions.
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
```

[![Greenkeeper badge](https://badges.greenkeeper.io/WindomZ/swagger-merger.svg)](https://greenkeeper.io/)
[![Node.js CI](https://github.com/WindomZ/swagger-merger/actions/workflows/main.yml/badge.svg)](https://github.com/WindomZ/swagger-merger/actions/workflows/ci.yml)
[![Node.js(≥12.22) CI](https://github.com/WindomZ/swagger-merger/actions/workflows/ci.yml/badge.svg)](https://github.com/WindomZ/swagger-merger/actions/workflows/ci.yml)
[![Coverage Status](https://coveralls.io/repos/github/WindomZ/swagger-merger/badge.svg?branch=master)](https://coveralls.io/github/WindomZ/swagger-merger?branch=master)
[![Standard - JavaScript Style Guide](https://img.shields.io/badge/code_style-standard-brightgreen.svg)](https://standardjs.com/)
[![License](https://img.shields.io/badge/license-MIT-green.svg)](https://opensource.org/licenses/MIT)
Expand Down
102 changes: 53 additions & 49 deletions bin/swagger-merger.js
Original file line number Diff line number Diff line change
Expand Up @@ -4,62 +4,66 @@
*/
'use strict'

const program = require('commander')
const util = require('util')

const merger = require('../lib/merger')

let noArgs = true
if (require.main === module) {
const program = require('commander')
const util = require('util')

program
.version(require('../package.json').version)
.usage('[-h] [-v] [-c] [-o file] <-i file | file>')
.description('Merge multiple swagger files into a swagger file, just support JSON/YAML.')
.option('-i, --input <*.json|yaml|yml file>', 'input a main/entry JSON/YAML swagger file, MANDATORY',
/^.+\.(json|yaml|yml)$/gi, null)
.option('-o, --output <*.json|yaml|yml file>', 'output a merged JSON/YAML swagger file, default is `swagger.*`',
/^.+\.(json|yaml|yml)$/gi, null)
.option('-c, --compact', 'compact JSON/YAML format string', null, null)
.option('--debug', 'debug mode, such as print error tracks', null, null)
.action((options) => {
noArgs = !(options.input)
if (noArgs) {
return
}
let noArgs = true

merger({
input: options.input || '',
output: options.output || '',
compact: options.compact
}).catch(e => {
if (options.debug) {
console.error(e)
} else if (e.mark) {
console.error(util.format('error: %s\ncontent: %s', e.message, e.mark.buffer))
} else {
console.error(util.format('error: %s', e.message))
program
.version(require('../package.json').version)
.usage('[-h] [-v] [-c] [-o file] <-i file | file>')
.description('Merge multiple swagger files into a swagger file, just support JSON/YAML.')
.option('-i, --input <*.json|yaml|yml file>', 'input a main/entry JSON/YAML swagger file, MANDATORY',
/^.+\.(json|yaml|yml)$/gi, null)
.option('-o, --output <*.json|yaml|yml file>', 'output a merged JSON/YAML swagger file, default is `swagger.*`',
/^.+\.(json|yaml|yml)$/gi, null)
.option('-c, --compact', 'compact JSON/YAML format string', null, null)
.option('--debug', 'debug mode, such as print error tracks', null, null)
.action((options) => {
noArgs = !(options.input)
if (noArgs) {
return
}

merger({
input: options.input || '',
output: options.output || '',
compact: options.compact
}).catch(e => {
if (options.debug) {
console.error(e)
} else if (e.mark) {
console.error(util.format('error: %s\ncontent: %s', e.message, e.mark.buffer))
} else {
console.error(util.format('error: %s', e.message))
}
})
})
})

program.parse(process.argv)
program.parse(process.argv)

if (noArgs) {
if (program.opts().input) {
merger({
input: program.opts().input,
output: program.opts().output || '',
compact: program.opts().compact
}).catch(e => {
if (program.opts().debug) {
console.error(e)
} else if (e.mark) {
console.error(util.format('error: %s\ncontent: %s', e.message, e.mark.buffer))
} else {
console.error(util.format('error: %s', e.message))
}
})
} else {
program.outputHelp()
if (noArgs) {
if (program.opts().input) {
merger({
input: program.opts().input,
output: program.opts().output || '',
compact: program.opts().compact
}).catch(e => {
if (program.opts().debug) {
console.error(e)
} else if (e.mark) {
console.error(util.format('error: %s\ncontent: %s', e.message, e.mark.buffer))
} else {
console.error(util.format('error: %s', e.message))
}
})
} else {
program.outputHelp()
}
}
}

module.exports.merge = merger

0 comments on commit 497a543

Please sign in to comment.