summaryrefslogtreecommitdiffstats
path: root/controller-server/src/test/java
diff options
context:
space:
mode:
authorBjørn Christian Seime <bjorncs@vespa.ai>2023-11-02 14:56:16 +0100
committerBjørn Christian Seime <bjorncs@vespa.ai>2023-11-02 14:56:16 +0100
commit0488bdf5c2b6712a08618c6a6e49d85997429c74 (patch)
treefec54ba58d3e61fae24e9c48fdbfa07e030b1e1a /controller-server/src/test/java
parente64583fa0b618da67189152c10310293221dd8bc (diff)
Extend `/application/v4` with API for approving terms of service
Diffstat (limited to 'controller-server/src/test/java')
-rw-r--r--controller-server/src/test/java/com/yahoo/vespa/hosted/controller/persistence/TenantSerializerTest.java2
-rw-r--r--controller-server/src/test/java/com/yahoo/vespa/hosted/controller/restapi/application/ApplicationApiCloudTest.java24
2 files changed, 24 insertions, 2 deletions
diff --git a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/persistence/TenantSerializerTest.java b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/persistence/TenantSerializerTest.java
index f2fc43933df..493d4df90a9 100644
--- a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/persistence/TenantSerializerTest.java
+++ b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/persistence/TenantSerializerTest.java
@@ -31,6 +31,7 @@ import com.yahoo.vespa.hosted.controller.tenant.TenantBilling;
import com.yahoo.vespa.hosted.controller.tenant.TenantContact;
import com.yahoo.vespa.hosted.controller.tenant.TenantContacts;
import com.yahoo.vespa.hosted.controller.tenant.TenantInfo;
+import com.yahoo.vespa.hosted.controller.tenant.TermsOfServiceApproval;
import org.junit.jupiter.api.Test;
import java.net.URI;
@@ -240,6 +241,7 @@ public class TenantSerializerTest {
.withPurchaseOrder(new PurchaseOrder("PO42"))
.withTaxId(new TaxId("NO", "no_vat", "123456789MVA"))
.withInvoiceEmail(new Email("billing@mycomp.any", false))
+ .withToSApproval(new TermsOfServiceApproval(Instant.ofEpochMilli(1234L), new SimplePrincipal("ceo@mycomp.any")))
);
Slime slime = new Slime();
diff --git a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/restapi/application/ApplicationApiCloudTest.java b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/restapi/application/ApplicationApiCloudTest.java
index f8ae7c8ea50..3c57f812a48 100644
--- a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/restapi/application/ApplicationApiCloudTest.java
+++ b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/restapi/application/ApplicationApiCloudTest.java
@@ -112,7 +112,11 @@ public class ApplicationApiCloudTest extends ControllerContainerCloudTest {
"code": ""
},
"purchaseOrder":"",
- "invoiceEmail":""
+ "invoiceEmail":"",
+ "tosApproval": {
+ "at": "",
+ "by": ""
+ }
}
""";
var request = request("/application/v4/tenant/scoober/info/billing", GET)
@@ -143,6 +147,10 @@ public class ApplicationApiCloudTest extends ControllerContainerCloudTest {
.roles(Set.of(Role.administrator(tenantName)));
tester.assertResponse(updateRequest, "{\"message\":\"Tenant info updated\"}", 200);
+ var approveToSRequest = request("/application/v4/tenant/scoober/terms-of-service", POST)
+ .data("{}").roles(Set.of(Role.administrator(tenantName)));
+ tester.assertResponse(approveToSRequest, "{\"message\":\"Terms of service approved by user@test\"}", 200);
+
expectedResponse = """
{
"contact": {
@@ -158,6 +166,10 @@ public class ApplicationApiCloudTest extends ControllerContainerCloudTest {
},
"purchaseOrder":"PO9001",
"invoiceEmail":"billing@mycomp.any",
+ "tosApproval": {
+ "at": "2020-09-13T12:26:40Z",
+ "by": "user@test"
+ },
"address": {
"addressLines":"addressLines",
"postalCodeOrZip":"postalCodeOrZip",
@@ -245,7 +257,11 @@ public class ApplicationApiCloudTest extends ControllerContainerCloudTest {
"code": ""
},
"purchaseOrder":"",
- "invoiceEmail":""
+ "invoiceEmail":"",
+ "tosApproval": {
+ "at": "",
+ "by": ""
+ }
},
"contacts": [
{"audiences":["tenant"],"email":"contact1@example.com","emailVerified":false}
@@ -287,6 +303,10 @@ public class ApplicationApiCloudTest extends ControllerContainerCloudTest {
"city":"city",
"stateRegionProvince":"stateRegionProvince",
"country":"country"
+ },
+ "tosApproval": {
+ "at": "",
+ "by": ""
}
},
"contacts": [