예제 #1
0
        public void ContenuFichier()
        {
            JCACore monCore = new JCACore();
            XmlDocument monCas = new XmlDocument();

            System.IO.File.WriteAllText(Chemin + "ContenuFichier.txt", "spool {{SpoolFile}}" +
                Environment.NewLine + "select '{{Logon}}' from dual;" +
                Environment.NewLine);
            monCas.InnerXml = "<Assertion><Type>ContenuFichier</Type>" +
                "<Fichier>{{Chemin}}ContenuFichier.txt</Fichier>" +
                "<Contient>{{s}}pool</Contient>" +
                "<NeContientPas>{{s}}SQLexec.var.xml</NeContientPas>" +
                "</Assertion>";
            Assert.IsFalse(monCore.ExecuteCas(monCas));
            Assert.IsTrue(monCore.Message.Contains("La variable Chemin n'a pas eu de valeur fournie"),
                "Attendu:La variable Chemin n'a pas eu de valeur fournie. Réel :" + monCore.Message);

            // Cas qyu  marche
            monCore.Variables.MAJVariable("Chemin",Chemin );
            monCore.Variables.MAJVariable("s", "s");
            Assert.IsTrue(monCore.ExecuteCas(monCas), monCore.Message );
            Assert.IsTrue(monCore.Message.Contains("L'assertion est vraie"),
                "Attendu:L.assertion estbraie. Réel:" + monCore.Message);

            //TODO unit tester les autres validations
        }
예제 #2
0
        public void JCACoreLoadOK()
        {
            // test sans fichier de valeurs

            JCACore monJCACore = new JCACore();
            monJCACore.Load(JCACore.RepertoireAssembly() + "Ressources\\FichierDeCasOK.xml");

            Assert.AreEqual(3, monJCACore.NombreCas , "Le fichier chargé devrait contenir 2 cas de test, réel = " + monJCACore.NombreCas.ToString());

            Assert.IsTrue(monJCACore.FichierDeCas.Contains("Ressources\\FichierDeCasOK.xml"));
            Assert.IsNull(monJCACore.FichierValeur);
            Assert.IsNotNull(monJCACore.FichierJournal,"Le nom du fichier de journal par défaut aurait du être assigné");
            Assert.AreEqual(0,monJCACore.NoCasCourant);
            //Assert.IsTrue(monJCACore.Message.Contains ("réussi"),"Message erroné " + monJCACore.Message );

            // test pour les méthode de la liste desvariables

            Assert.AreEqual(0, monJCACore.Variables.NombreVariables() ,"Au début le nombre de variables devrait être 0");
            monJCACore.Variables.MAJVariable("Fichier", "Aucun");
            monJCACore.Variables.MAJVariable("Fichier", JCACore.RepertoireAssembly() + "Ressources\\FichierDeCasOK.xml");
            Assert.AreEqual(1, monJCACore.Variables.NombreVariables(),"Il devrait y avoir maintenant 1 variable");
            Assert.IsTrue(monJCACore.Variables.GetValeurVariable("Fichier").Contains("Ressources\\FichierDeCasOK.xml"),"La variable devrait contenir le chemin du fichier");
            Assert.IsNull(monJCACore.Variables.GetValeurVariable("CleAbsente"),"Les variables absentes devraient retourner null");

            // Test plus étendu avec fichier de valeur
            //Assert.Fail("Oas encore implémenté.");
        }
