diff --git a/Makefile b/Makefile index 80f49c229..f68dea008 100644 --- a/Makefile +++ b/Makefile @@ -212,8 +212,8 @@ set-uploads-infected: ##@events calls emit-object-tags-added-with-virus for all key=$$k $(MAKE) emit-object-tags-added-with-virus ; \ done -tail-logs: ##@app tails logs for app mock-notify, events-lambda, schedule-runner-lambda, mock-onelogin, mock-lpa-store and mock-uid - docker compose --ansi=always -f docker/docker-compose.yml -f docker/docker-compose.dev.yml logs app mock-notify events-lambda schedule-runner-lambda mock-onelogin mock-lpa-store mock-uid -f +tail-logs: ##@app tails logs for app mock-notify, mock-onelogin, mock-lpa-store, mock-uid and mock-pay + docker compose --ansi=always -f docker/docker-compose.yml -f docker/docker-compose.dev.yml logs app mock-notify mock-onelogin mock-lpa-store mock-uid mock-pay -f terraform-update-docs: ##@terraform updates all terraform-docs managed documentation terraform-docs --config terraform/environment/.terraform-docs.yml ./terraform/environment diff --git a/cypress/e2e/donor/payment.cy.js b/cypress/e2e/donor/payment.cy.js index c7ca828e2..2b2501f73 100644 --- a/cypress/e2e/donor/payment.cy.js +++ b/cypress/e2e/donor/payment.cy.js @@ -387,10 +387,6 @@ describe('Pay for LPA', { pageLoadTimeout: 8000 }, () => { cy.getCookie('pay').should('exist'); }); - cy.url().should('contains', '/fee-denied') - cy.checkA11yApp(); - cy.contains('button', 'Continue to payment').click(); - cy.get('h1').should('contain', 'Payment received'); cy.checkA11yApp(); cy.getCookie('pay').should('not.exist'); diff --git a/go.sum b/go.sum index 7468737a6..904b6986a 100644 --- a/go.sum +++ b/go.sum @@ -4,108 +4,58 @@ github.com/MicahParks/keyfunc/v3 v3.3.5 h1:7ceAJLUAldnoueHDNzF8Bx06oVcQ5CfJnYwNt github.com/MicahParks/keyfunc/v3 v3.3.5/go.mod h1:SdCCyMJn/bYqWDvARspC6nCT8Sk74MjuAY22C7dCST8= github.com/aws/aws-lambda-go v1.47.0 h1:0H8s0vumYx/YKs4sE7YM0ktwL2eWse+kfopsRI1sXVI= github.com/aws/aws-lambda-go v1.47.0/go.mod h1:dpMpZgvWx5vuQJfBt0zqBha60q7Dd7RfgJv23DymV8A= -github.com/aws/aws-sdk-go-v2 v1.32.5 h1:U8vdWJuY7ruAkzaOdD7guwJjD06YSKmnKCJs7s3IkIo= -github.com/aws/aws-sdk-go-v2 v1.32.5/go.mod h1:P5WJBrYqqbWVaOxgH0X/FYYD47/nooaPOZPlQdmiN2U= github.com/aws/aws-sdk-go-v2 v1.32.6 h1:7BokKRgRPuGmKkFMhEg/jSul+tB9VvXhcViILtfG8b4= github.com/aws/aws-sdk-go-v2 v1.32.6/go.mod h1:P5WJBrYqqbWVaOxgH0X/FYYD47/nooaPOZPlQdmiN2U= github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream v1.6.7 h1:lL7IfaFzngfx0ZwUGOZdsFFnQ5uLvR0hWqqhyE7Q9M8= github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream v1.6.7/go.mod h1:QraP0UcVlQJsmHfioCrveWOC1nbiWUl3ej08h4mXWoc= -github.com/aws/aws-sdk-go-v2/config v1.28.5 h1:Za41twdCXbuyyWv9LndXxZZv3QhTG1DinqlFsSuvtI0= -github.com/aws/aws-sdk-go-v2/config v1.28.5/go.mod h1:4VsPbHP8JdcdUDmbTVgNL/8w9SqOkM5jyY8ljIxLO3o= github.com/aws/aws-sdk-go-v2/config v1.28.6 h1:D89IKtGrs/I3QXOLNTH93NJYtDhm8SYa9Q5CsPShmyo= github.com/aws/aws-sdk-go-v2/config v1.28.6/go.mod h1:GDzxJ5wyyFSCoLkS+UhGB0dArhb9mI+Co4dHtoTxbko= -github.com/aws/aws-sdk-go-v2/credentials v1.17.46 h1:AU7RcriIo2lXjUfHFnFKYsLCwgbz1E7Mm95ieIRDNUg= -github.com/aws/aws-sdk-go-v2/credentials v1.17.46/go.mod h1:1FmYyLGL08KQXQ6mcTlifyFXfJVCNJTVGuQP4m0d/UA= github.com/aws/aws-sdk-go-v2/credentials v1.17.47 h1:48bA+3/fCdi2yAwVt+3COvmatZ6jUDNkDTIsqDiMUdw= github.com/aws/aws-sdk-go-v2/credentials v1.17.47/go.mod h1:+KdckOejLW3Ks3b0E3b5rHsr2f9yuORBum0WPnE5o5w= -github.com/aws/aws-sdk-go-v2/feature/dynamodb/attributevalue v1.15.17 h1:36xxDfD/hD9cMBjANIBSr+kZ0/+IYKHql4KPGN/DvM4= -github.com/aws/aws-sdk-go-v2/feature/dynamodb/attributevalue v1.15.17/go.mod h1:A4XQVRy4yJ70Sk5Qz2tuCQX6J5kXcRa53nGP6wtgntM= github.com/aws/aws-sdk-go-v2/feature/dynamodb/attributevalue v1.15.20 h1:bwHhhCScKRAYJtaWVT+jDpt74GybN2nxI6+InkRjqGM= github.com/aws/aws-sdk-go-v2/feature/dynamodb/attributevalue v1.15.20/go.mod h1:/RfYH8CUMQuq/3CIEVGHLkqkA9KtbBF5omt2Ae8xc0s= -github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.16.20 h1:sDSXIrlsFSFJtWKLQS4PUWRvrT580rrnuLydJrCQ/yA= -github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.16.20/go.mod h1:WZ/c+w0ofps+/OUqMwWgnfrgzZH1DZO1RIkktICsqnY= github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.16.21 h1:AmoU1pziydclFT/xRV+xXE/Vb8fttJCLRPv8oAkprc0= github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.16.21/go.mod h1:AjUdLYe4Tgs6kpH4Bv7uMZo7pottoyHMn4eTcIcneaY= -github.com/aws/aws-sdk-go-v2/internal/configsources v1.3.24 h1:4usbeaes3yJnCFC7kfeyhkdkPtoRYPa/hTmCqMpKpLI= -github.com/aws/aws-sdk-go-v2/internal/configsources v1.3.24/go.mod h1:5CI1JemjVwde8m2WG3cz23qHKPOxbpkq0HaoreEgLIY= github.com/aws/aws-sdk-go-v2/internal/configsources v1.3.25 h1:s/fF4+yDQDoElYhfIVvSNyeCydfbuTKzhxSXDXCPasU= github.com/aws/aws-sdk-go-v2/internal/configsources v1.3.25/go.mod h1:IgPfDv5jqFIzQSNbUEMoitNooSMXjRSDkhXv8jiROvU= -github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.6.24 h1:N1zsICrQglfzaBnrfM0Ys00860C+QFwu6u/5+LomP+o= -github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.6.24/go.mod h1:dCn9HbJ8+K31i8IQ8EWmWj0EiIk0+vKiHNMxTTYveAg= github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.6.25 h1:ZntTCl5EsYnhN/IygQEUugpdwbhdkom9uHcbCftiGgA= github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.6.25/go.mod h1:DBdPrgeocww+CSl1C8cEV8PN1mHMBhuCDLpXezyvWkE= github.com/aws/aws-sdk-go-v2/internal/ini v1.8.1 h1:VaRN3TlFdd6KxX1x3ILT5ynH6HvKgqdiXoTxAF4HQcQ= github.com/aws/aws-sdk-go-v2/internal/ini v1.8.1/go.mod h1:FbtygfRFze9usAadmnGJNc8KsP346kEe+y2/oyhGAGc= -github.com/aws/aws-sdk-go-v2/internal/v4a v1.3.24 h1:JX70yGKLj25+lMC5Yyh8wBtvB01GDilyRuJvXJ4piD0= -github.com/aws/aws-sdk-go-v2/internal/v4a v1.3.24/go.mod h1:+Ln60j9SUTD0LEwnhEB0Xhg61DHqplBrbZpLgyjoEHg= github.com/aws/aws-sdk-go-v2/internal/v4a v1.3.25 h1:r67ps7oHCYnflpgDy2LZU0MAQtQbYIOqNNnqGO6xQkE= github.com/aws/aws-sdk-go-v2/internal/v4a v1.3.25/go.mod h1:GrGY+Q4fIokYLtjCVB/aFfCVL6hhGUFl8inD18fDalE= -github.com/aws/aws-sdk-go-v2/service/cloudwatch v1.43.1 h1:FbjhJTRoTujDYDwTnnE46Km5Qh1mMSH+BwTL4ODFifg= -github.com/aws/aws-sdk-go-v2/service/cloudwatch v1.43.1/go.mod h1:OwyCzHw6CH8pkLqT8uoCkOgUsgm11LTfexLZyRy6fBg= github.com/aws/aws-sdk-go-v2/service/cloudwatch v1.43.3 h1:nQLG9irjDGUFXVPDHzjCGEEwh0hZ6BcxTvHOod1YsP4= github.com/aws/aws-sdk-go-v2/service/cloudwatch v1.43.3/go.mod h1:URs8sqsyaxiAZkKP6tOEmhcs9j2ynFIomqOKY/CAHJc= -github.com/aws/aws-sdk-go-v2/service/dynamodb v1.37.1 h1:vucMirlM6D+RDU8ncKaSZ/5dGrXNajozVwpmWNPn2gQ= -github.com/aws/aws-sdk-go-v2/service/dynamodb v1.37.1/go.mod h1:fceORfs010mNxZbQhfqUjUeHlTwANmIT4mvHamuUaUg= github.com/aws/aws-sdk-go-v2/service/dynamodb v1.38.0 h1:isKhHsjpQR3CypQJ4G1g8QWx7zNpiC/xKw1zjgJYVno= github.com/aws/aws-sdk-go-v2/service/dynamodb v1.38.0/go.mod h1:xDvUyIkwBwNtVZJdHEwAuhFly3mezwdEWkbJ5oNYwIw= -github.com/aws/aws-sdk-go-v2/service/dynamodbstreams v1.24.6 h1:hIl7Z1zcfdzsl5SiV32acFj4gY/cZ5Xr9wd6PpoNYGE= -github.com/aws/aws-sdk-go-v2/service/dynamodbstreams v1.24.6/go.mod h1:VswWf/9ztSHHnMP3SMtGqrFOooVXI6NTDNjTcyLQ2HY= github.com/aws/aws-sdk-go-v2/service/dynamodbstreams v1.24.8 h1:ntqHwZb+ZyVz0CFYUG0sQ02KMMJh+iXeV3bXoba+s4A= github.com/aws/aws-sdk-go-v2/service/dynamodbstreams v1.24.8/go.mod h1:Hcjb2SiUo9v1GhpXjRNW7hAwfzAPfrsgnlKpP5UYEPY= -github.com/aws/aws-sdk-go-v2/service/eventbridge v1.35.6 h1:LLUzdN3H7EEmpRjkJDpMGdbimAPTg6+3fFvJCDpjcrQ= -github.com/aws/aws-sdk-go-v2/service/eventbridge v1.35.6/go.mod h1:njIZoyz4eQquthx3TH9aIz5svTr55u/6+agentCxFC0= github.com/aws/aws-sdk-go-v2/service/eventbridge v1.36.0 h1:UBCwgevYbPDbPb8LKyCmyBJ0Lk/gCPq4v85rZLe3vr4= github.com/aws/aws-sdk-go-v2/service/eventbridge v1.36.0/go.mod h1:ve9wzd6ToYjkZrF0nesNJxy14kU77QjrH5Rixrr4NJY= github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.12.1 h1:iXtILhvDxB6kPvEXgsDhGaZCSC6LQET5ZHSdJozeI0Y= github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.12.1/go.mod h1:9nu0fVANtYiAePIBh2/pFUSwtJ402hLnp854CNoDOeE= -github.com/aws/aws-sdk-go-v2/service/internal/checksum v1.4.5 h1:gvZOjQKPxFXy1ft3QnEyXmT+IqneM9QAUWlM3r0mfqw= -github.com/aws/aws-sdk-go-v2/service/internal/checksum v1.4.5/go.mod h1:DLWnfvIcm9IET/mmjdxeXbBKmTCm0ZB8p1za9BVteM8= github.com/aws/aws-sdk-go-v2/service/internal/checksum v1.4.6 h1:HCpPsWqmYQieU7SS6E9HXfdAMSud0pteVXieJmcpIRI= github.com/aws/aws-sdk-go-v2/service/internal/checksum v1.4.6/go.mod h1:ngUiVRCco++u+soRRVBIvBZxSMMvOVMXA4PJ36JLfSw= -github.com/aws/aws-sdk-go-v2/service/internal/endpoint-discovery v1.10.5 h1:3Y457U2eGukmjYjeHG6kanZpDzJADa2m0ADqnuePYVQ= -github.com/aws/aws-sdk-go-v2/service/internal/endpoint-discovery v1.10.5/go.mod h1:CfwEHGkTjYZpkQ/5PvcbEtT7AJlG68KkEvmtwU8z3/U= github.com/aws/aws-sdk-go-v2/service/internal/endpoint-discovery v1.10.6 h1:nbmKXZzXPJn41CcD4HsHsGWqvKjLKz9kWu6XxvLmf1s= github.com/aws/aws-sdk-go-v2/service/internal/endpoint-discovery v1.10.6/go.mod h1:SJhcisfKfAawsdNQoZMBEjg+vyN2lH6rO6fP+T94z5Y= -github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.12.5 h1:wtpJ4zcwrSbwhECWQoI/g6WM9zqCcSpHDJIWSbMLOu4= -github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.12.5/go.mod h1:qu/W9HXQbbQ4+1+JcZp0ZNPV31ym537ZJN+fiS7Ti8E= github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.12.6 h1:50+XsN70RS7dwJ2CkVNXzj7U2L1HKP8nqTd3XWEXBN4= github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.12.6/go.mod h1:WqgLmwY7so32kG01zD8CPTJWVWM+TzJoOVHwTg4aPug= -github.com/aws/aws-sdk-go-v2/service/internal/s3shared v1.18.5 h1:P1doBzv5VEg1ONxnJss1Kh5ZG/ewoIE4MQtKKc6Crgg= -github.com/aws/aws-sdk-go-v2/service/internal/s3shared v1.18.5/go.mod h1:NOP+euMW7W3Ukt28tAxPuoWao4rhhqJD3QEBk7oCg7w= github.com/aws/aws-sdk-go-v2/service/internal/s3shared v1.18.6 h1:BbGDtTi0T1DYlmjBiCr/le3wzhA37O8QTC5/Ab8+EXk= github.com/aws/aws-sdk-go-v2/service/internal/s3shared v1.18.6/go.mod h1:hLMJt7Q8ePgViKupeymbqI0la+t9/iYFBjxQCFwuAwI= -github.com/aws/aws-sdk-go-v2/service/s3 v1.68.0 h1:bFpcqdwtAEsgpZXvkTxIThFQx/EM0oV6kXmfFIGjxME= -github.com/aws/aws-sdk-go-v2/service/s3 v1.68.0/go.mod h1:ralv4XawHjEMaHOWnTFushl0WRqim/gQWesAMF6hTow= -github.com/aws/aws-sdk-go-v2/service/s3 v1.69.0 h1:Q2ax8S21clKOnHhhr933xm3JxdJebql+R7aNo7p7GBQ= -github.com/aws/aws-sdk-go-v2/service/s3 v1.69.0/go.mod h1:ralv4XawHjEMaHOWnTFushl0WRqim/gQWesAMF6hTow= github.com/aws/aws-sdk-go-v2/service/s3 v1.71.0 h1:nyuzXooUNJexRT0Oy0UQY6AhOzxPxhtt4DcBIHyCnmw= github.com/aws/aws-sdk-go-v2/service/s3 v1.71.0/go.mod h1:sT/iQz8JK3u/5gZkT+Hmr7GzVZehUMkRZpOaAwYXeGY= -github.com/aws/aws-sdk-go-v2/service/s3control v1.50.1 h1:WjVnnNd++hjjmuODULNfZaW2zEKZVrDGZvdQUK2dF8M= -github.com/aws/aws-sdk-go-v2/service/s3control v1.50.1/go.mod h1:ymXHnBHIxM/iqrgGphFuoUfuczoy4inIr2LH8PRj8NQ= github.com/aws/aws-sdk-go-v2/service/s3control v1.52.0 h1:tH6HJdKj1O5N8Uti8D2X20JYoDe9ZdC827iY92U+Ooo= github.com/aws/aws-sdk-go-v2/service/s3control v1.52.0/go.mod h1:sAOVMYapLSs3nCfdQo63qfVkKHlu97oqHDPrRbqayNg= -github.com/aws/aws-sdk-go-v2/service/secretsmanager v1.34.6 h1:1KDMKvOKNrpD667ORbZ/+4OgvUoaok1gg/MLzrHF9fw= -github.com/aws/aws-sdk-go-v2/service/secretsmanager v1.34.6/go.mod h1:DmtyfCfONhOyVAJ6ZMTrDSFIeyCBlEO93Qkfhxwbxu0= github.com/aws/aws-sdk-go-v2/service/secretsmanager v1.34.7 h1:Nyfbgei75bohfmZNxgN27i528dGYVzqWJGlAO6lzXy8= github.com/aws/aws-sdk-go-v2/service/secretsmanager v1.34.7/go.mod h1:FG4p/DciRxPgjA+BEOlwRHN0iA8hX2h9g5buSy3cTDA= -github.com/aws/aws-sdk-go-v2/service/sqs v1.37.1 h1:39WvSrVq9DD6UHkD+fx5x19P5KpRQfNdtgReDVNbelc= -github.com/aws/aws-sdk-go-v2/service/sqs v1.37.1/go.mod h1:3gwPzC9LER/BTQdQZ3r6dUktb1rSjABF1D3Sr6nS7VU= github.com/aws/aws-sdk-go-v2/service/sqs v1.37.2 h1:mFLfxLZB/TVQwNJAYox4WaxpIu+dFVIcExrmRmRCOhw= github.com/aws/aws-sdk-go-v2/service/sqs v1.37.2/go.mod h1:GnvfTdlvcpD+or3oslHPOn4Mu6KaCwlCp+0p0oqWnrM= -github.com/aws/aws-sdk-go-v2/service/ssm v1.56.0 h1:mADKqoZaodipGgiZfuAjtlcr4IVBtXPZKVjkzUZCCYM= -github.com/aws/aws-sdk-go-v2/service/ssm v1.56.0/go.mod h1:l9qF25TzH95FhcIak6e4vt79KE4I7M2Nf59eMUVjj6c= github.com/aws/aws-sdk-go-v2/service/ssm v1.56.1 h1:cfVjoEwOMOJOI6VoRQua0nI0KjZV9EAnR8bKaMeSppE= github.com/aws/aws-sdk-go-v2/service/ssm v1.56.1/go.mod h1:fGHwAnTdNrLKhgl+UEeq9uEL4n3Ng4MJucA+7Xi3sC4= -github.com/aws/aws-sdk-go-v2/service/sso v1.24.6 h1:3zu537oLmsPfDMyjnUS2g+F2vITgy5pB74tHI+JBNoM= -github.com/aws/aws-sdk-go-v2/service/sso v1.24.6/go.mod h1:WJSZH2ZvepM6t6jwu4w/Z45Eoi75lPN7DcydSRtJg6Y= github.com/aws/aws-sdk-go-v2/service/sso v1.24.7 h1:rLnYAfXQ3YAccocshIH5mzNNwZBkBo+bP6EhIxak6Hw= github.com/aws/aws-sdk-go-v2/service/sso v1.24.7/go.mod h1:ZHtuQJ6t9A/+YDuxOLnbryAmITtr8UysSny3qcyvJTc= -github.com/aws/aws-sdk-go-v2/service/ssooidc v1.28.5 h1:K0OQAsDywb0ltlFrZm0JHPY3yZp/S9OaoLU33S7vPS8= -github.com/aws/aws-sdk-go-v2/service/ssooidc v1.28.5/go.mod h1:ORITg+fyuMoeiQFiVGoqB3OydVTLkClw/ljbblMq6Cc= github.com/aws/aws-sdk-go-v2/service/ssooidc v1.28.6 h1:JnhTZR3PiYDNKlXy50/pNeix9aGMo6lLpXwJ1mw8MD4= github.com/aws/aws-sdk-go-v2/service/ssooidc v1.28.6/go.mod h1:URronUEGfXZN1VpdktPSD1EkAL9mfrV+2F4sjH38qOY= -github.com/aws/aws-sdk-go-v2/service/sts v1.33.1 h1:6SZUVRQNvExYlMLbHdlKB48x0fLbc2iVROyaNEwBHbU= -github.com/aws/aws-sdk-go-v2/service/sts v1.33.1/go.mod h1:GqWyYCwLXnlUB1lOAXQyNSPqPLQJvmo8J0DWBzp9mtg= github.com/aws/aws-sdk-go-v2/service/sts v1.33.2 h1:s4074ZO1Hk8qv65GqNXqDjmkf4HSQqJukaLuuW0TpDA= github.com/aws/aws-sdk-go-v2/service/sts v1.33.2/go.mod h1:mVggCnIWoM09jP71Wh+ea7+5gAp53q+49wDFs1SW5z8= github.com/aws/smithy-go v1.22.1 h1:/HPHZQ0g7f4eUeK6HKglFz8uwVfZKgoI25rb/J+dnro= @@ -187,8 +137,6 @@ github.com/mattn/go-isatty v0.0.14/go.mod h1:7GGIvUiUoEMVVmxf/4nioHXj79iQHKdU27k github.com/mattn/go-isatty v0.0.16/go.mod h1:kYGgaQfpe5nmfYZH+SKPsOc2e4SrIfOl2e/yFXSvRLM= github.com/mattn/go-isatty v0.0.20 h1:xfD0iDuEKnDkl03q4limB+vH+GxLEtL/jb4xVJSWWEY= github.com/mattn/go-isatty v0.0.20/go.mod h1:W+V8PltTTMOvKvAeJH7IuucS94S2C6jfK/D7dTCTo3Y= -github.com/ministryofjustice/opg-go-common v1.38.0 h1:H+QtehaJ8yrQimprK9Ty9Rn007jV9yc81UKufJSf80k= -github.com/ministryofjustice/opg-go-common v1.38.0/go.mod h1:ChMNWq0LXn5CexlllRmuMxiWlCcIB0+msrPNJ8mXktQ= github.com/ministryofjustice/opg-go-common v1.41.0 h1:IUNeuENR76VrW9x4+bWY+KzuJmzil4fU03XOr765uQg= github.com/ministryofjustice/opg-go-common v1.41.0/go.mod h1:ChMNWq0LXn5CexlllRmuMxiWlCcIB0+msrPNJ8mXktQ= github.com/mitchellh/go-homedir v1.1.0 h1:lukF9ziXFxDFPkA1vsr5zpc1XuPDn/wFntq5mG+4E0Y= @@ -250,9 +198,7 @@ github.com/tidwall/pretty v1.2.1 h1:qjsOFOWWQl+N3RsoF5/ssm1pHmJJwhjlSbZ51I6wMl4= github.com/tidwall/pretty v1.2.1/go.mod h1:ITEVvHYasfjBbM0u2Pg8T2nJnzm8xPwvNhhsoaGGjNU= github.com/tidwall/sjson v1.2.5 h1:kLy8mja+1c9jlljvWTlSazM7cKDRfJuR/bOJhcY5NcY= github.com/tidwall/sjson v1.2.5/go.mod h1:Fvgq9kS/6ociJEDnK0Fk1cpYF4FIW6ZF7LAe+6jwd28= -github.com/vektra/mockery/v2 v2.49.0 h1:KFJKqRa0zd4h+ntM+JFr9Z6fIz++CUgAAogPWnwTwJY= -github.com/vektra/mockery/v2 v2.49.0/go.mod h1:xO2DeYemEPC2tCzIZ+a1tifZ/7Laf/Chxg3vlc+oDsI= -github.com/vektra/mockery/v2 v2.49.1/go.mod h1:xO2DeYemEPC2tCzIZ+a1tifZ/7Laf/Chxg3vlc+oDsI= +github.com/vektra/mockery/v2 v2.50.0 h1:0GYRH38nKiRghwUq+0aJXG1sT3yyTYj/J1xQRM8kGzQ= github.com/vektra/mockery/v2 v2.50.0/go.mod h1:xO2DeYemEPC2tCzIZ+a1tifZ/7Laf/Chxg3vlc+oDsI= github.com/wI2L/jsondiff v0.6.0 h1:zrsH3FbfVa3JO9llxrcDy/XLkYPLgoMX6Mz3T2PP2AI= github.com/wI2L/jsondiff v0.6.0/go.mod h1:D6aQ5gKgPF9g17j+E9N7aasmU1O+XvfmWm1y8UMmNpw= @@ -298,33 +244,22 @@ golang.org/x/exp v0.0.0-20240119083558-1b970713d09a h1:Q8/wZp0KX97QFTc2ywcOE0YRj golang.org/x/exp v0.0.0-20240119083558-1b970713d09a/go.mod h1:idGWGoKP1toJGkd5/ig9ZLuPcZBC3ewk7SzmH0uou08= golang.org/x/mod v0.22.0 h1:D4nJWe9zXqHOmWqj4VMOJhvzj7bEZg4wEYa759z1pH4= golang.org/x/mod v0.22.0/go.mod h1:6SkKJ3Xj0I0BrPOZoBy3bdMptDDU9oJrpohJ3eWZ1fY= -golang.org/x/net v0.31.0 h1:68CPQngjLL0r2AlUKiSxtQFKvzRVbnzLwMUn5SzcLHo= -golang.org/x/net v0.31.0/go.mod h1:P4fl1q7dY2hnZFxEk4pPSkDHF+QqjitcnDjUQyMM+pM= golang.org/x/net v0.32.0 h1:ZqPmj8Kzc+Y6e0+skZsuACbx+wzMgo5MQsJh9Qd6aYI= golang.org/x/net v0.32.0/go.mod h1:CwU0IoeOlnQQWJ6ioyFrfRuomB8GKF6KbYXZVyeXNfs= -golang.org/x/sync v0.9.0 h1:fEo0HyrW1GIgZdpbhCRO0PkJajUS5H9IFUztCgEo2jQ= -golang.org/x/sync v0.9.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk= golang.org/x/sync v0.10.0 h1:3NQrjDixjgGwUOCaF8w2+VYHv0Ve/vGYSbdkTa98gmQ= golang.org/x/sync v0.10.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk= golang.org/x/sys v0.0.0-20210630005230-0f9fa26af87c/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20210927094055-39ccf1dd6fa6/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20220811171246-fbc7d0a398ab/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.27.0 h1:wBqf8DvsY9Y/2P8gAfPDEYNuS30J4lPHJxXSb/nJZ+s= -golang.org/x/sys v0.27.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= golang.org/x/sys v0.28.0 h1:Fksou7UEQUWlKvIdsqzJmUmCX3cZuD2+P3XyyzwMhlA= golang.org/x/sys v0.28.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= -golang.org/x/term v0.26.0 h1:WEQa6V3Gja/BhNxg540hBip/kkaYtRg3cxg4oXSw4AU= -golang.org/x/term v0.26.0/go.mod h1:Si5m1o57C5nBNQo5z1iq+XDijt21BDBDp2bK0QI8e3E= +golang.org/x/term v0.27.0 h1:WP60Sv1nlK1T6SupCHbXzSaN0b9wUmsPoRS9b61A23Q= golang.org/x/term v0.27.0/go.mod h1:iMsnZpn0cago0GOrHO2+Y7u7JPn5AylBrcoWkElMTSM= -golang.org/x/text v0.20.0 h1:gK/Kv2otX8gz+wn7Rmb3vT96ZwuoxnQlY+HlJVj7Qug= -golang.org/x/text v0.20.0/go.mod h1:D4IsuqiFMhST5bX19pQ9ikHC2GsaKyk/oF+pn3ducp4= golang.org/x/text v0.21.0 h1:zyQAAkrwaneQ066sspRyJaG9VNi/YJ1NfzcGB3hZ/qo= golang.org/x/text v0.21.0/go.mod h1:4IBbMaMmOPCJ8SecivzSH54+73PCFmPWxNTLm+vZkEQ= golang.org/x/time v0.8.0 h1:9i3RxcPv3PZnitoVGMPDKZSq1xW1gK1Xy3ArNOGZfEg= golang.org/x/time v0.8.0/go.mod h1:3BpzKBy/shNhVucY/MWOyx10tF3SFh9QdLuxbVysPQM= -golang.org/x/tools v0.27.0 h1:qEKojBykQkQ4EynWy4S8Weg69NumxKdn40Fce3uc/8o= -golang.org/x/tools v0.27.0/go.mod h1:sUi0ZgbwW9ZPAq26Ekut+weQPR5eIM6GQLQ1Yjm1H0Q= golang.org/x/tools v0.28.0 h1:WuB6qZ4RPCQo5aP3WdKZS7i595EdWqWR8vqJTlwTVK8= golang.org/x/tools v0.28.0/go.mod h1:dcIOrVd3mfQKTgrDVQHqCPMWy6lnhfhtX3hLXYVLfRw= google.golang.org/genproto/googleapis/api v0.0.0-20241104194629-dd2ea8efbc28 h1:M0KvPgPmDZHPlbRbaNU1APr28TvwvvdUPlSv7PUvy8g= diff --git a/internal/donor/donorpage/fee_denied.go b/internal/donor/donorpage/fee_denied.go deleted file mode 100644 index d40530b3c..000000000 --- a/internal/donor/donorpage/fee_denied.go +++ /dev/null @@ -1,26 +0,0 @@ -package donorpage - -import ( - "net/http" - - "github.com/ministryofjustice/opg-go-common/template" - "github.com/ministryofjustice/opg-modernising-lpa/internal/appcontext" - "github.com/ministryofjustice/opg-modernising-lpa/internal/donor/donordata" - "github.com/ministryofjustice/opg-modernising-lpa/internal/validation" -) - -type feeDeniedData struct { - Donor *donordata.Provided - Errors validation.List - App appcontext.Data -} - -func FeeDenied(tmpl template.Template, payer Handler) Handler { - return func(appData appcontext.Data, w http.ResponseWriter, r *http.Request, donor *donordata.Provided) error { - if r.Method == http.MethodPost { - return payer(appData, w, r, donor) - } - - return tmpl(w, feeDeniedData{Donor: donor, App: appData}) - } -} diff --git a/internal/donor/donorpage/fee_denied_test.go b/internal/donor/donorpage/fee_denied_test.go deleted file mode 100644 index 2cc763d01..000000000 --- a/internal/donor/donorpage/fee_denied_test.go +++ /dev/null @@ -1,65 +0,0 @@ -package donorpage - -import ( - "net/http" - "net/http/httptest" - "testing" - - "github.com/ministryofjustice/opg-modernising-lpa/internal/donor/donordata" - "github.com/ministryofjustice/opg-modernising-lpa/internal/task" - "github.com/stretchr/testify/assert" -) - -func TestGetFeeDenied(t *testing.T) { - w := httptest.NewRecorder() - r, _ := http.NewRequest(http.MethodGet, "/", nil) - - donor := &donordata.Provided{Tasks: donordata.Tasks{PayForLpa: task.PaymentStateDenied}} - - template := newMockTemplate(t) - template.EXPECT(). - Execute(w, feeDeniedData{Donor: donor, App: testAppData}). - Return(nil) - - err := FeeDenied(template.Execute, nil)(testAppData, w, r, donor) - resp := w.Result() - - assert.Nil(t, err) - assert.Equal(t, http.StatusOK, resp.StatusCode) -} - -func TestPostFeeDenied(t *testing.T) { - w := httptest.NewRecorder() - r, _ := http.NewRequest(http.MethodPost, "/", nil) - - donor := &donordata.Provided{Tasks: donordata.Tasks{PayForLpa: task.PaymentStateDenied}} - - payer := newMockHandler(t) - payer.EXPECT(). - Execute(testAppData, w, r, donor). - Return(nil) - - err := FeeDenied(nil, payer.Execute)(testAppData, w, r, donor) - resp := w.Result() - - assert.Nil(t, err) - assert.Equal(t, http.StatusOK, resp.StatusCode) -} - -func TestPostFeeDeniedWhenPayerError(t *testing.T) { - w := httptest.NewRecorder() - r, _ := http.NewRequest(http.MethodPost, "/", nil) - - donor := &donordata.Provided{Tasks: donordata.Tasks{PayForLpa: task.PaymentStateDenied}} - - payer := newMockHandler(t) - payer.EXPECT(). - Execute(testAppData, w, r, donor). - Return(expectedError) - - err := FeeDenied(nil, payer.Execute)(testAppData, w, r, donor) - resp := w.Result() - - assert.Equal(t, expectedError, err) - assert.Equal(t, http.StatusOK, resp.StatusCode) -} diff --git a/internal/donor/donorpage/register.go b/internal/donor/donorpage/register.go index e8fa0447e..0ffb18b49 100644 --- a/internal/donor/donorpage/register.go +++ b/internal/donor/donorpage/register.go @@ -380,10 +380,8 @@ func Register( UploadEvidence(tmpls.Get("upload_evidence.gohtml"), logger, payer, documentStore)) handleWithDonor(donor.PathSendUsYourEvidenceByPost, page.CanGoBack, SendUsYourEvidenceByPost(tmpls.Get("send_us_your_evidence_by_post.gohtml"), payer, eventClient)) - handleWithDonor(donor.PathFeeApproved, page.None, + handleWithDonor(donor.PathPayFee, page.None, payer) - handleWithDonor(donor.PathFeeDenied, page.None, - FeeDenied(tmpls.Get("fee_denied.gohtml"), payer)) handleWithDonor(donor.PathPaymentConfirmation, page.None, PaymentConfirmation(logger, payClient, donorStore, sessionStore, shareCodeSender, lpaStoreClient, eventClient, notifyClient)) handleWithDonor(donor.PathPaymentSuccessful, page.None, diff --git a/internal/donor/donorpage/task_list.go b/internal/donor/donorpage/task_list.go index 7c8764888..31e781920 100644 --- a/internal/donor/donorpage/task_list.go +++ b/internal/donor/donorpage/task_list.go @@ -154,10 +154,8 @@ func taskListCheckLpaPath(provided *donordata.Provided) donor.Path { func taskListPaymentSection(provided *donordata.Provided) taskListSection { var paymentPath string switch provided.Tasks.PayForLpa { - case task.PaymentStateApproved: - paymentPath = donor.PathFeeApproved.Format(provided.LpaID) - case task.PaymentStateDenied: - paymentPath = donor.PathFeeDenied.Format(provided.LpaID) + case task.PaymentStateApproved, task.PaymentStateDenied: + paymentPath = donor.PathPayFee.Format(provided.LpaID) case task.PaymentStateMoreEvidenceRequired: paymentPath = donor.PathUploadEvidence.Format(provided.LpaID) default: diff --git a/internal/donor/donorpage/task_list_test.go b/internal/donor/donorpage/task_list_test.go index e4994e4a8..40214d508 100644 --- a/internal/donor/donorpage/task_list_test.go +++ b/internal/donor/donorpage/task_list_test.go @@ -69,7 +69,7 @@ func TestGetTaskList(t *testing.T) { evidenceReceived: true, expected: func(sections []taskListSection) []taskListSection { sections[1].Items = []taskListItem{ - {Name: "payForTheLpa", Path: donor.PathFeeDenied.Format("lpa-id"), PaymentState: task.PaymentStateDenied}, + {Name: "payForTheLpa", Path: donor.PathPayFee.Format("lpa-id"), PaymentState: task.PaymentStateDenied}, } return sections @@ -81,7 +81,7 @@ func TestGetTaskList(t *testing.T) { evidenceReceived: true, expected: func(sections []taskListSection) []taskListSection { sections[1].Items = []taskListItem{ - {Name: "payForTheLpa", Path: donor.PathFeeApproved.Format("lpa-id"), PaymentState: task.PaymentStateApproved}, + {Name: "payForTheLpa", Path: donor.PathPayFee.Format("lpa-id"), PaymentState: task.PaymentStateApproved}, } return sections diff --git a/internal/donor/path.go b/internal/donor/path.go index e448af863..ddb400d09 100644 --- a/internal/donor/path.go +++ b/internal/donor/path.go @@ -55,8 +55,6 @@ const ( PathEnterVoucher = Path("/enter-voucher") PathEvidenceRequired = Path("/evidence-required") PathEvidenceSuccessfullyUploaded = Path("/evidence-successfully-uploaded") - PathFeeApproved = Path("/fee-approved") - PathFeeDenied = Path("/fee-denied") PathGettingHelpSigning = Path("/getting-help-signing") PathHowDoYouKnowYourCertificateProvider = Path("/how-do-you-know-your-certificate-provider") PathHowLongHaveYouKnownCertificateProvider = Path("/how-long-have-you-known-certificate-provider") @@ -77,6 +75,7 @@ const ( PathLpaYourLegalRightsAndResponsibilities = Path("/your-legal-rights-and-responsibilities") PathMakeANewLPA = Path("/make-a-new-lpa") PathNeedHelpSigningConfirmation = Path("/need-help-signing-confirmation") + PathPayFee = Path("/pay-fee") PathPaymentConfirmation = Path("/payment-confirmation") PathPaymentSuccessful = Path("/payment-successful") PathPreviousApplicationNumber = Path("/previous-application-number") diff --git a/internal/templatefn/paths.go b/internal/templatefn/paths.go index 0844b39d2..ff552b352 100644 --- a/internal/templatefn/paths.go +++ b/internal/templatefn/paths.go @@ -169,8 +169,6 @@ type appPaths struct { EnterVoucher donor.Path EvidenceRequired donor.Path EvidenceSuccessfullyUploaded donor.Path - FeeApproved donor.Path - FeeDenied donor.Path GettingHelpSigning donor.Path HowDoYouKnowYourCertificateProvider donor.Path HowLongHaveYouKnownCertificateProvider donor.Path @@ -189,6 +187,7 @@ type appPaths struct { MakeANewLPA donor.Path NeedHelpSigningConfirmation donor.Path OneLoginIdentityDetails donor.Path + PayFee donor.Path PaymentConfirmation donor.Path PreviousApplicationNumber donor.Path PreviousFee donor.Path @@ -397,8 +396,6 @@ var paths = appPaths{ EnterVoucher: donor.PathEnterVoucher, EvidenceRequired: donor.PathEvidenceRequired, EvidenceSuccessfullyUploaded: donor.PathEvidenceSuccessfullyUploaded, - FeeApproved: donor.PathFeeApproved, - FeeDenied: donor.PathFeeDenied, GettingHelpSigning: donor.PathGettingHelpSigning, HowDoYouKnowYourCertificateProvider: donor.PathHowDoYouKnowYourCertificateProvider, HowLongHaveYouKnownCertificateProvider: donor.PathHowLongHaveYouKnownCertificateProvider, @@ -417,6 +414,7 @@ var paths = appPaths{ MakeANewLPA: donor.PathMakeANewLPA, NeedHelpSigningConfirmation: donor.PathNeedHelpSigningConfirmation, OneLoginIdentityDetails: donor.PathIdentityDetails, + PayFee: donor.PathPayFee, PaymentConfirmation: donor.PathPaymentConfirmation, PreviousApplicationNumber: donor.PathPreviousApplicationNumber, PreviousFee: donor.PathPreviousFee, diff --git a/lang/cy.json b/lang/cy.json index de743c91b..a8fffa8dd 100644 --- a/lang/cy.json +++ b/lang/cy.json @@ -788,7 +788,6 @@ "chooseYourSignatoryAndIndependentWitness": "Dewis eich llofnodwr a thyst annibynnol", "gettingHelpSigningYourLpa": "Cael help i lofnodi eich LPA", "gettingHelpSigningYourLpaContent": "

