]> nos-oignons.net Git - gestion-adh.git/commitdiff
Start implementing list-emails
authorLunar <lunar@anargeek.net>
Sat, 1 Jun 2013 09:09:31 +0000 (11:09 +0200)
committerLunar <lunar@anargeek.net>
Sat, 1 Jun 2013 09:10:21 +0000 (11:10 +0200)
bin/list-emails [new file with mode: 0755]
features/list-emails.feature [new file with mode: 0644]
features/step_definitions/commands.rb
features/step_definitions/subscriptions.rb

diff --git a/bin/list-emails b/bin/list-emails
new file mode 100755 (executable)
index 0000000..5d3fb74
--- /dev/null
@@ -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 (file)
index 0000000..27c2a9e
--- /dev/null
@@ -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
+      """
index d0697302d1cff4cdb249979b08e9b352fd46302e..ae6d798a4369ce2d015ba5c23385d186b120a6dd 100644 (file)
@@ -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
 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 /^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
index e8481f6ede6300bcfc2afca024d924f82d48f908..aa3365de3c46b88a5d34a94239afc02278c99a7e 100644 (file)
@@ -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)
 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)