Skip to content

Commit

Permalink
test: additional tests for sarif
Browse files Browse the repository at this point in the history
  • Loading branch information
RotemS committed Sep 16, 2020
1 parent f063131 commit fe38684
Show file tree
Hide file tree
Showing 2 changed files with 70 additions and 2 deletions.
71 changes: 69 additions & 2 deletions test/acceptance/cli-args.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -489,11 +489,11 @@ test('test --sarif-file-output no value produces error message', (t) => {
optionsToTest.forEach(validate);
});

test('`test --json-file-output can be used at the same time as --sarif-file-output`', (t) => {
test('`container test --json-file-output can be used at the same time as --sarif-file-output`', (t) => {
t.plan(3);

exec(
`node ${main} test --json-file-output=snyk-direct-json-test-output.json --sarif-file-output=snyk-direct-sarif-test-output.json`,
`node ${main} container test alpine --file=test/acceptance/fixtures/docker/Dockerfile --sarif-file-output=snyk-direct-sarif-test-output.json --json-file-output=snyk-direct-json-test-output.json`,
(err, stdout) => {
if (err) {
throw err;
Expand All @@ -517,3 +517,70 @@ test('`test --json-file-output can be used at the same time as --sarif-file-outp
},
);
});

test('`test --sarif-file-output can be used at the same time as --sarif`', (t) => {
t.plan(2);

exec(
`node ${main} container test alpine --sarif --file=test/acceptance/fixtures/docker/Dockerfile --sarif-file-output=snyk-direct-sarif-test-output.json`,
(err, stdout) => {
if (err) {
throw err;
}
const sarifOutput = JSON.parse(
readFileSync('snyk-direct-sarif-test-output.json', 'utf-8'),
);

unlinkSync('./snyk-direct-sarif-test-output.json');

t.match(stdout, 'rules', 'stdout is sarif');

t.match(sarifOutput.version, '2.1.0', 'SARIF output file OK');
t.end();
},
);
});

test('`test --sarif-file-output without vulns`', (t) => {
t.plan(1);

exec(
`node ${main} container test alpine --file=test/acceptance/fixtures/docker/Dockerfile --sarif-file-output=snyk-direct-sarif-test-output.json`,
(err) => {
if (err) {
throw err;
}
const sarifOutput = JSON.parse(
readFileSync('snyk-direct-sarif-test-output.json', 'utf-8'),
);

unlinkSync('./snyk-direct-sarif-test-output.json');

t.match(sarifOutput.version, '2.1.0', 'SARIF output file OK');
t.end();
},
);
});

test('`test --sarif-file-output can be used at the same time as --json with vulns`', (t) => {
t.plan(2);

exec(
`node ${main} container test ubuntu --json --file=test/acceptance/fixtures/docker/Dockerfile --sarif-file-output=snyk-direct-sarif-test-output.json`,
(err, stdout) => {
if (err) {
throw err;
}
const sarifOutput = JSON.parse(
readFileSync('snyk-direct-sarif-test-output.json', 'utf-8'),
);

unlinkSync('./snyk-direct-sarif-test-output.json');

const jsonObj = JSON.parse(stdout);
t.notEqual(jsonObj.vulnerabilities.length, 0, 'has vulns');
t.match(sarifOutput.version, '2.1.0', 'SARIF output file OK');
t.end();
},
);
});
1 change: 1 addition & 0 deletions test/acceptance/fixtures/docker/Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
FROM scratch

0 comments on commit fe38684

Please sign in to comment.