Rydych chi wedi dweud wrthym na allwch lofnodi’r LPA eich hun.

Gallwch wneud eich LPA ar-lein o hyd. Fodd bynnag, bydd angen y canlynol arnoch:

Rhaid i’ch darparwr tystysgrif hefyd fod yn dyst i’r LPA yn cael ei llofnodi, ynghyd â’ch tyst annibynnol.

Pwy all lofnodi ar eich rhan

Gelwir y person sy’n llofnodi ar eich rhan yn ‘llofnodwr awdurdodedig’. Y rheswm dros hyn yw am eich bod yn eu hawdurdodi i lofnodi eich LPA ar eich rhan.

Pan fydd hi’n amser llofnodi, bydd angen iddynt allu dewis 2 flwch ar-lein. Mae hyn yn cyfrif fel eich llofnod cyfreithiol.

Ni all y person sy’n llofnodi ar eich rhan:

Pwy all fod yn dyst annibynnol i chi

Gofynnir i’ch tyst annibynnol gadarnhau ei fod wedi gweld eich LPA yn cael ei llofnodi. Rhaid iddynt fod dros 18 oed.

Ni all eich tyst annibynnol:

Cysylltu â’ch llofnodydd awdurdodedig a’ch tystion

Chi sy’n gyfrifol am gysylltu â’ch darparwr tystysgrif, eich tyst annibynnol a’r person a fydd yn llofnodi eich LPA ar eich rhan.

