adherent 0.3.5 → 0.3.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -3,7 +3,7 @@
3
3
  require 'rails_helper'
4
4
 
5
5
 
6
- RSpec.configure do |c|
6
+ RSpec.configure do |c|
7
7
  # c.filter = {wip:true}
8
8
  end
9
9
 
@@ -43,7 +43,7 @@ describe 'PAYMENTS', :type => :feature do
43
43
 
44
44
  it 'cliquer sur imputation conduit à la vue new_règlement' do
45
45
  click_link 'Imputation'
46
- expect(page.find('h3').text).to eq("Imputation du montant restant (15,00 €) payé par #{@member.to_s}")
46
+ expect(page.find('h3').text).to eq("Imputation du montant restant (5,00 €) payé par #{@member.to_s}")
47
47
  end
48
48
 
49
49
  end
@@ -15,7 +15,7 @@ describe 'REGLEMENT', :type => :feature do
15
15
 
16
16
 
17
17
  before(:each) do
18
- @member= adherent_members(:Dupont)
18
+ @member= adherent_members(:Dupont)
19
19
  end
20
20
 
21
21
  describe 'un membre avec une adhésion effectue un paiement du montant exact' do
@@ -25,7 +25,7 @@ describe 'REGLEMENT', :type => :feature do
25
25
  end
26
26
 
27
27
  it 'créer le payment crée un règlement' do
28
- expect {create_payment(50)}.to change {Adherent::Reglement.count}.by(1)
28
+ expect {create_payment(50)}.to change {Adherent::Reglement.count}.by(1)
29
29
  end
30
30
 
31
31
  it 'l adhesion du membre est réglée' do
@@ -46,7 +46,7 @@ describe 'REGLEMENT', :type => :feature do
46
46
  end
47
47
 
48
48
  it 'il reste un montant à imputer' do
49
- expect(@member.payments.last.non_impute).to eq(40)
49
+ expect(@member.payments.last.non_impute).to eq(66.66 - 26.66 + 15)
50
50
  end
51
51
 
52
52
  end
@@ -54,7 +54,7 @@ describe 'REGLEMENT', :type => :feature do
54
54
  describe 'le membre effectue un payment d un montant inférieur' do
55
55
 
56
56
  before(:each) do
57
- create_payment(16.66)
57
+ create_payment(1.66)
58
58
  end
59
59
 
60
60
  it 'l adhésion du membre est réglée' do
@@ -80,7 +80,7 @@ describe 'REGLEMENT', :type => :feature do
80
80
  # l'être pour les 30 restants sur les deux autres
81
81
  it 'on vérifie' do
82
82
  expect(@member.unpaid_amount).to eq(0)
83
- expect(@member.payments.last.non_impute).to eq(20)
83
+ expect(@member.payments.last.non_impute).to eq(20 + 15)
84
84
  end
85
85
 
86
86
  it 'la page new_reglement affiche un form' do
@@ -88,7 +88,7 @@ describe 'REGLEMENT', :type => :feature do
88
88
  end
89
89
 
90
90
  it 'le montant affiché est le montant restant' do
91
- expect(page.find('#reglement_amount').value).to eq('20,00 €')
91
+ expect(page.find('#reglement_amount').value).to eq('35,00 €')
92
92
  end
93
93
 
94
94
  it 'le select propose les deux adhesions' do
@@ -98,39 +98,27 @@ describe 'REGLEMENT', :type => :feature do
98
98
  describe 'on choisit une option et on valide' do
99
99
 
100
100
  before(:each) do
101
- select "#{adherent_members(:Fidele).to_s} - 24,00 €", :from=>'Adhésion'
101
+ select "#{adherent_members(:Fidele).to_s} - 19,00 €", :from=>'Adhésion'
102
102
  click_button 'Enregistrer'
103
103
  end
104
104
 
105
- # it 'on regarde' , focus:true do
106
- # visit adherent.new_payment_reglement_path(@pay)
107
- # expect(page).to have_content('Bonjour')
108
- # end
109
-
110
105
  it 'on revient à la page index des payements' do
111
106
  expect(page.find('h3').text).to eq("Historique des paiements reçus de #{@member.to_s}")
112
107
  end
113
108
 
114
- it 'il y a maintenant 2 reglements' do
109
+ it 'il y a maintenant 3 reglements' do
115
110
  expect(Adherent::Reglement.count).to eq(@nb_regs + 1)
