Set Issue labels by inputs & add unit test (#12)

* Set Issue labels by inputs

* Add unit test
This commit is contained in:
Naoki Oketani
2019-12-09 12:43:13 +09:00
committed by GitHub
parent 9931b4d0d0
commit 14d92785e4
7 changed files with 122 additions and 25 deletions

30
src/audit.ts Normal file
View File

@@ -0,0 +1,30 @@
import {spawnSync, SpawnSyncReturns} from 'child_process'
export class Audit {
stdout: string = ''
status: number | null = null
public async run(): Promise<void> {
const result: SpawnSyncReturns<string> = spawnSync('npm', ['audit'], {
encoding: 'utf-8'
})
if (result.error) {
throw result.error
}
if (result.status === null) {
throw new Error('the subprocess terminated due to a signal.')
}
if (result.stderr && result.stderr.length > 0) {
throw new Error(result.stderr)
}
this.status = result.status
this.stdout = result.stdout
}
public foundVulnerability(): boolean {
// `npm audit` return 1 when it found vulnerabilities
return this.status === 1
}
}