Rhaid i chi sicrhau bod pob un o’r 3 yn bresennol yn gorfforol pan fydd eich LPA yn cael ei llofnodi.

", - "feeDeniedContent": "

Parhau i dalu’r swm sy’n weddill o {{.RemainingAmountDuePounds}}.

", "enterTheNameOfYourAuthorisedSignatory": "Rhowch enw eich llofnodwr awdurdodedig", "thisIsThePersonWhoWillSignOnYourBehalf": "Dyma enw’r unigolyn a fydd yn llofnodi’r LPA ar eich rhan.", "authorisedSignatoryThisPersonCannotBeWarning": "Ni chaiff yr unigolyn hwn fod yn dyst annibynnol, yn ddarparwr tystysgrif nac yn atwrnai ar yr LPA hon.", diff --git a/lang/en.json b/lang/en.json index b84ffe796..79e1756d1 100644 --- a/lang/en.json +++ b/lang/en.json @@ -712,7 +712,6 @@ "chooseYourSignatoryAndIndependentWitness": "Choose your signatory and independent witness", "gettingHelpSigningYourLpa": "Getting help signing your LPA", "gettingHelpSigningYourLpaContent": "

You have told us that you cannot sign the LPA yourself.

You can still make your LPA online. However, you’ll need:

Your certificate provider must also witness the LPA being signed, along with your independent witness.

