Implement cases
Summary
Cases are simple If-This-And-That statements that can be defined by the user. With cases, it adds more "analysis" or "test" on GitMate that is needed.
For example:
- If a text file have more than 30 lines then
Request changes and message "$file is too long. Make it shorter!"
- If a file is changed on dist then
Request changes and message "Files on dist are generated by CI. Change the source instead!"
- If a file is changed on templates/ and there is not picture in the Pull request message then
Request changes and message "Template changes require screenshots. Please append a screenshot of the page."
- If a file on assets/picture/ is not a png
Request changes and message "Use transparent pngs!"
Cases can be simply common cases such as stated above. Cases are declared in the frontend and they can be combine with simple boolean operators such as AND, OR, XOR.
With cases, GitMate will be more useful in achieving automation for reviews and will speed up the process to not make humans do the common review tasks such as the ones on the example.
Proposal
Implement cases