Rev 1098 | Blame | Compare with Previous | Last modification | View Log | RSS feed
package org.tela_botanica.del.test.services;import static org.junit.Assert.assertTrue;import java.util.ArrayList;import java.util.Date;import java.util.Iterator;import java.util.List;import org.junit.Test;import org.tela_botanica.del.client.modeles.Contributeur;import org.tela_botanica.del.client.modeles.MoyenneVote;import org.tela_botanica.del.client.modeles.Observation;import org.tela_botanica.del.client.modeles.PropositionDetermination;import org.tela_botanica.del.client.modeles.VoteDetermination;import org.tela_botanica.del.client.services.CalculVoteDeterminationService;public class CalculVoteDeterminationServiceTest {@Testpublic void testCalculerVoteDetermination() {Observation obs = new Observation();VoteDetermination voteDetermination = new VoteDetermination();voteDetermination.setVote(1);voteDetermination.setDate(new Date());voteDetermination.setContributeur("benjamin");PropositionDetermination propositionDetermination = new PropositionDetermination(obs);propositionDetermination.setEspece("Iris lutescens subsp. lutescens");propositionDetermination.setContributeur(new Contributeur("1", "contrib", "test", "contrib@test.com"));propositionDetermination.setId("1");propositionDetermination.ajouterVoteDetermination(voteDetermination);obs.ajouterPropositionDetermination(propositionDetermination);MoyenneVote moyenneVote = CalculVoteDeterminationService.calculerVoteDetermination(propositionDetermination);assertTrue(moyenneVote.getScore() == 100);}@Testpublic void testCalculerVoteDeterminationPlusPopulaire() {Observation obs = new Observation();Contributeur cIdent1 = new Contributeur("1", "Peronnet", "Aurélien", "aurelien@tela-botanica.org");Contributeur cIdent2 = new Contributeur("2", "Liens", "Benjamin", "benjamin@tela-botanica.org");Contributeur cAnon1 = new Contributeur("a1a5f7b8s8c4v2b3g4g5t7t8t94", "", "", "");VoteDetermination voteDetermination1 = new VoteDetermination();voteDetermination1.setVote(1);voteDetermination1.setDate(new Date());voteDetermination1.setContributeur(cIdent1.getId());voteDetermination1.setAuteur(cIdent1);VoteDetermination voteDetermination2 = new VoteDetermination();voteDetermination2.setVote(1);voteDetermination2.setDate(new Date());voteDetermination2.setContributeur(cIdent2.getId());voteDetermination2.setAuteur(cIdent2);VoteDetermination voteDetermination3 = new VoteDetermination();voteDetermination3.setVote(0);voteDetermination3.setDate(new Date());voteDetermination3.setContributeur(cAnon1.getId());voteDetermination3.setAuteur(cAnon1);PropositionDetermination propositionDetermination = new PropositionDetermination(obs);propositionDetermination.setEspece("Iris lutescens subsp. lutescens");propositionDetermination.setContributeur(new Contributeur("1", "contrib", "test", "contrib@test.com"));propositionDetermination.setId("1");propositionDetermination.ajouterVoteDetermination(voteDetermination2);propositionDetermination.ajouterVoteDetermination(voteDetermination3);obs.ajouterPropositionDetermination(propositionDetermination);PropositionDetermination propositionDetermination2 = new PropositionDetermination(obs);propositionDetermination2.setEspece("Iris urticans");propositionDetermination2.setContributeur(new Contributeur("1", "contrib", "test", "contrib@test.com"));propositionDetermination2.setId("2");propositionDetermination2.ajouterVoteDetermination(voteDetermination1);propositionDetermination2.ajouterVoteDetermination(voteDetermination2);propositionDetermination2.ajouterVoteDetermination(voteDetermination3);obs.ajouterPropositionDetermination(propositionDetermination2);List<PropositionDetermination> listePropositions = new ArrayList<PropositionDetermination>();listePropositions.add(propositionDetermination2);listePropositions.add(propositionDetermination);List<MoyenneVote> listeMoyenneVote = CalculVoteDeterminationService.calculerVoteDeterminationPlusPopulaire(listePropositions);for (Iterator iterator = listeMoyenneVote.iterator(); iterator.hasNext();) {MoyenneVote moyenneVote = (MoyenneVote) iterator.next();System.out.println(moyenneVote.getScore());}// le premier vote est sensé être celui qui possède le plus gros scoreassertTrue(listeMoyenneVote.get(0).getIntituleAssocie().equals("Iris urticans"));}}