9 votes

Tester que le hachage contient des clés spécifiques et que les valeurs de ces clés ne sont pas nulles.

Comment puis-je tester qu'une méthode renvoie un hachage contenant des clés spécifiques et que les valeurs de ces clés ne sont pas nulles en utilisant RSpec ?

11voto

tokland Points 29813

J'écrirais :

describe MyObject do
  describe "#my_method" do
    subject(:my_method) { MyObject.new.my_method }

    it { is_expected.to be_a_kind_of(Hash) }
    specify { expect(my_method.keys).to include(:key1, :key2) }
    specify { expect(my_method.values).not_to include(nil) }
  end
end

Il peut arriver que vous deviez utiliser des clés entre guillemets "key1", "key2". Dans le cas contraire, une erreur peut survenir.

8voto

Vasiliy Ermolovich Points 14719

Quelque chose comme ça :

test_method.values_at("key1", "key2").should_not include(nil)

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X