TP7 - Question 1 : Mauvaise Exception

Programmation Avancée

Modérateur : Douin

VincentRIFA
Messages : 15
Inscription : 01 nov. 2017 19:19

TP7 - Question 1 : Mauvaise Exception

Message par VincentRIFA » 08 déc. 2017 13:24

Bonjour,

Concernant la question 1, j'atteins le comportement voulu pour la calculette.
Mais j'échoue à la soumission JNEWS, car je remonte un "NullPointerException" à la place d'un "NoSuchElementException" lorsque la méthode n'est pas trouvée.
Est ce je peux quand même passer à la question suivante ?
Sinon, quelle méthode JAVA ou objet est censé me remonter une "NoSuchElementException" ?

Merci,

Douin
Messages : 294
Inscription : 18 mars 2009 15:46

Re: TP7 - Question 1 : Mauvaise Exception

Message par Douin » 08 déc. 2017 17:03

Bonjour, l'exception n'est pas mauvaise, elle est attendue en l'occurrence
une exception est levée si cette méthode est absente ou un mauvais usage de la fonction appelée

Quand :
Un seul paramètre est attendu

Code : Tout sélectionner

 public void test_unSeulParametreEstAttendu() throws Exception{
        question1.TableMethodesJavaLangMath table = question1.TableMethodesJavaLangMath.getInstance();
        assertNotNull(table); 
        assertFalse(" 1 parametre pour IEEEremainder ???", table.cetteMethodeAttendUnSeulParametre("IEEEremainder(double, double)"));
        assertTrue(" 1 parametre est attendu pour log10 ???", table.cetteMethodeAttendUnSeulParametre("log10(double)"));
        //    for(String i : table.listeDesMethodes()){System.out.print(i + " ");}
        try{
            assertTrue(" 1 parametre pour inconnu ???", table.cetteMethodeAttendUnSeulParametre("inconnu(double)"));
            fail(" cette exception, NoSuchElementException est attendue ???");
        }catch(Exception e){
            assertTrue(" NoSuchElementException est attendue ???", e instanceof NoSuchElementException);
        }
    }
et aussi lors de l'appel d'une méthode inconnue

Code : Tout sélectionner

  public void test_appelDeMethodeInconnue() throws Exception{
        try{
            question1.TableMethodesJavaLangMath table = question1.TableMethodesJavaLangMath.getInstance();
            assertNotNull(table);
            table.invoquer("inconnue(double)",0.0);
            fail(" invoquer(\"inconnu(double)\",0.0) ???, NoSuchElementException est attendue ???");
        }catch(Exception e){
            assertTrue(" NoSuchElementException est attendue ???", e instanceof NoSuchElementException);
        }  
    }
et ...

Bonne fin de tp

Répondre

Qui est en ligne ?

Utilisateurs parcourant ce forum : Douin et 1 invité