public void TPGED_DownloadAFacturePdf_TestTrue() { try { #region Arrange: Init instance GEDJsonClassRequestResponse gedUploadAnswerAccess = new GEDJsonClassRequestResponse(); GEDJsonClassRequestResponse gedDownloadAnswer = new GEDJsonClassRequestResponse(); bool passed = false; var gedAccess = new GED.Access.Ged( ConstantsTPGed.GedUserLogin, ConstantsTPGed.GedUserPasswordWEB, ConstantsTPGed.GedUrlToTestWEB ); var fileUri = ResourceFileHelper.GetResourceFilePath(ConstantsTPGed.GEDFacturePdf_ResourceFileName); var barCode = Guid.NewGuid().ToString(); #endregion #region Act: Uploader le fichier try { //Pousser la facture gedUploadAnswerAccess = gedAccess.UploadFile( barCode, fileUri, GedService.DocTypesEnum.FAC); //Récupérer la facture gedDownloadAnswer = gedAccess.DownloadFile( barCode, GedService.DocTypesEnum.FAC); //GED.Access.Utils.Files.DisplayTheFile(gedDownloadAnswer.); passed = true; } #region Gestion exception liées au credentials //Mauvais credentials (attention après 2 erreurs le user est locké) catch (GEDInvalidCredentialsException invalidCredentialsException) { passed = false; } //User locké catch (GEDUserLockedTooMuchFailingAttempsToConnectException userLockedTooMuchFailingAttempsToConnectException) { passed = false; } //Erreur de connexion inconnue catch (GEDConnectionUnknownException connectionUnknownException) { passed = false; } #endregion Gestion exception liées au credentials #region Gestion exception liées à l'upload //Erreur gérée lors de l'upload catch (GEDUploadFileException uploadFileException) { passed = false; } //Erreur inattendue lors de l'upload catch (GEDUploadFileUnknownException uploadFileUnknownException) { passed = false; } //Erreur Dll GED inconnue catch (GEDGlobalUnknownException gEDGlobalUnknownException) { passed = false; } #endregion Gestion exception liées à l'upload #endregion Act: Uploader le fichier #region Asserts //Pas d'exceptions levées Assert.True(passed); //On a bien des bytes pour le fichier Assert.True(gedDownloadAnswer != null); //Pas d'erreur retournée Assert.True(string.IsNullOrEmpty(gedDownloadAnswer.error)); //Nom de fichiers non vide Assert.True(!string.IsNullOrEmpty(gedDownloadAnswer.name)); #endregion #region Clear #endregion } catch (Exception ex) { Assert.True(false, ex.ToString()); } }
public void TPGED_ConcatenateFacuresAndConcatenateAnnexes_TestTrue() { try { #region Arrange: Init instance //Upload GEDJsonClassRequestResponse gedAnswerUploadFact1 = new GEDJsonClassRequestResponse(); GEDJsonClassRequestResponse gedAnswerUploadFact2 = new GEDJsonClassRequestResponse(); GEDJsonClassRequestResponse gedAnswerUploadAnnex1 = new GEDJsonClassRequestResponse(); GEDJsonClassRequestResponse gedAnswerUploadAnnex2 = new GEDJsonClassRequestResponse(); //Download GEDJsonClassRequestResponse gedDownloadAnswerFacture1 = new GEDJsonClassRequestResponse(); GEDJsonClassRequestResponse gedDownloadAnswerFacture2V10 = new GEDJsonClassRequestResponse(); GEDJsonClassRequestResponse gedDownloadAnswerFacture2V00 = new GEDJsonClassRequestResponse(); GEDJsonClassRequestResponse gedDownloadAnswerAnnexeConcatenee = new GEDJsonClassRequestResponse(); GEDJsonClassRequestResponse gedDownloadAnswerAnnexeOriginalev00 = new GEDJsonClassRequestResponse(); bool passed = true; var gedAccess = new Ged( ConstantsTPGed.GedUserLogin, ConstantsTPGed.GedUserPasswordWEB, ConstantsTPGed.GedUrlToTestWEB ); var barCode = Guid.NewGuid().ToString(); //Elements mesures upload int sizeGedAnswerUploadFact = ConstantsTPGed.MinSize; int sizeGedAnswerUploadAnnex1 = ConstantsTPGed.MinSize; int sizeGedAnswerUploadAnnex2 = ConstantsTPGed.MinSize; //Elements mesures download int sizeGedDownloadAnswerFacture1 = ConstantsTPGed.MinSize; int sizeGedDownloadAnswerFacture2 = ConstantsTPGed.MinSize; int sizeGedDownloadAnswerAnnexeConcatenee = ConstantsTPGed.MinSize; int sizegedDownloadAnswerAnnexeOriginalev00 = ConstantsTPGed.MinSize; int sizegedDownloadAnswerFacture2v10 = ConstantsTPGed.MinSize; int sizegedDownloadAnswerFacture2v00 = ConstantsTPGed.MinSize; #endregion #region Act: Uploader le fichier try { //Pousser la facture gedAnswerUploadFact1 = gedAccess.UploadFile( barCode, ResourceFileHelper.GetResourceFilePath(ConstantsTPGed.GEDFacturePdf_ResourceFileName), GedService.DocTypesEnum.FAC); sizeGedAnswerUploadFact = gedAnswerUploadFact1.sizeExpected; //Upload the associated annex 1 gedAnswerUploadAnnex1 = gedAccess.UploadFile( barCode, ResourceFileHelper.GetResourceFilePath(ConstantsTPGed.GEDFacturePdfAnnexe1_ResourceFileName), GedService.DocTypesEnum.AFAC); sizeGedAnswerUploadAnnex1 = gedAnswerUploadAnnex1.sizeExpected; //Upload the associated annex 2 gedAnswerUploadAnnex2 = gedAccess.UploadFile( barCode, ResourceFileHelper.GetResourceFilePath(ConstantsTPGed.GEDFacturePdfAnnexe2_ResourceFileName), GedService.DocTypesEnum.AFAC); sizeGedAnswerUploadAnnex2 = gedAnswerUploadAnnex2.sizeExpected; //Récupérer la facture gedDownloadAnswerFacture1 = gedAccess.DownloadFile( barCode, GedService.DocTypesEnum.FAC); sizeGedDownloadAnswerFacture1 = gedDownloadAnswerFacture1.file.Length; if (gedAccess.SaveDownloadedFile(gedDownloadAnswerFacture1).StatusFileCopiedLocally) { Console.WriteLine(ConstantsTPGed.ConsolePassed); } else { passed = false; Console.WriteLine(ConstantsTPGed.ConsoleNotPassed); } //Récupérer l'annexe concatenee, elle doit être plus lourde que la première fois. gedDownloadAnswerAnnexeConcatenee = gedAccess.DownloadFile( barCode, GedService.DocTypesEnum.AFAC); sizeGedDownloadAnswerAnnexeConcatenee = gedDownloadAnswerAnnexeConcatenee.file.Length; //souver localement la facture originale if (gedAccess.SaveDownloadedFile(gedDownloadAnswerAnnexeConcatenee).StatusFileCopiedLocally) { Console.WriteLine(ConstantsTPGed.ConsolePassed); } else { passed = false; Console.WriteLine(ConstantsTPGed.ConsoleNotPassed); } //Récupérer la première annexe v0.0 gedDownloadAnswerAnnexeOriginalev00 = gedAccess.DownloadFile( barCode, GedService.DocTypesEnum.AFAC, 0, 0); sizegedDownloadAnswerAnnexeOriginalev00 = gedDownloadAnswerAnnexeOriginalev00.file.Length; //L'annexe originale if (gedAccess.SaveDownloadedFile(gedDownloadAnswerAnnexeOriginalev00).StatusFileCopiedLocally) { Console.WriteLine(ConstantsTPGed.ConsolePassed); } else { passed = false; Console.WriteLine(ConstantsTPGed.ConsoleNotPassed); } //Tester le versionning des Factures. //On ajoute une nouvelle facture avec le même code barre gedAnswerUploadFact2 = gedAccess.UploadFile( barCode, ResourceFileHelper.GetResourceFilePath(ConstantsTPGed.GEDFacturePdf2_ResourceFileName), GedService.DocTypesEnum.FAC); sizeGedDownloadAnswerFacture2 = gedAnswerUploadFact2.sizeExpected; /// /// PAS ENCORE GERE PAR GED : version des factures /// //Récupérer la dernière version facture 1.0 //gedDownloadAnswerFacture2V10 = // gedAccess.DownloadFile( // barCode, // GedService.DocTypesEnum.FAC); //sizegedDownloadAnswerFacture2v10 = gedDownloadAnswerFacture2V10.file.Length; //if (gedAccess.SaveDownloadedFile(gedDownloadAnswerFacture2V10).StatusFileCopiedLocally) //{ // Console.WriteLine(ConstantsTPGed.ConsolePassed); //} //else //{ // passed = false; // Console.WriteLine(ConstantsTPGed.ConsoleNotPassed); //} /// /// PAS ENCORE GERE PAR GED : version des annexes /// //Récupérer la première version 0.0 gedDownloadAnswerFacture2V00 = gedAccess.DownloadFile( barCode, GedService.DocTypesEnum.FAC, 0, 0); //sizegedDownloadAnswerFacture2v00 = gedDownloadAnswerFacture2V00.file.Length if (gedAccess.SaveDownloadedFile(gedDownloadAnswerFacture2V00).StatusFileCopiedLocally) { Console.WriteLine(ConstantsTPGed.ConsolePassed); } else { passed = false; Console.WriteLine(ConstantsTPGed.ConsoleNotPassed); } } #region Gestion exception liées au credentials //Mauvais credentials (attention après 2 erreurs le user est locké) catch (GEDInvalidCredentialsException invalidCredentialsException) { passed = false; } //User locké catch (GEDUserLockedTooMuchFailingAttempsToConnectException userLockedTooMuchFailingAttempsToConnectException) { passed = false; } //Erreur de connexion inconnue catch (GEDConnectionUnknownException connectionUnknownException) { passed = false; } #endregion Gestion exception liées au credentials #region Gestion exception liées à l'upload //Erreur gérée lors de l'upload catch (GEDUploadFileException uploadFileException) { passed = false; } //Erreur inattendue lors de l'upload catch (GEDUploadFileUnknownException uploadFileUnknownException) { passed = false; } //Erreur Dll GED inconnue catch (GEDGlobalUnknownException gEDGlobalUnknownException) { passed = false; } #endregion Gestion exception liées à l'upload #endregion Act: Uploader le fichier #region Asserts //Pas d'exceptions levées Assert.True(passed); /// /// Facture /// //On a bien des bytes Assert.True(sizeGedAnswerUploadFact > ConstantsTPGed.MinSize); //Pas d'erreur retournée Assert.True(string.IsNullOrEmpty(gedDownloadAnswerFacture1.error)); //Nom de fichiers non vide Assert.True(!string.IsNullOrEmpty(gedDownloadAnswerFacture1.name)); //La taille de la facture uploadé doit être la même que le downloadé Assert.True(sizeGedDownloadAnswerFacture1.Equals(sizeGedAnswerUploadFact)); /// /// Annexe 1 /// //On a bien des bytes Assert.True(sizeGedAnswerUploadAnnex1 > ConstantsTPGed.MinSize); //Pas d'erreur retournée Assert.True(string.IsNullOrEmpty(gedAnswerUploadAnnex1.error)); //Nom de fichiers non vide Assert.True(!string.IsNullOrEmpty(gedAnswerUploadAnnex1.name)); /// /// Annexe 2 /// //On a bien des bytes Assert.True(sizeGedAnswerUploadAnnex2 > ConstantsTPGed.MinSize); //Pas d'erreur retournée Assert.True(string.IsNullOrEmpty(gedAnswerUploadAnnex2.error)); //Nom de fichiers non vide Assert.True(!string.IsNullOrEmpty(gedAnswerUploadAnnex2.name)); /// /// Annexe 1 et 2 /// //La concatenation des 2 doit être supérieure ou égale à chacune des 2 prises séparément Assert.True(sizeGedDownloadAnswerAnnexeConcatenee >= sizeGedAnswerUploadAnnex1); Assert.True(sizeGedDownloadAnswerAnnexeConcatenee >= sizeGedAnswerUploadAnnex2); /// /// PAS ENCORE GERE PAR GED : version des annexes /// /// Récup de l'annexe originale v0.0 /// //L'annexe 1 récupée (v0.0) doit avoir la taille de l'annexe 1 originale //Gestion version annexes: PAS ENCORE GERE PAR GED -> mis en commentaire //Assert.True(sizegedDownloadAnswerAnnexeOriginalev00.Equals(sizeGedAnswerUploadAnnex1)); /// /// PAS ENCORE GERE PAR GED: version des factures /// //La facture 1 récupée (v0.0) doit avoir la taille de la facture 1 originale //Assert.True(sizegedDownloadAnswerFacture2v00.Equals(sizeGedDownloadAnswerFacture1)); #endregion #region Clear #endregion } catch (Exception ex) { Assert.True(false, ex.ToString()); } }
public void TPGED_UploadOnePdfFactureAnnex_TestTrue() { try { #region Arrange: Init instance GEDJsonClassRequestResponse gedUploadAnswerSecondAccess = new GEDJsonClassRequestResponse(); bool passed = false; var gedAccess = new Ged( ConstantsTPGed.GedUserLogin, ConstantsTPGed.GedUserPassword, ConstantsTPGed.GedUrlToTestWEB ); var fileUri = ResourceFileHelper.GetResourceFilePath(ConstantsTPGed.GEDFacturePdf_ResourceFileName); var barCode = Guid.NewGuid().ToString(); #endregion #region Act: Uploader le fichier try { //Upload a file once gedAccess.UploadFile( barCode, fileUri, GedService.DocTypesEnum.FAC); //Upload the associated annex gedUploadAnswerSecondAccess = gedAccess.UploadFile( barCode, fileUri,///!!! un autre file? GedService.DocTypesEnum.AFAC); passed = true; } #region Gestion exception liées au credentials //Mauvais credentials (attention après 2 erreurs le user est locké) catch (GEDInvalidCredentialsException invalidCredentialsException) { passed = false; } //User locké catch (GEDUserLockedTooMuchFailingAttempsToConnectException userLockedTooMuchFailingAttempsToConnectException) { passed = false; } //Erreur de connexion inconnue catch (GEDConnectionUnknownException connectionUnknownException) { passed = false; } #endregion Gestion exception liées au credentials #region Gestion exception liées à l'upload //Erreur gérée lors de l'upload catch (GEDUploadFileException uploadFileException) { passed = false; } //Erreur inattendue lors de l'upload catch (GEDUploadFileUnknownException uploadFileUnknownException) { passed = false; } //Erreur Dll GED inconnue catch (GEDGlobalUnknownException gEDGlobalUnknownException) { passed = false; } #endregion Gestion exception liées à l'upload #endregion Act: Uploader le fichier #region Asserts //Pas d'exceptions levées Assert.True(passed); //test du barcode Assert.Equal(barCode, gedUploadAnswerSecondAccess.barCode); //Le type est bien gardé Assert.Equal(GedService.DocTypesEnum.AFAC.ToString(), gedUploadAnswerSecondAccess.docType); //Pas d'erreur retournée Assert.True(string.IsNullOrEmpty(gedUploadAnswerSecondAccess.error)); //Nom de fichiers non vide Assert.True(!string.IsNullOrEmpty(gedUploadAnswerSecondAccess.name)); //Url GET de download non vide Assert.True(!string.IsNullOrEmpty(gedUploadAnswerSecondAccess.url)); //Url GET de download doit contenir la string "annexe=true" Assert.True(gedUploadAnswerSecondAccess.url.Contains( ConstantsTPGed.ServiceDonloadUrlReceivedForAnnexMustContain)); #endregion #region Clear #endregion } catch (Exception ex) { Assert.True(false, ex.ToString()); } }
public void TPGED_UploadANewPdfFactureThatExistsWithWrongExtensionTxt_TestTrue() { try { #region Arrange: Init instance bool passed = true; var gedAccess = new Ged( ConstantsTPGed.GedUserLogin, ConstantsTPGed.GedUserPassword, ConstantsTPGed.GedUrlToTestWEB ); //Wrong extension not pdf var fileUri = ResourceFileHelper.GetResourceFilePath(ConstantsTPGed.GEDFacturePdfFileExistsWithWrongExtensionTxt_ResourceFileName); var barCode = Guid.NewGuid().ToString(); #endregion #region Act: Uploader le fichier try { //Upload a file gedAccess.UploadFile( barCode, fileUri, GedService.DocTypesEnum.FAC); } #region Gestion exception liées au credentials //Mauvais credentials (attention après 2 erreurs le user est locké) catch (GEDInvalidCredentialsException invalidCredentialsException) { passed = false; } //User locké catch (GEDUserLockedTooMuchFailingAttempsToConnectException userLockedTooMuchFailingAttempsToConnectException) { passed = false; } //Erreur de connexion inconnue catch (GEDConnectionUnknownException connectionUnknownException) { passed = false; } #endregion Gestion exception liées au credentials #region Gestion exception liées à l'upload //Erreur gérée lors de l'upload catch (GEDUploadFileException uploadFileException) { passed = true; } //Erreur inattendue lors de l'upload catch (GEDUploadFileUnknownException uploadFileUnknownException) { passed = false; } //Erreur Dll GED inconnue catch (GEDGlobalUnknownException gEDGlobalUnknownException) { passed = false; } #endregion Gestion exception liées à l'upload #endregion Act: Uploader le fichier #region Asserts Assert.True(passed); #endregion #region Clear #endregion } catch (Exception ex) { Assert.True(false, ex.ToString()); } }
public void TPGED_UploadANewPdfFacture_TestTrue() { try { #region Arrange: Init instance GEDJsonClassRequestResponse gedUploadAnswer = new GEDJsonClassRequestResponse(); GEDJsonClassRequestResponse gedDownloadAnswer; bool passed = true; bool passedDoubleCheck = true; var gedAccess = new Ged( ConstantsTPGed.GedUserLogin, ConstantsTPGed.GedUserPassword, ConstantsTPGed.GedUrlToTestWEB ); var fileUri = ResourceFileHelper.GetResourceFilePath(ConstantsTPGed.GEDFacturePdf_ResourceFileName); var barCode = Guid.NewGuid().ToString(); #endregion #region Act: Uploader le fichier try { //Upload a file gedUploadAnswer = gedAccess.UploadFile( barCode, fileUri, GedService.DocTypesEnum.FAC); //Double verification que tout s'est bien passé: //Uploader fichier -> fait //downloader fichier -> gedDownloadAnswer = gedAccess.DownloadFile( barCode, GedService.DocTypesEnum.FAC); //sauver localement -> //réouvrir le fichier local -> //vérifier que sa taille est bien celle d'origine avant upload. if (!gedAccess.DoubleCheckUploadedFile(gedDownloadAnswer, gedUploadAnswer.sizeExpected)) { passedDoubleCheck = false; } } #region Gestion exception liées au credentials //Mauvais credentials (attention après 2 erreurs le user est locké) catch (GEDInvalidCredentialsException invalidCredentialsException) { passed = false; } //User locké catch (GEDUserLockedTooMuchFailingAttempsToConnectException userLockedTooMuchFailingAttempsToConnectException) { passed = false; } //Erreur de connexion inconnue catch (GEDConnectionUnknownException connectionUnknownException) { passed = false; } #endregion Gestion exception liées au credentials #region Gestion exception liées à l'upload //Erreur gérée lors de l'upload catch (GEDUploadFileException uploadFileException) { passed = false; } //Erreur inattendue lors de l'upload catch (GEDUploadFileUnknownException uploadFileUnknownException) { passed = false; } //Erreur Dll GED inconnue catch (GEDGlobalUnknownException gEDGlobalUnknownException) { passed = false; } #endregion Gestion exception liées à l'upload #endregion Act: Uploader le fichier #region Asserts //Pas d'exceptions levées Assert.True(passed); //test du barcode Assert.Equal(barCode, gedUploadAnswer.barCode); //Le type est bien gardé Assert.Equal(GedService.DocTypesEnum.FAC.ToString(), gedUploadAnswer.docType); //Pas d'erreur retournée Assert.True(string.IsNullOrEmpty(gedUploadAnswer.error)); //Nom de fichiers non vide Assert.True(!string.IsNullOrEmpty(gedUploadAnswer.name)); //Url GET de download non vide Assert.True(!string.IsNullOrEmpty(gedUploadAnswer.url)); //Version mineure minimum car nouvelle facture Assert.Equal(ConstantsTPGed.GedMinorVersionMinimum, gedUploadAnswer.minorVersion); //Version majeure minimum car nouvelle facture Assert.Equal(ConstantsTPGed.GedMajorVersionMinimum, gedUploadAnswer.majorVersion); //Double verification tailles avant et après sur disque Assert.True(passedDoubleCheck); #endregion #region Clear #endregion } catch (Exception ex) { Assert.True(false, ex.ToString()); } }
public void TPGED_UploadAFactureWithListOfAnnexes_TestTrue() { try { #region Arrange: Init instance GEDJsonClassRequestResponse gedDownloadAnswer; bool passed = true; var gedAccess = new Ged( ConstantsTPGed.GedUserLogin, ConstantsTPGed.GedUserPassword, ConstantsTPGed.GedUrlToTestWEB ); var fileUri = ResourceFileHelper.GetResourceFilePath(ConstantsTPGed.GEDFacturePdf_ResourceFileName); var barCode = Guid.NewGuid().ToString(); //Annexes list urls List <string> urlAnnexeList = new List <string>() { ResourceFileHelper.GetResourceFilePath(ConstantsTPGed.GEDFacturePdfAnnexe1_ResourceFileName), ResourceFileHelper.GetResourceFilePath(ConstantsTPGed.GEDFacturePdfAnnexe2_ResourceFileName) }; #endregion #region Act: Uploader le fichier try { //Upload a new facture with annexes. List <GEDJsonClassRequestResponse> listResponsesNewFacture = gedAccess.UploadFactureWithAnnexes( barCode, urlAnnexeList, fileUri); foreach (var resp in listResponsesNewFacture) { if (resp.error != null) { passed = false; } } //Update an existing facture with annexes. List <GEDJsonClassRequestResponse> listResponsesExistingFacture = gedAccess.UploadFactureWithAnnexes( barCode, urlAnnexeList); foreach (var resp in listResponsesExistingFacture) { if (resp.error != null) { passed = false; } } } #region Gestion exception liées au credentials //Mauvais credentials (attention après 2 erreurs le user est locké) catch (GEDInvalidCredentialsException invalidCredentialsException) { passed = false; } //User locké catch (GEDUserLockedTooMuchFailingAttempsToConnectException userLockedTooMuchFailingAttempsToConnectException) { passed = false; } //Erreur de connexion inconnue catch (GEDConnectionUnknownException connectionUnknownException) { passed = false; } #endregion Gestion exception liées au credentials #region Gestion exception liées à l'upload //Erreur gérée lors de l'upload catch (GEDUploadFileException uploadFileException) { passed = false; } //Erreur inattendue lors de l'upload catch (GEDUploadFileUnknownException uploadFileUnknownException) { passed = false; } //Erreur Dll GED inconnue catch (GEDGlobalUnknownException gEDGlobalUnknownException) { passed = false; } #endregion Gestion exception liées à l'upload #endregion Act: Uploader le fichier #region Asserts //Pas d'exceptions levées ni d'erreurs business Assert.True(passed); #endregion #region Clear #endregion } catch (Exception ex) { Assert.True(false, ex.ToString()); } }