aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rwxr-xr-xvalidate-commit-msg.js4
-rw-r--r--validate-commit-msg.spec.js3
2 files changed, 4 insertions, 3 deletions
diff --git a/validate-commit-msg.js b/validate-commit-msg.js
index 7e8df6be..ec853a46 100755
--- a/validate-commit-msg.js
+++ b/validate-commit-msg.js
@@ -13,7 +13,7 @@ var util = require('util');
var MAX_LENGTH = 70;
-var PATTERN = /^(\w*)(\(([\w\$\.\-\*/]*)\))?\: (.*)$/;
+var PATTERN = /^(?:fixup!\s*)?(\w*)(\(([\w\$\.\-\*/]*)\))?\: (.*)$/;
var IGNORED = /^WIP\:/;
var TYPES = {
feat: true,
@@ -51,7 +51,7 @@ var validateMessage = function(message) {
var match = PATTERN.exec(message);
if (!match) {
- error('does not match "<type>(<scope>): <subject>" !');
+ error('does not match "<type>(<scope>): <subject>" ! was: ' + message);
return false;
}
diff --git a/validate-commit-msg.spec.js b/validate-commit-msg.spec.js
index 4d153dc0..d4b37775 100644
--- a/validate-commit-msg.spec.js
+++ b/validate-commit-msg.spec.js
@@ -22,6 +22,7 @@ describe('validate-commit-msg.js', function() {
describe('validateMessage', function() {
it('should be valid', function() {
+ expect(m.validateMessage('fixup! fix($compile): something')).toBe(VALID);
expect(m.validateMessage('fix($compile): something')).toBe(VALID);
expect(m.validateMessage('feat($location): something')).toBe(VALID);
expect(m.validateMessage('docs($filter): something')).toBe(VALID);
@@ -50,7 +51,7 @@ describe('validate-commit-msg.js', function() {
var msg = 'not correct format';
expect(m.validateMessage(msg)).toBe(INVALID);
- expect(errors).toEqual(['INVALID COMMIT MSG: does not match "<type>(<scope>): <subject>" !']);
+ expect(errors).toEqual(['INVALID COMMIT MSG: does not match "<type>(<scope>): <subject>" ! was: not correct format']);
});