116
111
  end
117
112
 
118
- it 'le premier appartenant à member et pour 26.66 €' do
119
- arf = Adherent::Reglement.first
120
- expect(arf.payment_id).to eq(@pay.id)
121
- expect(arf.adhesion.member).to eq(@member)
122
- expect(arf.amount).to eq(26.66)
123
- end
124
-
125
- it 'le deuxième règlement' do
113
+ it 'le dernier règlement' do
126
114
  arl = Adherent::Reglement.last
127
115
  expect(arl.payment_id).to eq(@pay.id)
128
116
  expect(arl.adhesion.member).to eq(adherent_members(:Fidele))
129
- expect(arl.amount).to eq(20)
117
+ expect(arl.amount).to eq(19)
130
118
  end
131
119
 
132
- it 'le membre2 ne doit plus que 19 €' do
133
- expect(adherent_members(:Fidele).unpaid_amount).to eq(30)
120
+ it 'le membre 2 ne doit plus que 26 €' do
121
+ expect(adherent_members(:Fidele).unpaid_amount).to eq(26)
134
122
  end
135
123
 
136
124
 
@@ -177,9 +177,10 @@ describe 'Adhesion', :type => :model do
177
177
  end
178
178
 
179
179
  it 'le montant imputé est celui du payment' do
180
+ du = @adh.due
180
181
  @adh.add_reglement(1, 10)
181
182
  expect(@adh).not_to be_is_paid
182
- expect(@adh.due).to eq(16.66)
183
+ expect(@adh.due).to eq(du -10)
183
184
  end
184
185
 
185
186
  it 'add_reglement renvoie un règlement' do
@@ -2,11 +2,6 @@
2
2
 
3
3
  require 'rails_helper'
4
4
 
5
- RSpec.configure do |c|
6
- # c.exclusion_filter = {js:true}
7
- # c.filter = {wip:true}
8
- end
9
-
10
5
  describe Adherent::Member, :type => :model do
11
6
  fixtures :all
12
7
 
@@ -116,8 +111,8 @@ describe Adherent::Member, :type => :model do
116
111
  expect(subject).to be_unpaid_adhesions
117
112
  end
118
113
 
119
- it 'pour un montant total de 39' do
120
- expect(subject.unpaid_amount).to eq(26.66)
114
+ it 'pour un montant total de 26,66 -15' do
115
+ expect(subject.unpaid_amount).to eq(11.66)
121
116
  end
122
117
 
123
118
  end
@@ -171,7 +166,7 @@ describe Adherent::Member, :type => :model do
171
166
  csv = Adherent::Member.to_csv(organisms(:asso))
172
167
  fidele = csv.split("\n").select {|l| 'Fidele'.in? l}.first
173
168
  expect(fidele).
174
- to eq "A003\tFidele\tChe\t\tbonjour@example.com\t01.02.03.04.05\t\t\t\t\t\t50,00\t#{(Date.today.years_since(2) -1)}"
169
+ to eq "A003\tFidele\tChe\t\tbonjour@example.com\t01.02.03.04.05\t\t\t\t\t\t45,00\t#{(Date.today.years_since(2) -1)}"
175
170
  end
176
171
 
177
172
  context 'avec deux adhésions' do
@@ -194,9 +189,9 @@ describe Adherent::Member, :type => :model do
194
189
  it 'le membre doit encore 14.26 ' do
195
190
  ms = Adherent::Member.query_members(organisms(:asso))
196
191
  m = ms.select {|a| a.number == subject.number}.first
197
- expect(m.t_reglements).to eq(8)
192
+ expect(m.t_reglements).to eq(13)
198
193
  expect(m.t_adhesions).to eq(50)
199
- expect(m.montant_du).to eq(42)
194
+ expect(m.montant_du).to eq(37)
200
195
  end
201
196
 
202
197
  it 'après un paiement de 10.50 €, il doit encore 31,50' do
@@ -205,7 +200,7 @@ describe Adherent::Member, :type => :model do
205
200
  @p.save
206
201
  ms = Adherent::Member.query_members(organisms(:asso))
207
202
  m = ms.select {|a| a.number == subject.number}.first
208
- expect(m.montant_du).to eq(31.50)
203
+ expect(m.montant_du).to eq(26.50)
209
204
  expect(m.a_jour?).to be false