예제 #3
0
        public void ClientExcep()
        {
            // user pas spécifié
            JCACore monCore = new JCACore();
            XmlDocument monCas = new XmlDocument();

            monCas.InnerXml = "<Assertion><Type>ConnectionOracle</Type>" +
                "<Password>{{monPassword}}</Password>" +
                "<Serveur>{{monServeur}}</Serveur>" +
                "</Assertion>";
            Assert.IsFalse(monCore.ExecuteCas(monCas),
                "Cas User non fourni aurait du retourner False");
            Assert.IsTrue(monCore.Message.Contains(
                "Le XML ne contient pas la balise User"),
                "Cas User non fourni: Le message me contient pas le texte attendu " +
                monCore.Message  );

            // password non fourni
            monCas.InnerXml = "<Assertion><Type>ConnectionOracle</Type>" +
                "<User>{{monPassword}}</User>" +
                "<Serveur>{{monServeur}}</Serveur>" +
                "</Assertion>";
            Assert.IsFalse(monCore.ExecuteCas(monCas),
                "Le cas Password non fourni aurait du retourner false ");
            Assert.IsTrue(monCore.Message.Contains(
                "Le XML ne contient pas la balise Password"),
                "Cas Password non fourni : Le message me contient pas le texte attendu " +
                monCore.Message);

            // pas de variables fournies
            monCas.InnerXml = "<Assertion><Type>ConnectionOracle</Type>" +
                "<User>{{monPassword}}</User>" +
                "<Password>{{monPassword}}</Password>" +
                "<Serveur>{{monServeur}}</Serveur>" +
                "</Assertion>";
            Assert.IsFalse(monCore.ExecuteCas(monCas),
                "Cas variables non fournmies aurait du retourner false");
            Assert.IsTrue(monCore.MessageEchec.Contains(
                "La variable monPassword n'a pas eu de valeur fournie"),
                "Cas variables non fournieLe message me contient pas le texte attendu " +
                monCore.MessageEchec);

            // Action Ouvrir qui provoqie une exception oracle
            monCas.InnerXml = "<Assertion><Type>ConnectionOracle</Type>" +
                "<User>JCA</User>" +
                "<Password>JCA</Password>" +
                "<Action>Ouvrir</Action>" +
                "<Serveur>ServeurInexistant</Serveur>" +
                "</Assertion>";
            Assert.IsFalse(monCore.ExecuteCas(monCas),
                "Le cas action Ouvrir invalide  aurair du retourner false");
            Assert.IsTrue(monCore.MessageEchec.Contains(
                "Erreur technique lors de la connection au serveur Oracle ORA-"),
                "Cas action ouvrir invalide  : Le message me contient pas le texte attendu " +
                monCore.MessageEchec);
        }
예제 #4
0
        public void ExecuteProgramme()
        {
            JCACore monCore = new JCACore();
            XmlDocument monCas = new XmlDocument();
            String NomProgramme = "ExecutePrg.bat";

            System.IO.File.WriteAllText(Chemin + NomProgramme, "echo off" +
                Environment.NewLine + "Echo Le programme roule %1" + Environment.NewLine +
                "exit %1" + Environment.NewLine);

            monCas.InnerXml = "<Assertion><Type>ExecuteProgramme</Type>" +
                "<Programme>{{Chemin}}" + NomProgramme + "</Programme>" +
                "<Arguments>{{CodeDeRetour}}</Arguments>" +
                "</Assertion>";
            // Echec produit par une exception

            Assert.IsFalse(monCore.ExecuteCas(monCas));
            Assert.IsTrue(monCore.Message.Contains("La variable Chemin n'a pas eu de valeur fournie"),
                "Attendu:La variable Chemin n'a pas eu de valeur fournie. Réel :" + monCore.Message);
            Assert.IsTrue(monCore.MessageEchec.Contains("La variable Chemin n'a pas eu de valeur fournie"),
                monCore.MessageEchec);

            // um cas qui marche et retourne true
            monCore.Variables.MAJVariable("Chemin", Chemin);
            monCore.Variables.MAJVariable("CodeDeRetour", "0");
            Assert.IsTrue(monCore.ExecuteCas(monCas));
            Assert.IsTrue(monCore.Message.Contains("Résultat de l'exécution de "),
                "Attendu:Résultat de l'exécution de  Réel :" + monCore.Message);
            Assert.AreEqual("",monCore.MessageEchec);

            // un cas qui marche et retourne false
            monCore.Variables.MAJVariable("CodeDeRetour", "45");
            Assert.IsFalse (monCore.ExecuteCas(monCas));
            Assert.IsTrue(monCore.Message.Contains("Le programme roule 45"),
                "Attendu:Le programme roule 45. Réel :" + monCore.Message);
            Assert.IsTrue(monCore.MessageEchec.Contains(" a terminé avec le code de retour 45"),
                monCore.MessageEchec);

            // test retournant faux avec message d'échec spécifique

            monCas.InnerXml = "<Assertion><Type>ExecuteProgramme</Type>" +
                "<Programme>{{Chemin}}" + NomProgramme + "</Programme>" +
                "<Arguments>{{CodeDeRetour}}</Arguments>" +
                "<MessageEchec>Message spécifique 32</MessageEchec>" +
                "</Assertion>";

            monCore.Variables.MAJVariable("CodeDeRetour", "45");
            Assert.IsFalse(monCore.ExecuteCas(monCas));
            Assert.IsTrue(monCore.Message.Contains("Le programme roule 45"),
                "Attendu:Le programme roule 45. Réel :" + monCore.Message);
            Assert.IsTrue(monCore.MessageEchec.Contains("Message spécifique 32 (Code de retour : 45 )"),
                monCore.MessageEchec);
        }
