Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

PN-11342-adattare-la-solution-di-ta-fe-alle-modifiche-introdotte-dal-pn-bff #175

Merged
Show file tree
Hide file tree
Changes from 16 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion src/main/java/it/pn/frontend/e2e/listeners/Hooks.java
Original file line number Diff line number Diff line change
Expand Up @@ -33,6 +33,7 @@

import java.io.File;
import java.io.IOException;
import java.nio.file.Path;
import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.time.Duration;
Expand Down Expand Up @@ -107,7 +108,6 @@ protected void chrome() {
this.captureHttpRequests();
this.captureHttpResponse();
logger.info("chromedriver started");

}

private void captureHttpRequests() {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -788,7 +788,7 @@ public void verificaPresenzaStato(String stato) {
public void verificaNotificaCreata() {
String notificationRequestId = "";
for (NetWorkInfo netWorkInfo : netWorkInfos) {
if (netWorkInfo.getRequestUrl().contains("/delivery/v2.3/requests") && netWorkInfo.getRequestMethod().equals("POST")) {
if (netWorkInfo.getRequestUrl().contains("/bff/v1/notifications/") && netWorkInfo.getRequestMethod().equals("POST")) {
if (netWorkInfo.getResponseStatus().equals("202") && !netWorkInfo.getResponseBody().isEmpty()) {
notificationRequestId = netWorkInfo.getResponseBody().split("\"notificationRequestId\":\"")[1].split("\"")[0];
logger.info("NotificationRequestId: " + notificationRequestId);
Expand Down
4 changes: 4 additions & 0 deletions src/main/java/it/pn/frontend/e2e/utility/WebTool.java
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@
import it.pn.frontend.e2e.section.destinatario.personaFisica.HeaderPFSection;
import it.pn.frontend.e2e.section.destinatario.personaGiuridica.HeaderPGSection;
import it.pn.frontend.e2e.section.mittente.HeaderPASection;
import lombok.Getter;
import org.junit.Assert;
import org.openqa.selenium.JavascriptExecutor;
import org.openqa.selenium.WebDriver;
Expand All @@ -29,6 +30,9 @@ public class WebTool {
private final List<NetWorkInfo> netWorkInfos = Hooks.netWorkInfos;
private final String env = System.getProperty("environment");

@Getter
private static final String apiBaseUrl = System.getProperty("apiBaseUrl");

public static String switchToPortal(AppPortal portal) {
openNewTab();
switch (portal) {
Expand Down
5 changes: 5 additions & 0 deletions src/test/java/it/pn/frontend/e2e/run/RunCucumberTest.java
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,13 @@
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

import java.io.File;
import java.io.IOException;
import java.io.InputStream;
import java.nio.file.DirectoryStream;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;
import java.util.Properties;

@RunWith(Cucumber.class)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,6 @@
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

import java.net.URL;
import java.util.List;
import java.util.Map;
import java.util.concurrent.TimeUnit;
Expand Down Expand Up @@ -49,11 +48,12 @@ public void loginPageDestinatarioVieneVisualizzata(String datipersonaFisica) {
Assert.fail("Non stato possibile trovare l'ambiente inserito, Inserisci in -Denvironment test o dev o uat");
}
}
@Given("Login Page persona fisica test viene visualizzata")
public void loginPageDestinatarioVieneVisualizzataConUrl() {

String url = "https://cittadini.test.notifichedigitali.it/";
this.driver.get(url);
@Given("Login Page persona fisica test viene visualizzata")
public void loginPageDestinatarioVieneVisualizzataConUrl() {

String url = "https://cittadini.test.notifichedigitali.it/";
this.driver.get(url);
}

@Given("PF - Si effettua la login tramite token exchange come {string}, e viene visualizzata la dashboard")
Expand Down Expand Up @@ -99,8 +99,8 @@ public void loginMittenteConTokenExchangeEUtente(String utente) {
//ToDo add token for dev
}
case "test" -> {
if(utente.equalsIgnoreCase("Cristoforo Colombo")) {
token = dataPopulation.readDataPopulation(FILE_TOKEN_LOGIN).get("tokentestPFColombo").toString();
if (utente.equalsIgnoreCase("Cristoforo Colombo")) {
token = dataPopulation.readDataPopulation(FILE_TOKEN_LOGIN).get("tokentestPFColombo").toString();
}
}
default -> {
Expand Down Expand Up @@ -192,8 +192,9 @@ public void loginConDestinatario(String datipersonaFisica) {
confermaDatiSpidPFPage.selezionaConfermaButton();
headerPFSection.waitUrlToken();
}

@When("Login con persona fisica")
public void loginConDestinatario(Map<String,String> datiPF) {
public void loginConDestinatario(Map<String, String> datiPF) {
logger.info("user persona fisica : " + datiPF.get("user"));
logger.info("cookies start");
CookiesSection cookiesPage;
Expand Down Expand Up @@ -314,7 +315,7 @@ public void homePageDestinatarioVieneVisualizzataCorrettamente() {
}

String variabileAmbiente = System.getProperty("environment");
String urlChiamata = "https://webapi." + variabileAmbiente + ".notifichedigitali.it/delivery/notifications/received?";
String urlChiamata = WebTool.getApiBaseUrl() + "notifications/received?";

int codiceRispostaChiamataApi = getCodiceRispostaChiamataApi(urlChiamata);
if (codiceRispostaChiamataApi != 200 && codiceRispostaChiamataApi != 0) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -285,12 +285,9 @@ public void siSelezionanoIFileAttestazioniOpponibiliDaScaricareAllInternoDellaNo
}
for (int i = 0; i < numeroLinkAttestazioniOpponibile; i++) {
dettaglioNotificaSection.clickLinkAttestazioniOpponibile(i);
try {
TimeUnit.SECONDS.sleep(5);
} catch (InterruptedException e) {
throw new RuntimeException(e);
}
String urlFileAttestazioneOppponibile = downloadFile.getUrl("https://webapi.test.notifichedigitali.it/delivery-push/" + datiNotifica.get("codiceIUN").toString() + "/legal-facts/");
WebTool.waitTime(5);
String fullPath = WebTool.getApiBaseUrl() + "/bff/v1/notifications/received/" + datiNotifica.get("codiceIUN").toString();
String urlFileAttestazioneOppponibile = downloadFile.getUrl(fullPath);

if (headless && urlFileAttestazioneOppponibile.isEmpty()) {
String testoLink = dettaglioNotificaSection.getTextLinkAttestazioniOpponibili(i);
Expand Down Expand Up @@ -409,6 +406,7 @@ public void siControllaLoStatoTimelineInDettaglioNotificaPF(Map<String, String>
public void siSelezionaUnAvvisoPagopa() {
dettaglioNotifica.selezioneAvvisoPagoPa();
}

}


Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -84,7 +84,7 @@ public void nellaPaginaITuoiRecapitiSiCliccaSulBottoneConferma() {
public void nellaPaginaITuoiRecapitiSiVisualizzaCorrettamenteIlPopUpDiInserimentoOTP() {
logger.info("Si visualizza correttamente il pop-up di inserimento OTP");
String varabileAmbiente = System.getProperty("environment");
String url = "https://webapi." + varabileAmbiente + ".notifichedigitali.it/address-book/v1/digital-address";
String url = WebTool.getApiBaseUrl() + "address";
recapitiDestinatarioPage.waitLoadPopUp();
try {
TimeUnit.SECONDS.sleep(3);
Expand Down Expand Up @@ -218,6 +218,7 @@ public void nellaPaginaITuoiRecapitiSiInserisceIlNumeroDiTelefonoDelPF(String dp
iTuoiRecapitiPage.insertTelephoneNumber(phoneNumber);
iTuoiRecapitiPage.clickAvvisamiViaSMS();
}

@And("Nella pagina I Tuoi Recapiti si inserisce il numero di telefono PF {string} e clicca sul bottone avvisami via SMS")
public void nellaPaginaITuoiRecapitiSiInserisceIlNumeroDiTelefonoPF(String phoneNumber) {

Expand Down Expand Up @@ -596,7 +597,7 @@ public void nellaPaginaITuoiRecapitiSiControllaCheLIndirizzoEmailNonSiaPresente(
logger.info("Si controlla che l'indirizzo Email non sia presente");
if (recapitiDestinatarioPage.verificaMailField()) {
logger.info("Email è stata eliminata correttamente");
}else {
} else {
logger.error("Email non è stata eliminata");
Assert.fail("Email non è stata eliminata");
}
Expand Down Expand Up @@ -797,7 +798,6 @@ public void nellaPaginaITuoiRecapitiSiControllaCheLIndirizzoPecPresente() {
}



@And("Nella sezione altri recapiti si seleziona l'ente {string}")
public void nellaSezioneAltriRecapitiSiSelezionaLEnte(String dpFile) {
logger.info("Si sceglie l'ente");
Expand Down Expand Up @@ -977,7 +977,7 @@ public void nellaPaginaITuoiRecapitiSiVisualizzaCorrettamenteIlRiquadroRelativoA
}

@And("Nella sezione altri recapiti si clicca sul bottone conferma per inserire un recapito")
public void nellaSezioneAltriRecapitiSiCliccaSulBottoneConfermaPerInserireUnRecapito(){
public void nellaSezioneAltriRecapitiSiCliccaSulBottoneConfermaPerInserireUnRecapito() {
logger.info("Si clicca su conferma");
recapitiDestinatarioPage.clickConfermaRecapitoGiaPresente();
}
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
package it.pn.frontend.e2e.stepDefinitions.destinatario.personaGiuridica;

import io.cucumber.java.bs.A;
import io.cucumber.java.en.And;
import io.cucumber.java.en.Then;
import io.cucumber.java.en.When;
Expand All @@ -18,6 +17,7 @@
import it.pn.frontend.e2e.utility.CookieConfig;
import it.pn.frontend.e2e.utility.DataPopulation;
import it.pn.frontend.e2e.utility.DownloadFile;
import it.pn.frontend.e2e.utility.WebTool;
import org.junit.Assert;
import org.openqa.selenium.WebDriver;
import org.slf4j.Logger;
Expand Down Expand Up @@ -67,7 +67,7 @@ public void siVisualizzaCorrettamenteLaPaginaNotifichePersonaGiuridica(String ra
piattaformaNotifichePGPAPage.waitLoadPiattaformaNotificaPage(ragioneSociale);

String variabileAmbiente = System.getProperty("environment");
String urlChiamata = "https://webapi." + variabileAmbiente + ".notifichedigitali.it/delivery/notifications/received?";
String urlChiamata = WebTool.getApiBaseUrl() + "notifications/received?";

int codiceRispostaChiamataApi = getCodiceRispostaChiamataApi(urlChiamata);
if (codiceRispostaChiamataApi != 200 && codiceRispostaChiamataApi != 0) {
Expand Down Expand Up @@ -113,7 +113,7 @@ public void nellaPaginaNotifichePersonaGiuridicaSiCliccaSuNotificheDelegate() {
}

@And("Nella sezione Deleghe si verifica sia presente una delega accettata per PG")
public void nellaSezioneDelegheSiVerificaSiaPresenteUnaDelegaAccettataPerPG(){
public void nellaSezioneDelegheSiVerificaSiaPresenteUnaDelegaAccettataPerPG() {
logger.info("Si controlla che sia presente una delega");
BackgroundTest backgroundTest = new BackgroundTest();
if (!this.deleghePage.siVisualizzaUnaDelegaPG()) {
Expand All @@ -123,8 +123,8 @@ public void nellaSezioneDelegheSiVerificaSiaPresenteUnaDelegaAccettataPerPG(){
backgroundTest.loginPGDeleghe("delegatoPG");
backgroundTest.accettazioneDelegaPG();
} else if (this.leTueDelegheSection.controlloPresenzaBottoneAccetta()) {
backgroundTest.accettazioneDelegaPG();
}
backgroundTest.accettazioneDelegaPG();
}
this.driver.navigate().refresh();
}

Expand Down Expand Up @@ -181,7 +181,7 @@ private String getBearerToken() {
String bearerToken = "";
for (NetWorkInfo netWorkInfo : netWorkInfos) {
String variabileAmbiente = System.getProperty("environment");
String urlChiamata = "https://webapi." + variabileAmbiente + ".notifichedigitali.it/delivery/notifications/received?";
String urlChiamata = WebTool.getApiBaseUrl() + "notifications/received?";
if (netWorkInfo.getRequestUrl().contains(urlChiamata)) {
bearerToken = netWorkInfo.getAuthorizationBearer();
}
Expand Down Expand Up @@ -220,7 +220,7 @@ public void nellaSezioneDettaglioNotificheSiCliccaSuLopzioneIndietro() {


@And("Si clicca sul radio bottone di pagamento")
public void siCliccaRadioButtonPagamento(){
public void siCliccaRadioButtonPagamento() {
PiattaformaNotifichePGPAPage piattaformaNotifichePGPAPage = new PiattaformaNotifichePGPAPage(this.driver);
piattaformaNotifichePGPAPage.clickRadioBoxButton();
}
Expand All @@ -229,9 +229,9 @@ public void siCliccaRadioButtonPagamento(){
public void siControllaSiaPresenteIlModelloF24PG() {
logger.info("Si controlla sia presente il modello F24 PG");
PiattaformaNotifichePGPAPage piattaformaNotifichePGPAPage = new PiattaformaNotifichePGPAPage(this.driver);
if(piattaformaNotifichePGPAPage.modelloF24Displayed()){
logger.info("Il modello F24 è trovato");
}else{
if (piattaformaNotifichePGPAPage.modelloF24Displayed()) {
logger.info("Il modello F24 è trovato");
} else {
logger.error("Il modello F24 non è trovato");
Assert.fail("Il modello F24 non è trovato");
}
Expand All @@ -241,9 +241,9 @@ public void siControllaSiaPresenteIlModelloF24PG() {
public void siControllaNonSiaPresenteIlModelloF24PG() {
logger.info("Si controlla non sia presente il modello F24 PG");
PiattaformaNotifichePGPAPage piattaformaNotifichePGPAPage = new PiattaformaNotifichePGPAPage(this.driver);
if(!piattaformaNotifichePGPAPage.modelloF24Displayed()){
if (!piattaformaNotifichePGPAPage.modelloF24Displayed()) {
logger.info("Il modello F24 non è trovato");
}else{
} else {
logger.error("Il modello F24 è trovato");
Assert.fail("Il modello F24 è trovato");
}
Expand All @@ -267,9 +267,9 @@ public void siCliccaIlSecondoModelloF24PG() {
public void siControllaSiaPresenteLAvvisoPagoPaPG() {
logger.info("Si controlla la presenza del box per il pagamento della notifica");
AccediAPiattaformaNotifichePage accediAPiattaformaNotifichePage = new AccediAPiattaformaNotifichePage(this.driver);
if(accediAPiattaformaNotifichePage.scaricaAvvisoDisplayed()){
if (accediAPiattaformaNotifichePage.scaricaAvvisoDisplayed()) {
logger.info("Avviso PagoPA è trovato");
}else{
} else {
logger.error("Avviso PagoPA non è trovato");
Assert.fail("Avviso PagoPA non è trovato");
}
Expand All @@ -279,9 +279,9 @@ public void siControllaSiaPresenteLAvvisoPagoPaPG() {
public void siControllaNonSiaPresenteLAvvisoPagoPaPG() {
logger.info("Si controlla la presenza del box per il pagamento della notifica");
AccediAPiattaformaNotifichePage accediAPiattaformaNotifichePage = new AccediAPiattaformaNotifichePage(this.driver);
if(!accediAPiattaformaNotifichePage.scaricaAvvisoDisplayed()){
if (!accediAPiattaformaNotifichePage.scaricaAvvisoDisplayed()) {
logger.info("Avviso PagoPA non è trovato");
}else{
} else {
logger.error("Avviso PagoPA è trovato");
Assert.fail("Avviso PagoPA è trovato");
}
Expand Down Expand Up @@ -310,12 +310,12 @@ public void nellaPaginaPiattformaNotificheSiEffettuaLaRicercaPerCodiceIUN(String
}

@And("Si controlla la presenza di codice avviso")
public void siControllaLaPresenzaDiCodiceAvviso(){
public void siControllaLaPresenzaDiCodiceAvviso() {
logger.info("Si controlla la presenza di codice avviso");
AccediAPiattaformaNotifichePage accediAPiattaformaNotifichePage = new AccediAPiattaformaNotifichePage(this.driver);
if(accediAPiattaformaNotifichePage.codiceAvvisoDisplayed()){
AccediAPiattaformaNotifichePage accediAPiattaformaNotifichePage = new AccediAPiattaformaNotifichePage(this.driver);
if (accediAPiattaformaNotifichePage.codiceAvvisoDisplayed()) {
logger.info("Codice avviso è visuallizato corrttamente");
}else {
} else {
logger.error("Codice avviso non è visuallizato corrttamente");
Assert.fail("Codice avviso non è visuallizato corrttamente");
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,14 +7,14 @@
import it.pn.frontend.e2e.pages.destinatario.personaFisica.AccediAPiattaformaNotifichePage;
import it.pn.frontend.e2e.pages.mittente.DisserviziAppPAPage;
import it.pn.frontend.e2e.utility.DownloadFile;
import it.pn.frontend.e2e.utility.WebTool;
import org.junit.Assert;
import org.openqa.selenium.WebDriver;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

import java.io.File;
import java.io.IOException;
import java.util.concurrent.TimeUnit;

public class DisserviziAppPATest {
private static final Logger logger = LoggerFactory.getLogger("DisserviziAppPATest");
Expand Down Expand Up @@ -64,13 +64,9 @@ public void siScaricaAttestazioneOpponibileDisservizi() throws IOException {
pathCartella.mkdirs();
}
disserviziAppPAPage.clickLinkAttestazioniOpponibileDisservizi(0);
try {
TimeUnit.SECONDS.sleep(5);
} catch (InterruptedException e) {
throw new RuntimeException(e);
}
WebTool.waitTime(5);
String legalFactId = downloadFile.getLegalFactId();
String urlFileAttestazioneOpponibile = "https://webapi.test.notifichedigitali.it/downtime/v1/legal-facts/" + legalFactId;
String urlFileAttestazioneOpponibile = WebTool.getApiBaseUrl() + "downtime/legal-facts/" + legalFactId;

File file = new File(workingDirectory + "/src/test/resources/dataPopulation/downloadFileNotifica/destinatario/notificaN" + 0 + ".pdf");
downloadFile.downloadAttestazioneDisservizi(urlFileAttestazioneOpponibile, file, headless);
Expand Down
Loading