Optimize diffing in Danger (#2827)

This commit is contained in:
Paul Melnikow
2019-01-21 15:16:50 -05:00
committed by chris48s
parent 558576dfb7
commit 31f0b8e6d8

View File

@@ -118,35 +118,34 @@ if (capitals.created || underscores.created) {
const allFiles = danger.git.created_files.concat(danger.git.modified_files) const allFiles = danger.git.created_files.concat(danger.git.modified_files)
allFiles.forEach(file => { if (allFiles.length > 100) {
// eslint-disable-next-line promise/prefer-await-to-then warn("Lots 'o changes. Skipping diff-based checks.")
danger.git.diffForFile(file).then(diff => { } else {
if (/\+.*assert[(.]/.test(diff.diff)) { allFiles.forEach(file => {
warn( // eslint-disable-next-line promise/prefer-await-to-then
[ danger.git.diffForFile(file).then(({ diff }) => {
`Found 'assert' statement added in \`${file}\`. <br>`, if (/serverSecrets/.test(diff) && !secretsDocs.modified) {
'Please ensure tests are written using Chai ', warn(
'[expect syntax](http://chaijs.com/guide/styles/#expect)', [
].join('') `:books: Remember to ensure any changes to \`serverSecrets\` `,
) `in \`${file}\` are reflected in the [server secrets documentation]`,
} '(https://github.com/badges/shields/blob/master/doc/server-secrets.md)',
}) ].join('')
}) )
}
allFiles.forEach(file => { if (/\+.*assert[(.]/.test(diff)) {
// eslint-disable-next-line promise/prefer-await-to-then warn(
danger.git.diffForFile(file).then(diff => { [
if (/serverSecrets/.test(diff.diff) && !secretsDocs.modified) { `Found 'assert' statement added in \`${file}\`. <br>`,
warn( 'Please ensure tests are written using Chai ',
[ '[expect syntax](http://chaijs.com/guide/styles/#expect)',
`:books: Remember to ensure any changes to \`serverSecrets\` `, ].join('')
`in \`${file}\` are reflected in the [server secrets documentation]`, )
'(https://github.com/badges/shields/blob/master/doc/server-secrets.md)', }
].join('') })
)
}
}) })
}) }
function onlyUnique(value, index, self) { function onlyUnique(value, index, self) {
return self.indexOf(value) === index return self.indexOf(value) === index