예제 #5
0
        public void JCACoreVariables()
        {
            JCACore monJCACore = new JCACore();

            // test pour les méthode de la liste desvariables

            Assert.AreEqual(0, monJCACore.Variables.NombreVariables(),"Au début lenombre de variables devrait être 0");
            monJCACore.Variables.MAJVariable("Fichier", "Aucun");
            monJCACore.Variables.MAJVariable("Fichier", JCACore.RepertoireAssembly() + "Ressources\\FichierDeCasOK.xml");
            Assert.AreEqual(1, monJCACore.Variables.NombreVariables(),"Maintenant le nombre de vraiables devrait être 1");
            Assert.IsTrue(monJCACore.Variables.GetValeurVariable("Fichier").Contains("Ressources\\FichierDeCasOK.xml"));
            Assert.IsNull(monJCACore.Variables.GetValeurVariable("CleAbsente"));
        }
        public void SubstituerVariable()
        {
            JCACore monJCACore = new JCACore();
            // rendu ici
            monJCACore.Variables.MAJVariable("Test2","Ceci estklavaleursubstituée de test 2");
            monJCACore.Variables.MAJVariable("Test1", "Ceci estklavaleursubstituée de test 1");
            monJCACore.Variables.MAJVariable("Test", "Ceci estklavaleursubstituée");

            Assert.AreEqual("Aucune variable",JCAVariable.SubstituerVariables("Aucune variable",monJCACore.Variables.GetDictionnaireVariable()));
            Assert.AreEqual("Début:Ceci estklavaleursubstituée:Fin", JCAVariable.SubstituerVariables("Début:{{Test}}:Fin", monJCACore.Variables.GetDictionnaireVariable()));
            Assert.AreEqual("Ceci estklavaleursubstituée de test 2Début:Ceci estklavaleursubstituée:FinCeci estklavaleursubstituéeCeci estklavaleursubstituée de test 1", JCAVariable.SubstituerVariables("{{Test2}}Début:{{Test}}:Fin{{Test}}{{Test1}}", monJCACore.Variables.GetDictionnaireVariable()));

            try  {
                Assert.AreEqual("Exception attendue", JCAVariable.SubstituerVariables("Début:{{TestVarexistepas}}:Fin", monJCACore.Variables.Variables  ));
            } catch (JCAssertionException excep) {
                Assert.IsTrue(excep.Message.Contains("pas eu de valeur fournie"), "Le message d'exception devraitcontenir 'pas eu de valeur fournie'. Mais est " + excep.Message);
            }
        }
        public void ContenuFichierMultipleEchecLes2()
        {
            // Variables
            JCACore monCore = new JCACore();
            XmlDocument monCas = new XmlDocument();
            String FichierEssai = Chemin +
                "ContenuFichierMultipleEchecLes2.txt";

            // Création du fichier de données
            CreerFichierTest(FichierEssai);

            // Création du xml de cas

            monCas.InnerXml = "<Assertion><Type>ContenuFichier</Type>" +
                "<Fichier>{{FichierEssai}}</Fichier>" +
                "<Contient>introuvable</Contient>" +
                "<Contient>from</Contient>" +
                "<NeContientPas>savana</NeContientPas>" +
                "<NeContientPas>sel</NeContientPas>" +
                "<MessageEchec>Message d'échech spécifique &gt;</MessageEchec>" +
                "</Assertion>";

            // définit les variables
            monCore.Variables.MAJVariable("FichierEssai", FichierEssai);

            // exécution de l'essai
            Assert.IsFalse (monCore.ExecuteCas(monCas));
            Assert.IsTrue(monCore.Message.Contains("sel"),
                "Attendu:sel Réel :" + monCore.Message);
            Assert.IsTrue(monCore.Message.Contains("introuvable"),
                "Attendu:introuvable Réel :" + monCore.Message);
            Assert.IsTrue(monCore.Message.Contains("from"),
                "Attendu:from Réel :" + monCore.Message);

            Assert.IsTrue(monCore.MessageEchec.Contains("Le texte 'sel' a été trouvé et il me devrait pas être dans le fichier"),
                "Attendu:Le texte 'sel'...  Réel " + monCore.MessageEchec);

            Assert.IsTrue(monCore.MessageEchec.Contains("Le texte 'introuvable' n'a pas été trouvé et il devrait être dans le fichier"),
                "Attendu:Le texte 'introuvable'...  Réel " + monCore.MessageEchec);

            Assert.IsTrue(monCore.MessageEchec.Contains("Message d'échech spécifique >"),
                "Attendu: Message d'échech spécifique >  Réel " + monCore.MessageEchec);
        }
