]> nos-oignons.net Git - gestion-adh.git/blob - features/step_definitions/commands.rb
Implement send-member-emails-to-advisors
[gestion-adh.git] / features / step_definitions / commands.rb
1 #-*- coding: utf-8 -*-
2
3 When /^j'exécute list\-emails$/ do
4   run_simple 'list-emails'
5 end
6
7 When /^j'exécute list-emails le (\d+)\-(\d+)\-(\d+)$/ do |year, month, day|$/
8   Timecop.travel(Time.new(year, month, day)) do
9     stdout_io = StringIO.new
10     begin
11       $stdout = stdout_io
12       NosOignons.list_emails!
13       @stdout = stdout_io.string
14     ensure
15       $stdout = STDOUT
16     end
17   end
18 end
19
20 When /^j'exécute update-ag-subscribers$/ do
21   run_simple 'update-ag-subscribers'
22 end
23
24 When /^(?:que )?j'exécute send-membership-reminders$/ do
25   NosOignons.send_membership_reminders!
26 end
27
28 When /^j'exécute send\-member\-emails\-to\-advisors$/ do
29   NosOignons.send_member_emails_to_advisors!
30 end
31
32 Then /^je ne dois pas avoir eu d'erreur$/ do
33   assert_exit_status(0)
34 end
35
36 Then /^je dois voir comme erreur "(.*?)"$/ do |expected|
37   assert_failing_with(expected)
38 end
39
40 Then /^la sortie doit être vide$/ do
41   assert_exact_output('', @stdout || all_stdout)
42 end
43
44 Then /^la sortie doit être:$/ do |expected|
45   # add an extra line feed for nice scenario
46   assert_exact_output(expected + "\n", @stdout || all_stdout)
47 end
48
49 Then /^la sortie doit être "([^"]*)"$/ do |expected|
50   assert_exact_output(expected, (@stdout || all_stdout).rstrip)
51 end