日常で使うRubyプログラミング

日常の作業でRubyを使う際、気になったことをChatGPTに聞いています。

2024-03-26から1日間の記事一覧

RubyでDSL(Domain Specific Language)を設計する

ユーザー側からの入力を簡易プログラミング言語みたいにしたいと思うことがたまにあったので、DSLの作成方法を聞いてみました。 Rubyの場合は、特定のオブジェクトをレシーバーとしつつ、そのオブジェクトのコンテキストでブロック内のコードを実行させるins…

RSpecで、Mockオブジェクトを用いる

聞いてみました。 RSpecで、Mockオブジェクトを用いたテストもできるのでしょうか? Userクラスのダブルオブジェクトに、複数の振る舞いを定義するにはどうすれば良いですか? ダブルに定義できる振る舞いについて、まとめていただけませんか? ダブルを渡す…

RSpecのMatcherまとめ

Matcherは、expect(v).to eq(3)のように、vの値が期待通りかを示す操作のeq(3)の部分のことです。 vがある値に等しいか、以上か、以下か、文字列なら正規表現にあてはまるか、配列やハッシュならある値やキーを含むか、expectの引数がブロックなら期待した…