Et que je fais un `commit` du nouveau fichier
Alors je dois voir comme erreur "pas le bon format"
+ Scénario: Commit d'une fiche avec une date de cotisation incensée
+ Lorsque j'ajoute une fiche avec comme date de cotisation "2011-99-01"
+ Et que je fais un `commit` du nouveau fichier
+ Alors je dois voir comme erreur "pas le bon format"
+
+ Scénario: Commit d'une fiche avec une mauvaise date de cotisation
+ Lorsque j'ajoute une fiche avec comme date de cotisation "janvier 2013"
+ Et que je fais un `commit` du nouveau fichier
+ Alors je dois voir comme erreur "pas le bon format"
+
Scénario: Suppression du nom sur une fiche existante
Lorsque je supprime le nom sur une fiche existante
Et que je fais un `commit` du nouveau fichier
Et que je pousse la modification
Alors je dois voir comme erreur "pas le bon format"
+ Scénario: Commit d'une fiche avec une date de cotisation incensée
+ Lorsque j'ajoute une fiche avec comme date de cotisation "2011-99-01"
+ Et que je pousse la modification
+ Alors je dois voir comme erreur "pas le bon format"
+
+ Scénario: Commit d'une fiche avec une mauvaise date de cotisation
+ Lorsque j'ajoute une fiche avec comme date de cotisation "janvier 2013"
+ Et que je pousse la modification
+ Alors je dois voir comme erreur "pas le bon format"
+
Scénario: Suppression du nom sur une fiche existante
Lorsque je supprime le nom sur une fiche existante
Et que je pousse la modification
EOF
end
+When /^j'ajoute une fiche avec comme date de cotisation "([^"]*)"$/ do |date|
+ @file = subscription_filename_for_id(new_id)
+ write_file @file, <<-EOF.gsub(/^ /, '')
+ ---
+ name: J. Example
+ email: joe@example.org
+ address: |
+ 21 Jump Street
+ 42000 Synthé
+ membership_fee_paid_on: #{date}
+ ---
+ EOF
+end
+
When /^je supprime le nom sur une fiche existante$/ do
@file = subscription_filename_for_id(1)
run_simple "sed -e '/^name:/d' -i #{@file}"
['name', 'email'].each do |key|
return false unless data.include?(key)
end
+ if data.include?('membership_fee_paid_on')
+ return false unless data.is_a?(Date)
+ end
true
end