]> git.ipfire.org Git - thirdparty/moment.git/commitdiff
Add jscs task with options
authorIskren Chernev <iskren.chernev@gmail.com>
Tue, 17 Jun 2014 06:09:12 +0000 (23:09 -0700)
committerIskren Chernev <iskren.chernev@gmail.com>
Thu, 19 Jun 2014 08:36:55 +0000 (01:36 -0700)
.jscs.json [new file with mode: 0644]
Gruntfile.js
package.json

diff --git a/.jscs.json b/.jscs.json
new file mode 100644 (file)
index 0000000..1ce31f8
--- /dev/null
@@ -0,0 +1,63 @@
+{
+    "requireCurlyBraces": [
+        "if",
+        "else",
+        "for",
+        "while",
+        "do",
+        "try",
+        "catch"
+    ],
+    "requireSpaceAfterKeywords": [
+        "if",
+        "else",
+        "for",
+        "while",
+        "do",
+        "switch",
+        "return",
+        "try",
+        "catch"
+    ],
+    "requireSpaceBeforeBlockStatements": true,
+    "requireParenthesesAroundIIFE": true,
+    "requireSpacesInConditionalExpression": true,
+    "requireSpacesInAnonymousFunctionExpression": {
+        "beforeOpeningRoundBrace": true,
+        "beforeOpeningCurlyBrace": true
+    },
+    "requireSpacesInNamedFunctionExpression": {
+        "beforeOpeningCurlyBrace": true
+    },
+    "disallowSpacesInNamedFunctionExpression": {
+        "beforeOpeningRoundBrace": true
+    },
+    "requireMultipleVarDecl": "onevar",
+    "requireBlocksOnNewline": true,
+    "disallowPaddingNewlinesInBlocks": true,
+    "disallowEmptyBlocks": true,
+    "disallowSpacesInsideObjectBrackets": true,
+    "disallowSpacesInsideArrayBrackets": true,
+    "disallowSpacesInsideParentheses": true,
+    "requireCommaBeforeLineBreak": true,
+    "disallowSpaceAfterPrefixUnaryOperators": ["++", "--", "+", "-", "~", "!"],
+    "disallowSpaceBeforePostfixUnaryOperators": ["++", "--"],
+    "requireSpaceBeforeBinaryOperators": [
+        "=", "+=", "-=", "*=", "/=", "%=", "<<=", ">>=", ">>>=",
+        "&=", "|=", "^=",
+
+        "+", "-", "*", "/", "%", "<<", ">>", ">>>", "&",
+        "|", "^", "&&", "||", "===", "==", ">=",
+        "<=", "<", ">", "!=", "!=="
+    ],
+    "requireSpaceAfterBinaryOperators": true,
+    "requireCamelCaseOrUpperCaseIdentifiers": "ignoreProperties",
+    "disallowKeywords": ["with"],
+    "disallowMultipleLineStrings": true,
+    "validateLineBreaks": "LF",
+    "validateIndentation": 4,
+    "disallowTrailingWhitespace": true,
+    "disallowTrailingComma": true,
+    "requireLineFeedAtFileEnd": true,
+    "requireCapitalizedConstructors": true
+}
index 5b2f804074e5ee4663ec34320cd1bfe00bf127a4..f486c8551bb2a7209e114d40a152cacd562d08e5 100644 (file)
@@ -160,6 +160,15 @@ module.exports = function (grunt) {
                 }
             }
         },
+        jscs: {
+            all: [
+                "Gruntfile.js", "moment.js", "lang/**/*.js",
+                "test/**/*.js", "!test/browser*.js"
+            ],
+            options: {
+                config: ".jscs.json"
+            }
+        },
         watch : {
             test : {
                 files : [
@@ -187,7 +196,7 @@ module.exports = function (grunt) {
     require('load-grunt-tasks')(grunt);
 
     // Default task.
-    grunt.registerTask('default', ['jshint', 'nodeunit']);
+    grunt.registerTask('default', ['jshint', 'jscs', 'nodeunit']);
 
     //test tasks
     grunt.registerTask('test', ['test:node', 'test:browser']);
@@ -199,8 +208,12 @@ module.exports = function (grunt) {
 
     // travis build task
     grunt.registerTask('build:travis', [
-        'jshint', 'test:node', 'check-sauce-creds',
-        'test:travis-sauce-browser'
+        // code style
+        'jshint', 'jscs',
+        // node tests
+        'test:node',
+        // sauce tests
+        'check-sauce-creds', 'test:travis-sauce-browser'
     ]);
 
     // Task to be run when releasing a new version
index 24654321629d300fb9147679d857f94bdf739ba1..6d5d886067fbe46618904901d8d9adbb7345b274 100644 (file)
@@ -48,6 +48,7 @@
         "grunt-contrib-uglify": "latest",
         "grunt-contrib-watch": "latest",
         "grunt-env": "latest",
+        "grunt-jscs-checker": "latest",
         "grunt-karma": "latest",
         "load-grunt-tasks": "latest",
         "karma": "latest",