예제 #8
0
        public void JCACoreExecuterCasOK()
        {
            // test sans fichier de valeurs

            JCACore monJCACore = new JCACore();
            monJCACore.Load(JCACore.RepertoireAssembly() + "Ressources\\FichierDeCasOK.xml");

            Assert.AreEqual(3, monJCACore.NombreCas, "Le fichier chargé devrait contenir 2 cas de test, réel = " + monJCACore.NombreCas.ToString());

            Assert.IsNotNull(monJCACore.FichierJournal,"Un nom de fichier journalpar défaut aurait du être assigné");

            // Initialiser les méthode de la liste desvariables

            monJCACore.Variables.MAJVariable("Fichier", JCACore.RepertoireAssembly() + "Ressources\\FichierDeCasOK.xml");

            // Test plus étendu avec fichier de valeur

            Assert.IsTrue(monJCACore.ExecuteCas(monJCACore.getListeDeCas().Item(0)),"Test pour un fichier qui existe");

            Assert.IsFalse (monJCACore.ExecuteCas(monJCACore.getListeDeCas().Item(1)) ,"Test de ichier qui n'existe pas = donc retourne false");
            Assert.IsFalse(monJCACore.ExecuteCas(monJCACore.getListeDeCas().Item(2)), "une exception retourne false");
        }
        public void MAJVariablesPasOKTest()
        {
            JCACore monCore = new JCACore ();

            // Il manque la balise de clé
            XmlDocument monCas = new XmlDocument();

            monCas.InnerXml = "<Assertion><Type>MAJVariables</Type>" +
                "<Valeur>{{p}}te{{Autre}}st{{s}}</Valeur>" +
                "</Assertion>";

            Assert.IsFalse(monCore.ExecuteCas(monCas),
                "L'éxécution du cas aurait dû échouer : " +
                monCore.Message + Environment.NewLine +
                monCore.MessageEchec);

            Assert.IsTrue(monCore.MessageEchec.Contains(
                "Le XML ne contient pas la balise Cle"),
                "Mauvais contenu du message d'échec:" +
                monCore.MessageEchec  );

            // Il manque la balise de valeur

            monCas.InnerXml = "<Assertion><Type>MAJVariables</Type>" +
                "<Cle>test</Cle>" +
                "</Assertion>";

            Assert.IsFalse(monCore.ExecuteCas(monCas),
                "L'éxécution du cas aurait dû échouer : " +
                monCore.Message + Environment.NewLine +
                monCore.MessageEchec);

            Assert.IsTrue(monCore.MessageEchec.Contains(
                "Le XML ne contient pas la balise Valeur"),
                "Mauvais contenu du message d'échec:" +
                monCore.MessageEchec);

            // Le nom de fichier de variable cause une exception

            monCas.InnerXml = "<Assertion><Type>MAJVariables</Type>" +
                "<Cle>test</Cle>" +
                "<Valeur>test</Valeur>" +
                "</Assertion>";

            monCore.Variables.MAJVariable(
                JCAVariable.Constantes.JCA_FichierDeVariables,
                ":d:d:");
            Boolean ExceptionRencontree = false;

            try {
                monCore.ExecuteCas(monCas);
            } catch (Exception excep)
                {
                    if (excep != null)
                        ExceptionRencontree = true;
                }

            Assert.IsTrue(ExceptionRencontree);
        }
        public void MAJVariablesOKTest()
        {
            String NomFichier = Chemin +
                "MAJVariablesOKTest.xml";

            // Préparer les variables de test
            JCAVariable mesVariables = new JCAVariable();
            mesVariables.MAJVariable("s","Suffixe");
            mesVariables.MAJVariable("p", "Préfixe");
            mesVariables.MAJVariable("Autre", "Autres");
            mesVariables.MAJVariable("R", "Résultat");

            Assert.IsTrue(mesVariables.GetValeurVariable(
                JCAVariable.Constantes.JCA_FichierDeVariables)
                == null,
                "La variable JCA.FichierDeVariables ne devrait pas exister.");

            // Défnir le noued xml qui contient le test
            JCACore monCore = new JCACore();
            monCore.Variables = mesVariables;

            XmlDocument monCas = new XmlDocument ();

            monCas.InnerXml = "<Assertion><Type>MAJVariables</Type>" +
                "<Cle>{{R}}</Cle>" +
                "<Valeur>{{p}}te{{Autre}}st{{s}}</Valeur>" +
                "</Assertion>";

            // Un cas qui marche sans fichier

            Assert.IsTrue(monCore.ExecuteCas(monCas),
                "L'éxécution du cas a échoué : " +
                monCore.Message + Environment.NewLine +
                monCore.MessageEchec );
            Assert.IsTrue(monCore.Variables.GetValeurVariable("Résultat").Contains("PréfixeteAutresstSuffixe"),
                "Variable Résultat avec le mauvais contenu : " +
                 monCore.Variables.GetValeurVariable("Résultat"));

            // Un cas qui marche avec fichier
            monCore.Variables = mesVariables;
            monCore.Variables.MAJVariable(
               JCAVariable.Constantes.JCA_FichierDeVariables, NomFichier );
            if (System.IO.File.Exists(NomFichier))
                System.IO.File.Delete(NomFichier );
            Assert.IsFalse(System.IO.File.Exists(NomFichier),
                "Le fichier ne devrait pas exister");
            Assert.IsTrue(monCore.ExecuteCas(monCas),
                "L'éxécution du cas a échoué : " +
                monCore.Message + Environment.NewLine +
                monCore.MessageEchec);
            Assert.IsTrue(monCore.Variables.GetValeurVariable("Résultat").Contains("PréfixeteAutresstSuffixe"),
                "Variable Résultat avec le mauvais contenu : " +
                 monCore.Variables.GetValeurVariable("Résultat"));
            Assert.IsTrue(System.IO.File.Exists(NomFichier),
                "Le fichierdevrait exister : " + NomFichier );

            String ResultatFichier = System.IO.File.ReadAllText(NomFichier );
            Assert.IsTrue(ResultatFichier.Contains("PréfixeteAutresstSuffixe"),
                "Variable Résultat dans le fichier " +
                NomFichier  +" avec le mauvais contenu : " +
                 ResultatFichier);
        }