Who can sign on your behalf

The person who signs on your behalf is known as your ‘authorised signatory’. This is because you are authorising them to sign your LPA for you.

When it’s time to sign, they will need to be able to select 2 boxes online. This counts as your legal signature.

The person signing for you cannot:

Who can be your independent witness

Your independent witness will be asked to confirm that they witnessed your LPA being signed. They must be over 18.

Your independent witness cannot:

Contacting your authorised signatory and witnesses

You are responsible for contacting your certificate provider, independent witness and the person who will sign your LPA on your behalf.

You must make sure that all 3 people are there in person when your LPA is signed.

", - "feeDeniedContent": "

Continue to pay remaining amount of {{.RemainingAmountDuePounds}}.

", "enterTheNameOfYourAuthorisedSignatory": "Enter the name of your authorised signatory", "thisIsThePersonWhoWillSignOnYourBehalf": "This is the name of the person who will sign the LPA on your behalf.", "authorisedSignatoryThisPersonCannotBeWarning": "This person cannot be your independent witness, certificate provider or an attorney on this LPA.", diff --git a/web/template/donor/fee_denied.gohtml b/web/template/donor/fee_denied.gohtml deleted file mode 100644 index 3d086f6f0..000000000 --- a/web/template/donor/fee_denied.gohtml +++ /dev/null @@ -1,18 +0,0 @@ -{{ template "page" . }} - -{{ define "pageTitle" }}{{ tr .App "feeDenied" }}{{ end }} - -{{ define "main" }} -
-
-

{{ tr .App "feeDenied" }}

- - {{ trFormatHtml .App "feeDeniedContent" "RemainingAmountDuePounds" .Donor.FeeAmount.String }} - -
- {{ template "buttons" (button .App "continueToPayment") }} - {{ template "csrf-field" . }} -
-
-
-{{ end }}