2022-06-17 16:21:45 -07:00
import { danger , warn , message } from 'danger' ;
2022-07-21 18:14:42 -07:00
// Docs changes
2022-06-17 16:21:45 -07:00
const docs = danger . git . fileMatch ( 'docs/**/*.md' ) ;
if ( docs . edited ) {
message ( 'Thanks - We :heart: our [documentarians](http://www.writethedocs.org/)!' ) ;
}
2022-12-14 15:50:37 -08:00
// Enforce CHANGELOG.md additions
const changelog = danger . git . fileMatch ( 'CHANGELOG.md' ) ;
if ( ! changelog . edited ) {
warn ( 'You have not updated `CHANGELOG.md`. If this change directly impacts users, you should update the changelog. Otherwise you can ignore this message. See: https://keepachangelog.com' ) ;
}
2022-07-21 18:14:42 -07:00
// UI components
const uiCode = danger . git . fileMatch ( 'app/soapbox/components/ui/**' ) ;
const uiTests = danger . git . fileMatch ( 'app/soapbox/components/ui/**/__tests__/**' ) ;
2022-08-05 09:16:33 -07:00
if ( uiCode . edited && ! uiTests . edited ) {
2022-07-21 18:14:42 -07:00
warn ( 'You have UI changes (`soapbox/components/ui`) without tests.' ) ;
}
// Actions
const actionsCode = danger . git . fileMatch ( 'app/soapbox/actions/**' ) ;
const actionsTests = danger . git . fileMatch ( 'app/soapbox/actions/**__tests__/**' ) ;
2022-08-05 09:16:33 -07:00
if ( actionsCode . edited && ! actionsTests . edited ) {
2022-07-21 18:14:42 -07:00
warn ( 'You have actions changes (`soapbox/actions`) without tests.' ) ;
}
// Reducers
const reducersCode = danger . git . fileMatch ( 'app/soapbox/reducers/**' ) ;
const reducersTests = danger . git . fileMatch ( 'app/soapbox/reducers/**__tests__/**' ) ;
2022-08-05 09:16:33 -07:00
if ( reducersCode . edited && ! reducersTests . edited ) {
2022-07-21 18:14:42 -07:00
warn ( 'You have reducer changes (`soapbox/reducers`) without tests.' ) ;
2022-06-17 16:21:45 -07:00
}