]> nos-oignons.net Git - gestion-adh.git/blobdiff - features/step_definitions/commands.rb
Fix small issue in the membership receipt header
[gestion-adh.git] / features / step_definitions / commands.rb
index 154c4e9d4ae13790898d6090dec9a5b56ce22191..d4d7ab569a12ac430be80d0d49869e0b38d6c9a4 100644 (file)
@@ -17,7 +17,7 @@
 # along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
 When /^j'exécute list\-emails$/ do
-  run_simple 'list-emails'
+  run_command_and_stop 'list-emails'
 end
 
 When /^j'exécute list-emails le (\d+)\-(\d+)\-(\d+)$/ do |year, month, day|$/
@@ -34,7 +34,7 @@ When /^j'exécute list-emails le (\d+)\-(\d+)\-(\d+)$/ do |year, month, day|$/
 end
 
 When /^j'exécute update-ag-subscribers$/ do
-  run_simple 'update-ag-subscribers'
+  NosOignons.update_ag_subscribers!
 end
 
 When /^(?:que )?j'exécute send-membership-reminders$/ do
@@ -51,27 +51,37 @@ When /^j'exécute send\-member\-emails\-to\-advisors$/ do
   NosOignons.send_member_emails_to_advisors!
 end
 
+When /^j'exécute `create\-membership\-fee\-receipt ([0-9]+) ([0-9,]+)` le ([0-9]{4})-([0-9]{2})-([0-9]{2})$/ do |member, amount, year, month, day|
+  Timecop.travel(Date.new(year.to_i, month.to_i, day.to_i)) do
+    NosOignons.create_membership_fee_receipt!(member, amount)
+  end
+end
+
 When /^j'exécute `(create\-membership\-fee\-receipt.*)`$/ do |cmd|
-  run_simple cmd, false
+  run_command_and_stop cmd, :fail_on_error => false
 end
 
 Then /^je ne dois pas avoir eu d'erreur$/ do
-  assert_exit_status(0)
+  expect(last_command_started).to have_exit_status(0)
 end
 
 Then /^je dois voir comme erreur "(.*?)"$/ do |expected|
-  assert_failing_with(expected)
+  expect(last_command_started).to have_output_on_stderr /#{Regexp.escape(expected)}/
 end
 
 Then /^la sortie doit être vide$/ do
-  assert_exact_output('', @stdout || all_stdout)
+  expect(last_command_started).to have_output_on_stdout('')
 end
 
 Then /^la sortie doit être:$/ do |expected|
   # add an extra line feed for nice scenario
-  assert_exact_output(expected + "\n", @stdout || all_stdout)
+  expect(last_command_started).to have_output_on_stdout(expected)
 end
 
 Then /^la sortie doit être "([^"]*)"$/ do |expected|
-  assert_exact_output(expected, (@stdout || all_stdout).rstrip)
+  begin
+    expect(last_command_started).to have_output_on_stdout(expected)
+  rescue Aruba::NoCommandHasBeenStartedError
+    expect(@stdout.rstrip).to eq(expected)
+  end
 end