【RuboCop】RSpecのsubject使用時の規約違反とRuboCopの違反の種類について
はじめに
RSpecでsubjectを使用して、DRYにしようとする中で、
subject { get '/api', params: params, headers: headers; response }
このように書くと
RuboCopの警告を受けた。
Do not use semicolons to terminate expressions. (convention:Style/Semicolon)
↓
終了の表現にセミコロンを使用しないでください。(規約:スタイル/セミコロン)
対処
じゃあ、使わない場合はどうするか、、
subject do
get '/api', params: params, headers: headers
response
end
こうすると、無事警告が消えました。
subject do ~~ end
として、2行に分けることでセミコロンでコードの終端を表現する必要がなくなった、ということですね。
RuboCopの警告の種類
ずっと、RuboCopの指摘の事を警告、とだけ呼んでしたが、これをきっかけに調べると、
今回の、convention
は規約違反。
段階があり以下の通りとなっています。
種類 | 意味 |
---|---|
Clean | 違反なし |
Convention | 慣習違反 |
Warning | 警告 |
Error | エラー |
Fatal | 致命的 |
下に行くほど重大、ということですね。
勉強になりました。
参考にさせて頂いた記事
終わりに。
最後まで読んで頂きありがとうございます
転職の為、未経験の状態からRailsを学習しております。正しい知識を着実に身に着け、実力のあるエンジニアになりたいと考えています。継続して投稿していく中で、その為のインプットも必然的に増え、成長に繋がるかと考えています。
今現在、初心者だからといって言い訳はできないですが、投稿の内容に間違っているところや、付け加えるべきところが多々あるかと思いますので、ご指摘頂けると幸いです。この記事を読んで下さりありがとうございました。
Author And Source
この問題について(【RuboCop】RSpecのsubject使用時の規約違反とRuboCopの違反の種類について), 我々は、より多くの情報をここで見つけました https://qiita.com/waniwaninowani/items/9e294257b65e07041edc著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .