end
def create_new_member(name, joined_on, paid_on)
- data = { 'name' => name,
- 'address' => "At #{name}",
- 'email' => "#{name.downcase}@example.org",
- 'joined_on' => joined_on,
- 'membership_fee_paid_on' => paid_on
+ @last_member = { 'name' => name,
+ 'address' => "At #{name}",
+ 'email' => "#{name.downcase}@example.org",
+ 'joined_on' => joined_on,
+ 'membership_fee_paid_on' => paid_on
}
init_db unless @member_db_path
file = member_filename_for_id(new_id)
- write_file file, render_member_file(data)
+ write_file file, render_member_file(@last_member)
end
Given /une base de membres vide$/ do
create_new_member(name, joined_on, paid_on)
end
+Given /^(?:une base )?avec (\w+) qui doit renouveller sa cotisation d'ici (\d+) jours$/ do |name, days_before_anniversary|
+ paid_on = Time.now.to_date - days_before_anniversary.to_i
+ joined_on = paid_on
+ create_new_member(name, joined_on, paid_on)
+end
+
Given /^une nouvelle adhésion de (\w+)$/ do |name|
joined_on = Time.now.strftime('%Y-%m-%d')
create_new_member(name, joined_on, joined_on)
end
+Given /^elle avait déjà reçu des appels l'année précédente$/ do
+ Timecop.travel(Time.now.to_date - 375) do
+ NosOignons::ReminderDb.instance.record(OpenStruct.new(@last_member))
+ end
+end
+
When /^j'ajoute une fiche correcte pour une nouvelle adhésion$/ do
@file = member_filename_for_id(new_id)
write_file @file, render_member_file(EXTRA_MEMBER)