Compare commits
4 Commits
2eb1359fdd
...
139863ea83
Author | SHA1 | Date | |
---|---|---|---|
|
139863ea83 | ||
|
82f1ec057f | ||
|
f2733b804a | ||
|
f23b619ff3 |
6
Jenkinsfile
vendored
6
Jenkinsfile
vendored
@ -45,7 +45,11 @@ pipeline {
|
||||
sourcePattern: 'src/main/java'
|
||||
)
|
||||
|
||||
// archive scenario-test reports
|
||||
// archive scenario-test reports in HTML format
|
||||
sh '''
|
||||
cd doc/scenarios
|
||||
./to-html
|
||||
'''
|
||||
archiveArtifacts artifacts: 'doc/scenarios/*.html', allowEmptyArchive: true
|
||||
|
||||
// cleanup workspace
|
||||
|
@ -7,7 +7,7 @@ get:
|
||||
parameters:
|
||||
- $ref: 'auth.yaml#/components/parameters/currentSubject'
|
||||
- $ref: 'auth.yaml#/components/parameters/assumedRoles'
|
||||
- name: name
|
||||
- name: iban
|
||||
in: query
|
||||
required: false
|
||||
schema:
|
||||
|
@ -194,7 +194,6 @@ class HsOfficeScenarioTests extends ScenarioTest {
|
||||
@Requires("SEPA-Mandate: Test AG")
|
||||
void shouldInvalidateSepaMandateForDebitor() {
|
||||
new InvalidateSepaMandateForDebitor(this)
|
||||
.given("debitorNumberNumber", "31010")
|
||||
.given("bankAccountIBAN", "DE02701500000000594937")
|
||||
.given("mandateValidUntil", "2025-09-30")
|
||||
.doRun();
|
||||
|
@ -24,7 +24,7 @@ public class DeleteDebitor extends UseCase<DeleteDebitor> {
|
||||
|
||||
@Override
|
||||
protected HttpResponse run() {
|
||||
httpDelete("/api/hs/office/debitors/" + uuid("Debitor: Test AG - delete debitor"))
|
||||
httpDelete("/api/hs/office/debitors/&{Debitor: Test AG - delete debitor}")
|
||||
.expecting(HttpStatus.NO_CONTENT);
|
||||
return null;
|
||||
}
|
||||
|
@ -13,7 +13,7 @@ public class DeleteSepaMandateForDebitor extends UseCase<DeleteSepaMandateForDeb
|
||||
|
||||
@Override
|
||||
protected HttpResponse run() {
|
||||
httpDelete("/api/hs/office/sepamandates/" + uuid("SEPA-Mandate: Test AG"))
|
||||
httpDelete("/api/hs/office/sepamandates/&{SEPA-Mandate: Test AG}")
|
||||
.expecting(HttpStatus.NO_CONTENT);
|
||||
return null;
|
||||
}
|
||||
|
@ -12,7 +12,7 @@ public class DontDeleteDefaultDebitor extends UseCase<DontDeleteDefaultDebitor>
|
||||
|
||||
@Override
|
||||
protected HttpResponse run() {
|
||||
httpDelete("/api/hs/office/debitors/" + uuid("Debitor: Test AG - main debitor"))
|
||||
httpDelete("/api/hs/office/debitors/&{Debitor: Test AG - main debitor}")
|
||||
// TODO.spec: should be CONFLICT or CLIENT_ERROR for Debitor "00" - but how to delete Partners?
|
||||
.expecting(HttpStatus.NO_CONTENT);
|
||||
return null;
|
||||
|
@ -15,9 +15,16 @@ public class InvalidateSepaMandateForDebitor extends UseCase<InvalidateSepaManda
|
||||
@Override
|
||||
protected HttpResponse run() {
|
||||
|
||||
return httpPatch("/api/hs/office/sepamandates/" + uuid("SEPA-Mandate: Test AG"), usingJsonBody("""
|
||||
obtain("SEPA-Mandate: %{bankAccountIBAN}", () ->
|
||||
httpGet("/api/hs/office/sepamandates?iban=&{bankAccountIBAN}")
|
||||
.expecting(OK).expecting(JSON),
|
||||
response -> response.expectArrayElements(1).getFromBody("[0].uuid"),
|
||||
"With production data, the bank-account could be used in multiple SEPA-mandates, make sure to use the right one!"
|
||||
);
|
||||
|
||||
return httpPatch("/api/hs/office/sepamandates/&{SEPA-Mandate: %{bankAccountIBAN}}", usingJsonBody("""
|
||||
{
|
||||
"validUntil": ${validUntil}
|
||||
"validUntil": ${mandateValidUntil}
|
||||
}
|
||||
"""))
|
||||
.expecting(OK).expecting(JSON);
|
||||
|
@ -18,7 +18,7 @@ public class DeletePartner extends UseCase<DeletePartner> {
|
||||
|
||||
@Override
|
||||
protected HttpResponse run() {
|
||||
httpDelete("/api/hs/office/partners/" + uuid("Partner: Delete AG"))
|
||||
httpDelete("/api/hs/office/partners/&{Partner: Delete AG}")
|
||||
.expecting(HttpStatus.NO_CONTENT);
|
||||
return null;
|
||||
}
|
||||
|
@ -23,7 +23,7 @@ public class RemoveOperationsContactFromPartner extends UseCase<RemoveOperations
|
||||
"In production data this query could result in multiple outputs. In that case, you have to find out which is the right one."
|
||||
);
|
||||
|
||||
return httpDelete("/api/hs/office/relations/" + uuid("Operations-Contact: %{operationsContactPerson}"))
|
||||
return httpDelete("/api/hs/office/relations/&{Operations-Contact: %{operationsContactPerson}}")
|
||||
.expecting(NO_CONTENT);
|
||||
}
|
||||
}
|
||||
|
@ -25,7 +25,7 @@ public class UnsubscribeFromMailinglist extends UseCase<UnsubscribeFromMailingli
|
||||
"In production data this query could result in multiple outputs. In that case, you have to find out which is the right one."
|
||||
);
|
||||
|
||||
return httpDelete("/api/hs/office/relations/" + uuid("Subscription: %{subscriberEMailAddress}"))
|
||||
return httpDelete("/api/hs/office/relations/&{Subscription: %{subscriberEMailAddress}}")
|
||||
.expecting(NO_CONTENT);
|
||||
}
|
||||
}
|
||||
|
@ -8,7 +8,6 @@ import net.hostsharing.hsadminng.hs.office.bankaccount.HsOfficeBankAccountReposi
|
||||
import net.hostsharing.hsadminng.hs.office.debitor.HsOfficeDebitorRepository;
|
||||
import net.hostsharing.hsadminng.rbac.test.ContextBasedTestWithCleanup;
|
||||
import net.hostsharing.hsadminng.rbac.test.JpaAttempt;
|
||||
import org.json.JSONException;
|
||||
import org.junit.jupiter.api.AfterEach;
|
||||
import org.junit.jupiter.api.BeforeEach;
|
||||
import org.junit.jupiter.api.Nested;
|
||||
@ -58,7 +57,7 @@ class HsOfficeSepaMandateControllerAcceptanceTest extends ContextBasedTestWithCl
|
||||
class ListSepaMandates {
|
||||
|
||||
@Test
|
||||
void globalAdmin_canViewAllSepaMandates_ifNoCriteriaGiven() throws JSONException {
|
||||
void globalAdmin_canViewAllSepaMandates_ifNoCriteriaGiven() {
|
||||
|
||||
RestAssured // @formatter:off
|
||||
.given()
|
||||
@ -97,6 +96,36 @@ class HsOfficeSepaMandateControllerAcceptanceTest extends ContextBasedTestWithCl
|
||||
"""));
|
||||
// @formatter:on
|
||||
}
|
||||
|
||||
@Test
|
||||
void globalAdmin_canFindSepaMandateByName() {
|
||||
|
||||
RestAssured // @formatter:off
|
||||
.given()
|
||||
.header("current-subject", "superuser-alex@hostsharing.net")
|
||||
.port(port)
|
||||
.when()
|
||||
.get("http://localhost/api/hs/office/sepamandates?iban=DE02120300000000202051")
|
||||
.then().log().all().assertThat()
|
||||
.statusCode(200)
|
||||
.contentType("application/json")
|
||||
.log().all()
|
||||
.body("", lenientlyEquals("""
|
||||
[
|
||||
{
|
||||
"debitor": { "debitorNumber": 1000111 },
|
||||
"bankAccount": {
|
||||
"iban": "DE02120300000000202051",
|
||||
"holder": "First GmbH"
|
||||
},
|
||||
"reference": "ref-10001-11",
|
||||
"validFrom": "2022-10-01",
|
||||
"validTo": "2026-12-31"
|
||||
}
|
||||
]
|
||||
"""));
|
||||
// @formatter:on
|
||||
}
|
||||
}
|
||||
|
||||
@Nested
|
||||
|
Loading…
Reference in New Issue
Block a user