X-Git-Url: https://nos-oignons.net/gitweb/gestion-adh.git/blobdiff_plain/febcaa4d9fbe691c63473c2129788c0dbbe5cce0..9d982cb5d7f9abe598c8df3eefabe10501056110:/features/step_definitions/commands.rb diff --git a/features/step_definitions/commands.rb b/features/step_definitions/commands.rb index 54bc747..221523a 100644 --- a/features/step_definitions/commands.rb +++ b/features/step_definitions/commands.rb @@ -1,7 +1,30 @@ +#-*- coding: utf-8 -*- + When /^j'exécute list\-emails$/ do run_simple 'list-emails' end +When /^j'exécute list-emails le (\d+)\-(\d+)\-(\d+)$/ do |year, month, day|$/ + Timecop.travel(Time.new(year, month, day)) do + stdout_io = StringIO.new + begin + $stdout = stdout_io + NosOignons.list_emails! + @stdout = stdout_io.string + ensure + $stdout = STDOUT + end + end +end + +When /^j'exécute update-ag-subscribers$/ do + run_simple 'update-ag-subscribers' +end + +When /^(?:que )?j'exécute send-membership-reminders$/ do + NosOignons.send_membership_reminders! +end + Then /^je ne dois pas avoir eu d'erreur$/ do assert_exit_status(0) end @@ -11,10 +34,14 @@ Then /^je dois voir comme erreur "(.*?)"$/ do |expected| end Then /^la sortie doit être vide$/ do - assert_exact_output('', all_stdout) + assert_exact_output('', @stdout || all_stdout) end Then /^la sortie doit être:$/ do |expected| # add an extra line feed for nice scenario - assert_exact_output(expected + "\n", all_stdout) + assert_exact_output(expected + "\n", @stdout || all_stdout) +end + +Then /^la sortie doit être "([^"]*)"$/ do |expected| + assert_exact_output(expected, (@stdout || all_stdout).rstrip) end