Skip to content

Commit

Permalink
♻️ Retourne "non applicable" si un regroupement de questions par scor…
Browse files Browse the repository at this point in the history
…es cléa n'a pas de score max dans l'export positionnement
  • Loading branch information
marouria authored and etienneCharignon committed Nov 28, 2024
1 parent 3b656a2 commit f9e7344
Show file tree
Hide file tree
Showing 2 changed files with 4 additions and 8 deletions.
4 changes: 2 additions & 2 deletions app/models/restitution/export_positionnement.rb
Original file line number Diff line number Diff line change
Expand Up @@ -55,7 +55,7 @@ def remplie_la_feuille

def remplis_reponses_par_code(ligne, code, evenements)
if code.present?
@sheet[ligne, 0] = "#{code} - score: #{pourcentage_reussite(evenements)}%"
@sheet[ligne, 0] = "#{code} - score: #{pourcentage_reussite(evenements)}"
ligne += 1
end
remplis_reponses(ligne, evenements)
Expand All @@ -64,7 +64,7 @@ def remplis_reponses_par_code(ligne, code, evenements)
def pourcentage_reussite(evenements)
scores = evenements.map { |e| [e.donnees['scoreMax'] || 0, e.donnees['score'] || 0] }
score_max, score = scores.transpose.map(&:sum)
score_max.zero? ? 0 : (score * 100 / score_max).round
score_max.zero? ? 'non applicable' : "#{(score * 100 / score_max).round}%"
end

def remplis_reponses(ligne, evenements)
Expand Down
8 changes: 2 additions & 6 deletions spec/models/restitution/export_positionnement_spec.rb
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,6 @@
partie: partie,
donnees: { question: 'LOdi1',
reponse: 'couverture',
reponseIntitule: nil,
score: 2,
scoreMax: 2,
intitule: 'De quoi s’agit-il ?',
Expand All @@ -45,11 +44,10 @@
partie: partie,
donnees: { intitule: intitule_question2,
question: 'LOdi2',
reponse: 'chatMadameCoupin',
reponseIntitule: 'Le chat de Mme Coupin' }
end

it 'verifie les détails de la première question' do
it 'verifie les détails de la première question question' do
ligne = worksheet.row(1)
expect(ligne[0]).to eq('LOdi1')
expect(ligne[1]).to eq('De quoi s’agit-il ?')
Expand All @@ -62,8 +60,6 @@
it 'verifie les détails de la deuxième question' do
ligne = worksheet.row(2)
expect(ligne[0]).to eq('LOdi2')
expect(ligne[3]).to be_nil
expect(ligne[4]).to be_nil
expect(ligne[1]).to eq(intitule_question2)
expect(ligne[2]).to eq('Le chat de Mme Coupin')
expect(ligne[3]).to be_nil
Expand Down Expand Up @@ -171,7 +167,7 @@

it 'verifie les détails du groupe cléa suivant' do
ligne = worksheet.row(4)
expect(ligne[0]).to eq('2.4.1 - score: 0%')
expect(ligne[0]).to eq('2.4.1 - score: non applicable')
ligne = worksheet.row(5)
expect(ligne[0]).to eq('2.4.1')
expect(ligne[1]).to eq('LOdi3')
Expand Down

0 comments on commit f9e7344

Please sign in to comment.