예제 #11
0
        // l'appel aux constructeurs complexes a été mis
        // ici pour pouvoir faire un try catch
        // Boolean Debug = true;
        public void InitJCAssertion()
        {
            if (! Init)
              {
            try {
                Utilitaire = new JCAUtilitaires();
                Init = true ;
                mesArguments = new JCAssertionCore.JCAVariable();
                maConsole = new JCAssertionCore.JCAConsole();
                monJCACore = new JCACore();

                }
            catch (Exception excep)
                {
                    ExceptionGlobale = excep ;
                    ExceptionRencontree = true;
                    CodeDeRetour = 99;
                    throw excep;
                }
              } // ! init
        }
        public void ContenuFichierMultipleSucces()
        {
            // Variables
            JCACore monCore = new JCACore();
            XmlDocument monCas = new XmlDocument();
            String FichierEssai = Chemin + "ContenuFichierMultipleSucces.txt";

            // Création du fichier de données
            CreerFichierTest(FichierEssai);

            // Création du xml de cas

            monCas.InnerXml = "<Assertion><Type>ContenuFichier</Type>" +
                "<Fichier>{{FichierEssai}}</Fichier>" +
                "<Contient>select</Contient>" +
                "<Contient>from</Contient>" +
                "<Contient>from</Contient>" +
                "<NeContientPas>savana</NeContientPas>" +
                "<NeContientPas>siamois</NeContientPas>" +
                "<NeContientPas>savana</NeContientPas>" +
                "</Assertion>";

            // définit les variables
            monCore.Variables.MAJVariable("FichierEssai", FichierEssai);

            // exécution de l'essai
            Assert.IsTrue(monCore.ExecuteCas(monCas));
            Assert.IsTrue(monCore.Message.Contains("savana"),
                "Attendu:savana Réel :" + monCore.Message);
            Assert.IsTrue(monCore.Message.Contains("siamois"),
                "Attendu:siamois Réel :" + monCore.Message);
            Assert.IsTrue(monCore.Message.Contains("from"),
                "Attendu:from Réel :" + monCore.Message);
            Assert.IsTrue(monCore.Message.Contains("select"),
                "Attendu:select Réel :" + monCore.Message);

            Assert.AreEqual("", monCore.MessageEchec);
        }
