Tbpgr Blog

Employee Experience Engineer tbpgr(てぃーびー) のブログ

Circle CI で ESLint のレポートを生成する

alt

JavaScript + ESLint のプロジェクトで解析結果のレポートを設定します。

レポート未設定時のTest Summary

f:id:tbpg:20161013224942p:plain

サンプルコード

index.js

toString() の部分であえてセミコロンを省略しますa

module.exports = {
    calc: function(number) {
        if (number % 15 == 0) {
            return "FizzBuzz";
        } else if(number % 5 == 0) {
            return "Buzz";
        } else if (number % 3 == 0) {
            return "Fizz";
        } else {
            return number.toString()
        }
    }
};

.eslintrc.js

※設定はてきとうです

module.exports = {
    "env": {
        "node": true,
        "mocha": true
    },
    "extends": "eslint:recommended",
    "rules": {
        "indent": [
            "error",
            4
        ],
        "linebreak-style": [
            "error",
            "unix"
        ],
        "quotes": 
            "error",
            "double"
        ],
        "semi": [
            "error",
            "always"
        ]
    }
};

circle.yml

test:
  pre:
    - npm run lint -- --format=junit -o $CIRCLE_TEST_REPORTS/eslint/eslint.xml ./src

テスト失敗時

[f:id:tbpg:20161013224950p:plain

関連資料