2016-11-28 3 views
0

У моей команды были случайные проблемы с разработчиками, которые нажимали тесты Karma/Protractor, содержащие вызов функции .only(), что, конечно же, делает наш 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'); 
      } 
     } 
    }) 
}; 
Смежные вопросы