예제 #13
0
        public void SubstituerVariablesFichier()
        {
            JCACore monCore = new JCACore();
            XmlDocument monCas = new XmlDocument();

            monCas.InnerXml = "<Assertion><Type>SubstituerVariablesFichier</Type>" +
                "<FichierModele>{{Chemin}}SQLexec.txt</FichierModele>" +
                "<FichierSortie>{{Chemin}}SQLexec.txt.sql</FichierSortie>" +
                "<FichierVariables>{{Chemin}}SQLexec.var.xml</FichierVariables>" +
                "</Assertion>";
            Assert.IsFalse(monCore.ExecuteCas(monCas));
            Assert.IsTrue(monCore.Message.Contains("La variable Chemin n'a pas eu de valeur fournie"),
                "Attendu:La variable Chemin n'a pas eu de valeur fournie. Réel :" + monCore.Message  );

            // cas qui marche
            String Modele = Chemin + "SQLexec.txt";
            System.IO.File.WriteAllText(Modele, "spool {{SpoolFile}}" +
                Environment.NewLine + "select '{{Logon}}' from dual;" +
                Environment.NewLine  );

            // Créer le fichier de variables SQLexec.var.xml
            JCAVariable sqlvar = new JCAVariable();
            sqlvar.MAJVariable("Logon","jean-claude");
            sqlvar.MAJVariable("SpoolFile","z:log.txt");
            sqlvar.EcrireFichier(Chemin + "SQLexec.var.xml");

            monCore.Variables.MAJVariable("Chemin", Chemin );
            Assert.IsTrue(monCore.ExecuteCas(monCas));
            Assert.IsTrue(monCore.Message.Contains("La substitution des variables dans le fichier a réussie"), "Attendu:La substitution des variables dans le fichier a réussie");
            //todo verif fichier sql
            String Contenu = System.IO.File.ReadAllText(Chemin + "SQLexec.txt.sql");
            Assert.IsTrue(Contenu.Contains("spool z:log.txt"), "Attendu:spool z:log.txt");
            Assert.IsTrue(Contenu.Contains("select 'jean-claude' from dual;"), "Attendu:select 'jean-claude' from dual;");

            // TODO unitester les autres validations
        }
예제 #14
0
        public void FichierExiste()
        {
            // testc abec variablenon fournie
            JCACore monCore = new JCACore();
            XmlDocument monCas = new XmlDocument () ;

            monCas.InnerXml = "<Assertion>"+
                "<Type>FichierExiste</Type>"+
                "<Fichier>{{Fichier}}</Fichier>"+
                "</Assertion>";
            Assert.IsFalse(monCore.ExecuteCas(monCas ));
            Assert.IsTrue (monCore.Message.Contains("La variable Fichier n'a pas eu de valeur fournie"), "Attendu:La variable Fichiern'a pas eu de valeur fournie");
            // Le MessageEchec est généré par une exception
            Assert.IsTrue(monCore.MessageEchec.Contains("La variable Fichier n'a pas eu de valeur fournie"),
                monCore.MessageEchec  );

            // variable fournie mais fichier existe pas.
            // MessageEchec générique

            monCore.Variables.MAJVariable("Fichier",Chemin + "DivideByZeroException:existepas.pasla");
            Assert.IsFalse(monCore.ExecuteCas (monCas ) );
            Assert.IsTrue(monCore.Message.Contains("Le fichier n'existe pas"), "Attendu:Le fichier n'existe pas");
            Assert.IsTrue(monCore.MessageEchec.Contains(" n'existe pas et il devrait exister"),
                monCore.MessageEchec);

            // variable fournie mais fichier existe pas.
            // MessageEchec spécifique

            monCas.InnerXml = "<Assertion>"+
                "<Type>FichierExiste</Type>" +
                "<Fichier>{{Fichier}}</Fichier>" +
                "<MessageEchec>Message d'échec spécifique</MessageEchec></Assertion>";

            monCore.Variables.MAJVariable("Fichier", Chemin + "DivideByZeroException:existepas.pasla");
            Assert.IsFalse(monCore.ExecuteCas(monCas));
            Assert.IsTrue(monCore.Message.Contains("Le fichier n'existe pas"), "Attendu:Le fichier n'existe pas");
            Assert.IsTrue(monCore.MessageEchec.Contains("Message d'échec spécifique ("),
                monCore.MessageEchec);

            // Valeurs fournies,fichier existe
            monCore.Variables.MAJVariable("Fichier", Chemin +
                "FichierDeCasOK.xml");
            Assert.IsTrue(monCore.ExecuteCas(monCas));
            Assert.IsTrue(monCore.Message.Contains("Le fichier existe"),
                "Attendu:Le fichier existe");
            Assert.AreEqual("",monCore.MessageEchec);

            // Valeurs fournies,fichier existe mais est un répetoire

            monCore.Variables.MAJVariable("Fichier", Chemin);
            Assert.IsTrue(monCore.ExecuteCas(monCas),"Execute n.a pas retourné tru pour un répertoire");
            Assert.IsTrue(monCore.Message.Contains("Le fichier existe"),
                "Attendu:Le fichier existe");
            Assert.AreEqual("", monCore.MessageEchec,
                "Le message d'échec devrait être vide");
        }
