]> nos-oignons.net Git - gestion-adh.git/blob - features/step_definitions/commands.rb
Implement send-membership-reminders
[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 Then /^je ne dois pas avoir eu d'erreur$/ do
29   assert_exit_status(0)
30 end
31
32 Then /^je dois voir comme erreur "(.*?)"$/ do |expected|
33   assert_failing_with(expected)
34 end
35
36 Then /^la sortie doit être vide$/ do
37   assert_exact_output('', @stdout || all_stdout)
38 end
39
40 Then /^la sortie doit être:$/ do |expected|
41   # add an extra line feed for nice scenario
42   assert_exact_output(expected + "\n", @stdout || all_stdout)
43 end
44
45 Then /^la sortie doit être "([^"]*)"$/ do |expected|
46   assert_exact_output(expected, (@stdout || all_stdout).rstrip)
47 end