@SuppressWarnings("unchecked")
  @Before
  public void setup() {
    matchRepositoryImpl = new MatchRepositoryImpl();
    mockConvertisseur = mock(Convertisseur.class);
    mockXmlReaderWriter = mock(XMLReaderWriter.class);

    matchRepositoryImpl.setConvertisseur(mockConvertisseur);
    matchRepositoryImpl.setXmlReaderWriter(mockXmlReaderWriter);

    LISTE_MATCHS = preparerListe();
    when(mockXmlReaderWriter.lireFichierXML(anyString())).thenReturn(XML_QUELCONQUE);
    when(mockConvertisseur.XMLToListe(XML_QUELCONQUE)).thenReturn(LISTE_MATCHS);
  }
 @SuppressWarnings("unchecked")
 @Test
 public void quandInsereUnMatchAlorsBonXMLEstEcritDansFichier() {
   when(mockConvertisseur.listeToXML((List<Match>) anyObject())).thenReturn(XML_QUELCONQUE);
   matchRepositoryImpl.inserer(UN_MATCH);
   verify(mockXmlReaderWriter).ecrireDansFichierXML(XML_QUELCONQUE, FICHIER_MATCHS);
 }
 @SuppressWarnings("unchecked")
 @Test
 public void quandSupprimeUnBilletAlorsBonXMLEstEcritDansFichier() throws EntiteNonTrouvee {
   when(mockConvertisseur.listeToXML((List<Match>) anyObject())).thenReturn(XML_QUELCONQUE);
   matchRepositoryImpl.supprimerParIdentifiantUnique(UN_ID);
   verify(mockXmlReaderWriter).ecrireDansFichierXML(XML_QUELCONQUE, FICHIER_MATCHS);
 }
 @SuppressWarnings("unchecked")
 @Test
 public void quandInsereUnMatchAlorsMatchEstAjouterAuXMLViaConvertisseur() {
   matchRepositoryImpl.inserer(UN_MATCH);
   verify(mockConvertisseur).listeToXML((List<Match>) anyObject());
 }
 @Test(expected = EntiteNonTrouvee.class)
 public void quandSelectMatchParIDSiNExistePASAlorsObtientNULLMatch() throws EntiteNonTrouvee {
   matchRepositoryImpl.selectParIdentifiantUnique(UN_FAUX_ID);
 }
 @Test
 public void quandSelectMatchParIDSiExisteAlorsObtientMatch() throws EntiteNonTrouvee {
   Match resultat = matchRepositoryImpl.selectParIdentifiantUnique(UN_ID);
   assertEquals(UN_MATCH, resultat);
 }
 @Test
 public void quandSelectTousMatchsMAPAlorsConvertisseurAppellerAvecXMLResultant() {
   when(mockXmlReaderWriter.lireFichierXML(anyString())).thenReturn(XML_QUELCONQUE);
   matchRepositoryImpl.selectTousMap();
   verify(mockConvertisseur).XMLToListe(XML_QUELCONQUE);
 }
 @Test
 public void quandSelectTousMatchsMAPAlorsFichierEstLu() {
   matchRepositoryImpl.selectTousMap();
   verify(mockXmlReaderWriter).lireFichierXML(anyString());
 }
 @SuppressWarnings("unchecked")
 @Test
 public void quandSupprimeUnMatchAlorsListeSansCeMatchEstConvertieEnXML() throws EntiteNonTrouvee {
   matchRepositoryImpl.supprimerParIdentifiantUnique(UN_ID);
   verify(mockConvertisseur).listeToXML((List<Match>) anyObject());
 }