From: Lunar Date: Sat, 1 Jun 2013 09:09:31 +0000 (+0200) Subject: Start implementing list-emails X-Git-Url: https://nos-oignons.net/gitweb/gestion-adh.git/commitdiff_plain/8536514115cf732eec24348862e835bde52acdf1 Start implementing list-emails --- diff --git a/bin/list-emails b/bin/list-emails new file mode 100755 index 0000000..5d3fb74 --- /dev/null +++ b/bin/list-emails @@ -0,0 +1,6 @@ +#!/usr/bin/ruby1.9.1 +#-*- coding: utf-8 -*- + +require 'rubygems' +require 'bundler' +Bundler.setup diff --git a/features/list-emails.feature b/features/list-emails.feature new file mode 100644 index 0000000..27c2a9e --- /dev/null +++ b/features/list-emails.feature @@ -0,0 +1,47 @@ +# language: fr + +Fonctionnalité: obtenir les emails des membres à jour de cotisations + En tant que membre du C.A. de Nos oignons, je dois pouvoir obtenir + les emails des membres à jour de cotisation, afin, par exemple + de pouvoir démarrer un vote. + + Scénario: Aucun membre enregistré + Soit une base de membres vide + Lorsque j'exécute list-emails + Alors la sortie doit-être vide + + Scénario: Un membre à jour de cotisation + Soit une base avec Pierre, à jour de cotisation + Lorsque j'exécute list-emails + Alors la sortie doit être: + """ + pierre@example.org + """ + + Scénario: Un ancien membre + Soit une base avec Pierre, qui n'a pas payé sa cotisation cette année + Lorsque j'exécute list-emails + Alors la sortie doit être vide + + Scénario: Plusieurs membres à jour + Soit une base avec Pierre, à jour de cotisation + Et avec Jane, à jour de cotisation + Et avec Fatima, à jour de cotisation + Lorsque j'exécute list-emails + Alors la sortie doit être: + """ + pierre@example.org + jane@example.org + fatima@example.org + """ + + Scénario: Des membres à jour et d'autres pas + Soit une base avec Pierre, qui n'a pas payé sa cotisation cette année + Et avec Jane, à jour de cotisation + Et avec Fatima, à jour de cotisation + Lorsque j'exécute list-emails + Alors la sortie doit être: + """ + jane@example.org + fatima@example.org + """ diff --git a/features/step_definitions/commands.rb b/features/step_definitions/commands.rb index d069730..ae6d798 100644 --- a/features/step_definitions/commands.rb +++ b/features/step_definitions/commands.rb @@ -1,3 +1,7 @@ +When /^j'exécute list\-emails$/ do + run_simple 'list-emails' +end + Then /^je ne dois pas avoir eu d'erreur$/ do assert_exit_status(0) end @@ -5,3 +9,7 @@ end Then /^je dois voir comme erreur "(.*?)"$/ do |expected| assert_failing_with(expected) end + +Then /^la sortie doit-être vide$/ do + expect(all_output).to be_empty +end diff --git a/features/step_definitions/subscriptions.rb b/features/step_definitions/subscriptions.rb index e8481f6..aa3365d 100644 --- a/features/step_definitions/subscriptions.rb +++ b/features/step_definitions/subscriptions.rb @@ -1,3 +1,7 @@ +Given /une base de membres vide$/ do + create_dir 'Membres' +end + When /^j'ajoute une fiche correcte pour une nouvelle adhésion$/ do @file = subscription_filename_for_id(new_id) write_file @file, render_subscription_file(EXTRA_SUBSCRIPTION)