2009-08-22 5 views

Répondre

1

Nous pouvons toujours écrire le matcher personnalisé.

Ou utilisez la combinaison de by_at_most et by_at_least matchers avec la précision comme ceci:

lambda { ...}.should change(unit, :price).by_at_most(12.15 + 10e-5).by_at_least(12.15 - 10e-5) 
0

Il ne semble pas être possible l'état actuel du code. Voici la source de Matchers :: Change, où vous pouvez le voir: http://github.com/dchelimsky/rspec/blob/f9ef5bff62c10d33414c9ab2f3ac87e1256e07b8/lib/spec/matchers/change.rb

Serait-il acceptable de faire correspondre une limite supérieure? Par exemple:

lambda { ...}.should change(unit, :price).by_at_most(12.15) 
+0

Oui, cela pourrait résoudre le problème si nous utilisons by_at_most et by_at_least ensemble. Pas une solution parfaite mais fonctionne. –

Questions connexes