Skip to content

Commit

Permalink
Issue #420
Browse files Browse the repository at this point in the history
Aggiunti test per la ricerca degli iuv nelle riscossioni associate ad una riconciliazione.
  • Loading branch information
pintorig committed Oct 28, 2021
1 parent b5afd1e commit 29c7ede
Show file tree
Hide file tree
Showing 8 changed files with 349 additions and 13 deletions.
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
{
"dominio":"#notnull",
"idIncasso":"#notnull",
"causale":"##string",
"importo":"#notnull",
"data":"#notnull",
"sct":"#notnull",
"idFlusso":"#notnull",
"riscossioni":[
{
"idDominio":"#notnull",
"iuv":"#notnull",
"iur":"#notnull",
"indice":"#notnull",
"pendenza":"#notnull",
"vocePendenza":"#notnull",
"rpp":"#notnull",
"stato":"#notnull",
"tipo":"#notnull",
"importo":"#notnull",
"data":"#notnull",
"allegato":"#ignore",
"incasso":"#notnull"
},
{
"idDominio":"#notnull",
"iuv":"#notnull",
"iur":"#notnull",
"indice":"#notnull",
"pendenza":"#notnull",
"vocePendenza":"#notnull",
"rpp":"#notnull",
"stato":"#notnull",
"tipo":"#notnull",
"importo":"#notnull",
"data":"#notnull",
"allegato":"#ignore",
"incasso":"#notnull"
}
]
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,120 @@
Feature: Ricerca delle riconciliazioni filtrate per id flusso rendicontazione

Background:

callonce read('classpath:utils/common-utils.feature')
* callonce read('classpath:configurazione/v1/anagrafica_estesa.feature')
* callonce read('classpath:utils/nodo-genera-rendicontazioni.feature')
* callonce read('classpath:utils/govpay-op-acquisisci-rendicontazioni.feature')
* def ragioneriaBaseurl = getGovPayApiBaseUrl({api: 'ragioneria', versione: 'v3', autenticazione: 'basic'})

Scenario: Riconciliazioni da applicazione autorizzata per dominio_1 e dominio_2

* call sleep(1000)
* def dataInizio = getDateTime()
* call sleep(1000)

* def tipoRicevuta = "R01"
* def riversamentoCumulativo = "true"

* call read('classpath:utils/workflow/modello3/v2/modello3-pagamento.feature')
* def iuv1 = iuv
* def importo1 = importo

* call read('classpath:utils/workflow/modello3/v2/modello3-pagamento.feature')
* def iuv2 = iuv
* def importo2 = importo

* call read('classpath:utils/nodo-genera-rendicontazioni.feature')
* def importo = response.response.rh[0].importo
* def causale = response.response.rh[0].causale

* call read('classpath:utils/govpay-op-acquisisci-rendicontazioni.feature')

* def basicAutenticationHeader = getBasicAuthenticationHeader( { username: idA2A, password: pwdA2A } )

* def idRiconciliazione = getCurrentTimeMillis()
* def idFlussoRendicontazione = estraiIdFlussoDallaCausale(causale)

Given url ragioneriaBaseurl
And path '/riconciliazioni', idDominio, idRiconciliazione
And headers idA2ABasicAutenticationHeader
And request { idFlussoRendicontazione: '#(idFlussoRendicontazione)', importo: '#(importo)' , sct : 'SCT0123456789'}
When method put
Then status 202

* def riconciliazioneLocation = responseHeaders['Location'][0]

# Attesa batch elaborazione rendicontazioni
* call sleep(5000)

Given url ragioneriaBaseurl
And path riconciliazioneLocation
And headers idA2ABasicAutenticationHeader
When method get
Then status 200

* def idRiconciliazioneCum_DOM1_A2A = response.id
* def riconciliazioneCum_DOM1_A2A = response

* call sleep(1000)
* def dataFine = getDateTime()
* call sleep(1000)

* def applicazione = read('msg/applicazione_dominio1e2.json')
* def backofficeBaseurl = getGovPayApiBaseUrl({api: 'backoffice', versione: 'v1', autenticazione: 'basic'})

Given url backofficeBaseurl
And path 'applicazioni', idA2A
And headers gpAdminBasicAutenticationHeader
And request applicazione
When method put
Then assert responseStatus == 200 || responseStatus == 201

* call read('classpath:configurazione/v1/operazioni-resetCache.feature')
* def ragioneriaBaseurl = getGovPayApiBaseUrl({api: 'backoffice', versione: 'v1', autenticazione: 'basic'})

Given url backofficeBaseurl
And path '/incassi'
And headers idA2ABasicAutenticationHeader
And param dataDa = dataInizio
And param dataA = dataFine
And param idFlusso = riconciliazioneCum_DOM1_A2A.idFlussoRendicontazione
When method get
Then status 200
And match response.risultati[0].idIncasso == riconciliazioneCum_DOM1_A2A.idFlussoRendicontazione
And match response.risultati[0].idFlusso == riconciliazioneCum_DOM1_A2A.idFlussoRendicontazione
And match response ==
"""
{
numRisultati: 1,
numPagine: 1,
risultatiPerPagina: 25,
pagina: 1,
prossimiRisultati: '##null',
risultati: '#[1]'
}
"""

Scenario: Ricerca riconciliazioni con un idFlusso non presente

Given url backofficeBaseurl
And path '/incassi'
And headers idA2ABasicAutenticationHeader
And param dataDa = dataInizio
And param dataA = dataFine
And param idFlusso = 'XXX'
When method get
Then status 200
And match response ==
"""
{
numRisultati: 0,
numPagine: 1,
risultatiPerPagina: 25,
pagina: 1,
prossimiRisultati: '##null',
risultati: '#[0]'
}
"""

Original file line number Diff line number Diff line change
@@ -0,0 +1,128 @@
Feature: Ricerca delle riconciliazioni filtrate per iuv

Background:

callonce read('classpath:utils/common-utils.feature')
* callonce read('classpath:configurazione/v1/anagrafica_estesa.feature')
* callonce read('classpath:utils/nodo-genera-rendicontazioni.feature')
* callonce read('classpath:utils/govpay-op-acquisisci-rendicontazioni.feature')
* def ragioneriaBaseurl = getGovPayApiBaseUrl({api: 'ragioneria', versione: 'v3', autenticazione: 'basic'})

Scenario: Riconciliazioni da applicazione autorizzata per dominio_1 e dominio_2

* call sleep(1000)
* def dataInizio = getDateTime()
* call sleep(1000)

* def tipoRicevuta = "R01"
* def riversamentoCumulativo = "true"

* call read('classpath:utils/workflow/modello3/v2/modello3-pagamento.feature')
* def iuv1 = iuv
* def importo1 = importo

* call read('classpath:utils/workflow/modello3/v2/modello3-pagamento.feature')
* def iuv2 = iuv
* def importo2 = importo

* call read('classpath:utils/nodo-genera-rendicontazioni.feature')
* def importo = response.response.rh[0].importo
* def causale = response.response.rh[0].causale

* call read('classpath:utils/govpay-op-acquisisci-rendicontazioni.feature')

* def basicAutenticationHeader = getBasicAuthenticationHeader( { username: idA2A, password: pwdA2A } )

* def idRiconciliazione = getCurrentTimeMillis()
* def idFlussoRendicontazione = estraiIdFlussoDallaCausale(causale)

Given url ragioneriaBaseurl
And path '/riconciliazioni', idDominio, idRiconciliazione
And headers idA2ABasicAutenticationHeader
And request { idFlussoRendicontazione: '#(idFlussoRendicontazione)', importo: '#(importo)' , sct : 'SCT0123456789'}
When method put
Then status 202

* def riconciliazioneLocation = responseHeaders['Location'][0]

# Attesa batch elaborazione rendicontazioni
* call sleep(5000)

Given url ragioneriaBaseurl
And path riconciliazioneLocation
And headers idA2ABasicAutenticationHeader
When method get
Then status 200

* def idRiconciliazioneCum_DOM1_A2A = response.id
* def riconciliazioneCum_DOM1_A2A = response

* call sleep(1000)
* def dataFine = getDateTime()
* call sleep(1000)

* def applicazione = read('msg/applicazione_dominio1e2.json')
* def backofficeBaseurl = getGovPayApiBaseUrl({api: 'backoffice', versione: 'v1', autenticazione: 'basic'})

Given url backofficeBaseurl
And path 'applicazioni', idA2A
And headers gpAdminBasicAutenticationHeader
And request applicazione
When method put
Then assert responseStatus == 200 || responseStatus == 201

* call read('classpath:configurazione/v1/operazioni-resetCache.feature')
* def ragioneriaBaseurl = getGovPayApiBaseUrl({api: 'backoffice', versione: 'v1', autenticazione: 'basic'})

Given url backofficeBaseurl
And path '/incassi'
And headers idA2ABasicAutenticationHeader
And param dataDa = dataInizio
And param dataA = dataFine
And param iuv = riconciliazioneCum_DOM1_A2A.riscossioni[0].iuv
When method get
Then status 200
And match response.risultati[0].idIncasso == riconciliazioneCum_DOM1_A2A.idFlussoRendicontazione
And match response.risultati[0].idFlusso == riconciliazioneCum_DOM1_A2A.idFlussoRendicontazione
And match response ==
"""
{
numRisultati: 1,
numPagine: 1,
risultatiPerPagina: 25,
pagina: 1,
prossimiRisultati: '##null',
risultati: '#[1]'
}
"""

Given url backofficeBaseurl
And path '/incassi', idDominio, idRiconciliazione
And headers idA2ABasicAutenticationHeader
When method get
Then status 200
And match response == read('msg/riconciliazione-cumulativa-idflusso-response.json')


Scenario: Ricerca riconciliazioni con uno iuv non presente

Given url backofficeBaseurl
And path '/incassi'
And headers idA2ABasicAutenticationHeader
And param dataDa = dataInizio
And param dataA = dataFine
And param idFlusso = 'XXX'
When method get
Then status 200
And match response ==
"""
{
numRisultati: 0,
numPagine: 1,
risultatiPerPagina: 25,
pagina: 1,
prossimiRisultati: '##null',
risultati: '#[0]'
}
"""

Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ Given url ragioneriaBaseurl
And path '/riconciliazioni', idDominio, idRiconciliazione
And headers idA2ABasicAutenticationHeader
And request { causale: '#(causale)', importo: '#(importo)' , sct : 'SCT0123456789'}
When method post
When method put
Then status 202

* def riconciliazioneLocation = responseHeaders['Location'][0]
Expand Down Expand Up @@ -77,7 +77,7 @@ Given url ragioneriaBaseurl
And path '/riconciliazioni', idDominio, idRiconciliazione
And headers idA2A2BasicAutenticationHeader
And request { causale: '#(causale)', importo: '#(importo)' , sct : 'SCT0123456789' }
When method post
When method put
Then status 202

* def riconciliazioneLocation = responseHeaders['Location'][0]
Expand Down Expand Up @@ -120,7 +120,7 @@ Given url ragioneriaBaseurl
And path '/riconciliazioni', idDominio, idRiconciliazione
And headers idA2A2BasicAutenticationHeader
And request { causale: '#(causale)', importo: '#(importo)' , sct : 'SCT0123456789'}
When method post
When method put
Then status 202

* def riconciliazioneLocation = responseHeaders['Location'][0]
Expand Down Expand Up @@ -163,7 +163,7 @@ Given url ragioneriaBaseurl
And path '/riconciliazioni', idDominio, idRiconciliazione
And headers idA2A2BasicAutenticationHeader
And request { causale: '#(causale)', importo: '#(importo)' , sct : 'SCT0123456789'}
When method post
When method put
Then status 202

* def riconciliazioneLocation = responseHeaders['Location'][0]
Expand Down Expand Up @@ -204,7 +204,7 @@ Given url ragioneriaBaseurl
And path '/riconciliazioni', idDominio_2, idRiconciliazione
And headers idA2ABasicAutenticationHeader
And request { causale: '#(causale)', importo: '#(importo)' , sct : 'SCT0123456789'}
When method post
When method put
Then status 202

* def riconciliazioneLocation = responseHeaders['Location'][0]
Expand Down Expand Up @@ -242,7 +242,7 @@ Given url ragioneriaBaseurl
And path '/riconciliazioni', idDominio_2, idRiconciliazione
And headers idA2A2BasicAutenticationHeader
And request { causale: '#(causale)', importo: '#(importo)' , sct : 'SCT0123456789'}
When method post
When method put
Then status 202

* def riconciliazioneLocation = responseHeaders['Location'][0]
Expand Down Expand Up @@ -289,7 +289,7 @@ Given url ragioneriaBaseurl
And path '/riconciliazioni', idDominio_2, idRiconciliazione
And headers idA2A2BasicAutenticationHeader
And request { causale: '#(causale)', importo: '#(importo)' , sct : 'SCT0123456789'}
When method post
When method put
Then status 202

* def riconciliazioneLocation = responseHeaders['Location'][0]
Expand Down Expand Up @@ -336,7 +336,7 @@ Given url ragioneriaBaseurl
And path '/riconciliazioni', idDominio_2, idRiconciliazione
And headers idA2A2BasicAutenticationHeader
And request { causale: '#(causale)', importo: '#(importo)' , sct : 'SCT0123456789'}
When method post
When method put
Then status 202

* def riconciliazioneLocation = responseHeaders['Location'][0]
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ Feature: Riconciliazione pagamento singolo
Background:

* callonce read('classpath:utils/common-utils.feature')
* callonce read('classpath:configurazione/v1/anagrafica.feature')
* callonce read('classpath:configurazione/v1/anagrafica_estesa.feature')
* callonce read('classpath:utils/nodo-genera-rendicontazioni.feature')
* callonce read('classpath:utils/govpay-op-acquisisci-rendicontazioni.feature')
* def ragioneriaBaseurl = getGovPayApiBaseUrl({api: 'ragioneria', versione: 'v3', autenticazione: 'basic'})
Expand Down Expand Up @@ -46,7 +46,7 @@ And path riconciliazioneLocation
And headers idA2ABasicAutenticationHeader
When method get
Then status 200
And match response == read('msg/riconciliazione-singola-response.json')
And match response == read('classpath:test/api/ragioneria/v3/riconciliazioni/get/msg/riconciliazione-singola-response.json')

* def idRiconciliazioneSin_DOM1_A2A = response.id
* def riconciliazioneSin_DOM1_A2A = response
Expand Down

0 comments on commit 29c7ede

Please sign in to comment.