Files
comun/utile/Teste/storno/mock_anaf_server_storno.prg

72 lines
2.8 KiB
Plaintext

* mock_anaf_server_storno.prg - MOCK pentru AnafeFacturaServer, STRICT pentru testul E2E
* storno eFactura (test_storno_e2e.prg). ZERO apeluri reale la ANAF: RefreshTokenAuto /
* TrimiteFacturaXML / SaveFile / Xml2PdfAnaf doar logheaza apelul in PUBLIC gaMockApeluri /
* gnMockApeluri (declarate de test INAINTE de a instantia acest mock) si intorc raspunsuri
* canonice, fara retea si fara disc (in afara de SaveFile, care doar logheaza).
DEFINE CLASS MockAnafServerStorno AS Custom
cCodFiscal = ''
lTest = .T.
cToken = 'MOCK-TOKEN-STORNO'
cRefreshToken = 'MOCK-REFRESH-STORNO'
dTokenGendate = {}
dTokenExpdate = {}
PROCEDURE RegMock
LPARAMETERS tcMetoda, tcP2, tcP3
gnMockApeluri = gnMockApeluri + 1
DIMENSION gaMockApeluri[gnMockApeluri, 3]
gaMockApeluri[gnMockApeluri, 1] = tcMetoda
gaMockApeluri[gnMockApeluri, 2] = TRANSFORM(tcP2)
gaMockApeluri[gnMockApeluri, 3] = TRANSFORM(tcP3)
IF TYPE('gcUILog') = 'C'
DO PrLogLocal WITH 'MOCK ' + tcMetoda + ' p2=[' + TRANSFORM(tcP2) + '] p3=[' + TRANSFORM(tcP3) + ']'
ENDIF
ENDPROC
PROCEDURE RefreshTokenAuto
This.RegMock('RefreshTokenAuto', '', '')
ENDPROC
PROCEDURE TrimiteFacturaXML
LPARAMETERS tcFile, tlValidare, tlValidareOnline, tlNuTrimiteEFacturaANAF, tlExtern, tlB2C
LOCAL loReturn
This.RegMock('TrimiteFacturaXML', tcFile, TRANSFORM(tlB2C))
loReturn = CREATEOBJECT('Empty')
ADDPROPERTY(loReturn, 'cFile', TRANSFORM(tcFile))
* gnMockTrimiteMod (test_storno_e2e.prg): 0=succes, 1=ANAF a raspuns clar cu eroare (HTTP 200), 2=eroare de retea (HTTP 0)
DO CASE
CASE TYPE('gnMockTrimiteMod') = 'N' AND gnMockTrimiteMod = 1
ADDPROPERTY(loReturn, 'lSucces', .T.)
ADDPROPERTY(loReturn, 'cIdIncarcare', '')
ADDPROPERTY(loReturn, 'cMesaj', 'TEST ANAF a respins incarcarea: A aparut o eroare tehnica. Cod: 1814')
ADDPROPERTY(loReturn, 'cResponse', '<mock err1814/>')
ADDPROPERTY(loReturn, 'nStatus', 200)
CASE TYPE('gnMockTrimiteMod') = 'N' AND gnMockTrimiteMod = 2
ADDPROPERTY(loReturn, 'lSucces', .F.)
ADDPROPERTY(loReturn, 'cIdIncarcare', '')
ADDPROPERTY(loReturn, 'cMesaj', 'Eroare de comunicare cu ANAF - Http Status: 0. Raspuns: ')
ADDPROPERTY(loReturn, 'cResponse', '')
ADDPROPERTY(loReturn, 'nStatus', 0)
OTHERWISE
ADDPROPERTY(loReturn, 'lSucces', .T.)
ADDPROPERTY(loReturn, 'cIdIncarcare', 'MOCK-ID-STORNO-12345')
ADDPROPERTY(loReturn, 'cMesaj', '')
ADDPROPERTY(loReturn, 'cResponse', '<mock ok/>')
ADDPROPERTY(loReturn, 'nStatus', 200)
ENDCASE
RETURN loReturn
ENDPROC
PROCEDURE SaveFile
LPARAMETERS tcFile, tlVariable, tcDirectory, tcFileName
This.RegMock('SaveFile', tcFile, TRANSFORM(tcDirectory) + '|' + TRANSFORM(tcFileName))
RETURN .T.
ENDPROC
PROCEDURE Xml2PdfAnaf
LPARAMETERS tcXml, tcFile, tlVariable
This.RegMock('Xml2PdfAnaf', tcFile, '')
RETURN tcFile
ENDPROC
ENDDEFINE