2016-11-28 39 views
0

我的團隊偶爾會遇到開發人員推動包含.only()函數調用的Karma/Protractor測試的問題,這當然會讓我們的Jenkins等只運行特定的測試,可能會讓錯誤消失。因此,我想我會嘗試找出一種方法來阻止這種情況發生,而不會被發現。如何在JavaScript中特定函數調用?

首先,我想我會考慮簡單地使用JSHint指出函數調用,但我似乎無法找到一種方法來做到這一點。我還查看了ESLint的自定義插件,但我無法弄清楚如何爲這種特殊情況編寫插件。

你們可以給我一些關於如何解決這個問題的想法嗎?當然也可以選擇其他解決方案!

+1

寫自己的規則/插件https://www.npmjs.com/package/generator-eslint –

回答

0

下面是一個(可能不是工作示例)如何創建一個插件來標記錯誤,如果解析器看到only()調用。再次,里程可能會有所不同,但它應該足以讓你開始。如果它看到a.only(),這不起作用,我們會讓您知道。

module.exports.rules = { 
    "no-only-call": context => ({ 
     CallExpression: (node) => { 
      if(node.callee.name == "only"){ 
       context.report(node, 'Calls to only() are disallowed'); 
      } 
     } 
    }) 
}; 
相關問題