[RUBY] Utilisez le matcher d'inclusion docilement lors de la vérification du hachage avec RSpec

Aperçu

Cet article traite de l'utilisation de include matcher au lieu de eq matcher lorsque vous souhaitez vérifier le hachage avec rspec.

code

Si vous avez un hachage de {hoge: 'fuga'} et que vous essayez de le vérifier avec eq,

it do
  expect(subject).to eq { hoge: 'fuga' }
end

Vous ne pouvez pas écrire comme, car {} est interprété comme un bloc. Donc pour utiliser eq

it do
  expected_hash = { hoge: 'fuga' }
  expect(subject).to eq expected_hash
end

Vous devez mettre du hachage dans une variable, comme.

Il n'est peut-être pas nécessaire d'écrire un article, mais

C'est un problème, alors utilisez include.

it do
  expect(subject).to include(hoge: 'fuga')
end

Recommended Posts

Utilisez le matcher d'inclusion docilement lors de la vérification du hachage avec RSpec
Utiliser Webmock avec Rspec