1. ホーム
  2. ruby

[解決済み] RubyのKernelクラスにassert()メソッドを追加するのはRubyのイディオムですか?

2023-06-27 08:10:25

質問

私はRubyでKent BeckのxUnitと同等のものをコーディングすることで、Rubyの理解を深めているところです。 Python(Kentが書いている)には、言語内にassert()メソッドがあり、これは広範囲に使用されています。 Rubyにはありません。 私はこれを追加するのは簡単だと思いますが、それを置くのにKernelは正しい場所でしょうか?

ところで 私は Ruby のさまざまなユニットフレームワークの存在を知っています。 - これはRubyのイディオムを学ぶための練習であり、むしろ何かを成し遂げるためのものです"。

どのように解決するのですか?

いいえ、それはベストプラクティスではありません。Rubyのassert()の最もよい類似は、ただ単に、assert()を上げることです。

 raise "This is wrong" unless expr

また、より具体的な例外処理を行いたい場合は、独自の例外を実装することができます。