let test_complet ~m ~n ~c =
let ps s = print_string (s^"\n"in
        ps "\nTEST complet : création, écriture, lecture, conversion (pas résolution) ... en cours";
        let i = creer_instance_random ~m ~n ~c () in
        ps "\nTest création aléatoire d'un instance : check !";
        
        print_instance i;
        ps "Test affichage instance : check !";
        
        ecriture_instance ~i:i ~file:"test_complet.instance";
        ps "Test ecriture instance dans le fichier externe 'test_complet.instance' : check !";
        
        let i2 = lecture_instance ~file:"test_complet.instance" in
        if (i2 = i) then ps "Test lecture instance depuis le meme fichier externe : check !"
                 else ps "Test lecture instance depuis le meme fichier externe : fail ...";
        
        let i3 = instance_of_plateau (plateau_of_instance i) in
        if (i3 = i) then ps "Test double conversion plateau <-> instance (pas résolution) : check !"
                 else ps "Test double conversion plateau <-> instance (pas résolution) : fail ...";
        
        let p1 = plateau_of_instance i in
        ps "Test conversion instance -> plateau : check !";
        
        print_plateau p1;
        ps "Test affichage plateau : check !";
        
        ecriture_plateau ~p:p1 ~file:"test_complet.plateau";
        ps "Test ecriture plateau dans le fichier externe 'test_complet.instance' : check !";
        
        let p2 = lecture_plateau ~file:"test_complet.plateau" in
        if (p2 = p1) then ps "Test lecture plateau depuis le meme fichier externe : check !"
                 else ps "Test lecture plateau depuis le meme fichier externe : fail ...";

        ps "\n\nTEST réussi !"