[解決済み】Rspec: 「array.should == another_array "だが、順番は気にしない。
2022-04-05 18:09:20
質問
配列を比較し、どのような順序でも同じ要素が含まれていることを確認したいことがよくあります。RSpecでこれを行う簡潔な方法はありますか?
受け入れられないメソッドを紹介します。
#to_set
例えば
expect(array.to_set).to eq another_array.to_set
または
array.to_set.should == another_array.to_set
配列に重複する項目がある場合、失敗します。
#sort
例えば
expect(array.sort).to eq another_array.sort
または
array.sort.should == another_array.sort
これは、array 要素が
#<=>
解決方法は?
使用方法
match_array
別の配列を引数にとるか
contain_exactly
これは各要素を個別の引数として受け取るもので、可読性を高めるために有効な場合があります。(
ドキュメント
)
例
expect([1, 2, 3]).to match_array [3, 2, 1]
または
expect([1, 2, 3]).to contain_exactly 3, 2, 1
関連
-
[解決済み】未定義のメソッド(NoMethodError)ruby
-
[解決済み] Gemfile が見つかりません。
-
[解決済み] RMagickのインストール。MagickWand.hが見当たりません。
-
[解決済み] Ruby - 文字列を日付に変換する
-
[解決済み] Rubyでリモートホストの到達可能性をpingで確認する方法
-
[解決済み] Ruby: 文字列をブーリアンに変換する方法
-
[解決済み] JanusのセットアップにVIMプラグインを追加する
-
[解決済み] gemのインストールで --no-ri --no-rdoc をデフォルトにするには?
-
[解決済み】RSpecのテストを1つだけ実行するには?
-
[解決済み】Javaで2つのXMLドキュメントを比較する最適な方法
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】Ruby: 特定のバージョンのruby gemをインストールする方法は?
-
[解決済み] ルビー階乗関数
-
[解決済み] RMagickのインストール。MagickWand.hが見当たりません。
-
[解決済み] Rubyがブロックの中でパイプ文字を使うことについて、誰か説明してください。
-
[解決済み] Rubyでnil値をマッピングして削除する方法
-
[解決済み] Rubyで日付文字列をパースする
-
[解決済み] nil から String への暗黙の変換ができないエラー
-
[解決済み] プロキシ(ISA-NTLM)の後ろからRuby Gemsをアップデートする方法
-
[解決済み] Ruby 1.8.7 ハッシュを文字列に変換する
-
[解決済み] JanusのセットアップにVIMプラグインを追加する