예제 #15
0
        public void ClientOK()
        {
            // Préparer les variables de test
            JCAVariable mesVariables = new JCAVariable();
            mesVariables.MAJVariable("monUser","JCA");
            mesVariables.MAJVariable("monPassword", "JCA");
            mesVariables.MAJVariable("monServeur", "localhost");
            mesVariables.MAJVariable("O", "Ouvrir");
            mesVariables.MAJVariable("F", "Fermer");

            JCACore monCore = new JCACore();
            monCore.Variables = mesVariables;

            // un cas sans action mais avec les 3 param`tres
            XmlDocument monCas = new XmlDocument();

            monCas.InnerXml = "<Assertion><Type>ConnectionOracle</Type>" +
                "<User>{{monUser}}</User>" +
                "<Password>{{monPassword}}</Password>" +
                "<Serveur>{{monServeur}}</Serveur>" +
                "</Assertion>";

            Assert.IsFalse(monCore.ODPSQLConnectionOuverte(),
                "Avant de commencer la connection devrait être fermée");
            Assert.IsTrue(monCore.ExecuteCas(monCas),
                "L'éxécution du cas a échoué : " +
                monCore.Message + Environment.NewLine +
                monCore.MessageEchec);
            Assert.IsFalse(monCore.ODPSQLConnectionOuverte(),
                "Sans code d'action  la connection devrait être fermée");

            // test d'action Ouvrir
            Assert.IsFalse(monCore.ODPSQLConnectionOuverte(),
                "Avant de commencer la connection devrait être fermée");

            monCas.InnerXml = "<Assertion><Type>ConnectionOracle</Type>" +
                "<User>{{monUser}}</User>" +
                "<Password>{{monPassword}}</Password>" +
                "<Serveur>{{monServeur}}</Serveur>" +
                "<Action>{{O}}</Action>" +
                "</Assertion>";

            Assert.IsTrue(monCore.ExecuteCas(monCas),
                "L'éxécution du cas action ouvrir a échoué : " +
                monCore.Message + Environment.NewLine +
                monCore.MessageEchec);
            Assert.IsTrue(monCore.ODPSQLConnectionOuverte(),
                "L'action  aurait du ouvrir la connection");

            // Test d'action fermer
            Assert.IsTrue(monCore.ODPSQLConnectionOuverte(),
                "La connection devrait être ouverte");
            monCas.InnerXml = "<Assertion><Type>ConnectionOracle</Type>" +
                "<User>{{monUser}}</User>" +
                "<Password>{{monPassword}}</Password>" +
                "<Serveur>{{monServeur}}</Serveur>" +
                "<Action>{{F}}</Action>" +
                "</Assertion>";
            Assert.IsTrue(monCore.ExecuteCas(monCas),
                "L'éxécution du cas action fermer a échoué : " +
                monCore.Message + Environment.NewLine +
                monCore.MessageEchec);

            Assert.IsFalse(monCore.ODPSQLConnectionOuverte(),
                "L'action aurait du fermer la connection");
        }