210
205
  end
211
206
 
@@ -8,11 +8,11 @@ RSpec.configure do |c|
8
8
  end
9
9
 
10
10
  describe 'Payment', :type => :model do
11
- fixtures :all
11
+ fixtures :all
12
12
 
13
13
  describe 'validations' do
14
14
 
15
- before(:each) do
15
+ before(:each) do
16
16
  @pay = adherent_payments(:pay_1)
17
17
  end
18
18
 
@@ -36,8 +36,8 @@ describe 'Payment', :type => :model do
36
36
  end
37
37
 
38
38
  it 'le montant peut être négatif' do
39
- @pay.amount = -5
40
- expect(@pay).to be_valid
39
+ p = Adherent::Payment.new(date:Date.today, amount:-5, mode:'CB', member_id:1)
40
+ expect(p).to be_valid
41
41
  end
42
42
 
43
43
  it 'un payment a un mode qui ne peut être que CB, Chèque,...' do
@@ -58,8 +58,9 @@ describe 'Payment', :type => :model do
58
58
  end
59
59
 
60
60
  it 'sait calculer le montant restant à imputer si plus que suffisant' do
61
+ mdu = @member.unpaid_amount
61
62
  pay = @member.payments.create(:amount=>54, date:Date.today, mode:'CB')
62
- expect(pay.non_impute).to eq(4)
63
+ expect(pay.non_impute).to eq(54 - mdu)
63
64
  end
64
65
 
65
66
  it 'un paiement hors date ajoute une erreur' do
@@ -74,8 +75,7 @@ describe 'Payment', :type => :model do
74
75
 
75
76
  end
76
77
 
77
-
78
- describe 'Imputation on adh' do
78
+ describe 'Imputation on adh' do
79
79
 
80
80
  # soit un paiement et une adhésion, lorsqu'on impute le paiement
81
81
  # sur cette adhésion, il est créé un réglement pour le montant adapté,
@@ -85,26 +85,25 @@ describe 'Payment', :type => :model do
85
85
  @p = adherent_payments(:pay_1) # un paiement de 15 €
86
86
  @m = @p.member # le membre Dupont
87
87
  @a = @m.adhesions.first # avec une adhésion de 26.66
88
+ @mdu = @m.unpaid_amount
88
89
  end
89
90
 
90
- it 'avec un paiement du montant de l adhésion' do
91
- @p.amount = 26.66; @p.save
92
- @p.imputation_on_adh(@a.id)
93
- expect(@p.non_impute).to eq 0
91
+ it 'avec un paiement du montant ' do
92
+ p = @m.payments.create!(amount:@mdu, mode:'CB', date:Date.today)
93
+ expect(p.non_impute).to eq 0
94
94
  expect(@a).to be_is_paid
95
95
  end
96
96
 
97
97
  it 'avec un paiement inférieur à l adhésion' do
98
- @p.imputation_on_adh(@a.id)
99
- expect(@p.non_impute).to eq 0
98
+ p = @m.payments.create!(amount:@mdu -1, mode:'CB', date:Date.today)
99
+ expect(p.non_impute).to eq 0
100
100
  expect(@a).not_to be_is_paid
101
- expect(@a.due).to eq 11.66
101
+ expect(@a.due).to eq(1)
102
102
  end
103
103
 
104
104
  it 'avec un paiement supérieur à l adhésion' do
105
- @p.amount = 36.66; @p.save
106
- @p.imputation_on_adh(@a.id)
107
- expect(@p.non_impute).to eq 10
105
+ p = @m.payments.create!(amount:(@mdu + 3), mode:'CB', date:Date.today)
106
+ expect(p.non_impute).to eq 3
108
107
  expect(@a).to be_is_paid
109
108
  expect(@a.due).to eq 0
110
109
  end
@@ -8,7 +8,7 @@ describe 'Règlement', :type => :model do
8
8
  describe 'validations' do
9
9
 
10
10
  before(:each) do
11
- @reglement = Adherent::Reglement.new(amount:50)
11
+ @reglement = Adherent::Reglement.new(amount:50)
12
12
  @reglement.payment_id = 1
13
13
  @reglement.adhesion_id = 9
14
14
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: adherent
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.5
4
+ version: 0.3.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jean-Claude Lepage