adherent 0.3.5 → 0.3.6
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/app/helpers/adherent/application_helper.rb +4 -1
- data/app/helpers/adherent/payments_helper.rb +21 -6
- data/app/models/adherent/payment.rb +3 -5
- data/lib/adherent/version.rb +2 -1
- data/spec/dummy/log/development.log +20 -0
- data/spec/dummy/log/test.log +95991 -0
- data/spec/features/adhesions_spec.rb +1 -1
- data/spec/features/payments_spec.rb +1 -1
- data/spec/features/reglements_spec.rb +12 -24
- data/spec/models/adherent/adhesion_spec.rb +2 -1
- data/spec/models/adherent/member_spec.rb +6 -11
- data/spec/models/adherent/payment_spec.rb +16 -17
- data/spec/models/adherent/reglement_spec.rb +1 -1
- metadata +1 -1
@@ -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 (
|
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(
|
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(
|
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('
|
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} -
|
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
|
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
|
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(
|
117
|
+
expect(arl.amount).to eq(19)
|
130
118
|
end
|
131
119
|
|
132
|
-
it 'le
|
133
|
-
expect(adherent_members(:Fidele).unpaid_amount).to eq(
|
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(
|
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
|
120
|
-
expect(subject.unpaid_amount).to eq(
|
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\
|
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(
|
192
|
+
expect(m.t_reglements).to eq(13)
|
198
193
|
expect(m.t_adhesions).to eq(50)
|
199
|
-
expect(m.montant_du).to eq(
|
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(
|
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
|
-
|
40
|
-
expect(
|
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(
|
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
|
91
|
-
|
92
|
-
|
93
|
-
expect(@p.non_impute).to eq 0
|
91
|
+
it 'avec un paiement du montant dù' 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
|
-
@
|
99
|
-
expect(
|
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
|
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
|
-
|
106
|
-
|
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
|