diff options
author | Harald Musum <musum@yahooinc.com> | 2022-10-24 13:20:53 +0200 |
---|---|---|
committer | Harald Musum <musum@yahooinc.com> | 2022-10-24 13:20:53 +0200 |
commit | 31fe16f40f493808a557a4339a101c2d25ec2698 (patch) | |
tree | cbd7af00927d4f603d35f0d5e202c30bfed6a60a /config-model | |
parent | 00b4145b4e010484982e24d53e0c086ad96568d9 (diff) |
Remove unused class left behind after earlier cleanups
Diffstat (limited to 'config-model')
-rw-r--r-- | config-model/src/test/java/com/yahoo/vespa/model/application/validation/AccessControlValidatorTestBase.java | 171 |
1 files changed, 0 insertions, 171 deletions
diff --git a/config-model/src/test/java/com/yahoo/vespa/model/application/validation/AccessControlValidatorTestBase.java b/config-model/src/test/java/com/yahoo/vespa/model/application/validation/AccessControlValidatorTestBase.java deleted file mode 100644 index 8ca973dc59f..00000000000 --- a/config-model/src/test/java/com/yahoo/vespa/model/application/validation/AccessControlValidatorTestBase.java +++ /dev/null @@ -1,171 +0,0 @@ -// Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. -package com.yahoo.vespa.model.application.validation; - -import com.yahoo.config.application.api.ApplicationPackage; -import com.yahoo.config.model.NullConfigModelRegistry; -import com.yahoo.config.model.deploy.DeployState; -import com.yahoo.config.model.deploy.TestProperties; -import com.yahoo.config.model.test.MockApplicationPackage; -import com.yahoo.config.provision.Zone; -import com.yahoo.vespa.model.VespaModel; -import org.junit.jupiter.api.Test; -import org.xml.sax.SAXException; - -import java.io.IOException; -import java.time.Instant; -import java.time.LocalDate; -import java.time.ZoneOffset; -import java.time.format.DateTimeFormatter; - -import static com.yahoo.config.model.test.TestUtil.joinLines; -import static com.yahoo.config.provision.Environment.prod; -import static org.junit.jupiter.api.Assertions.*; - -/** - * @author gjoranv - */ -public abstract class AccessControlValidatorTestBase { - - protected Validator validator; - protected Zone zone; - - private static String servicesXml(boolean addHandler, boolean protection) { - return joinLines("<services version='1.0'>", - " <container id='default' version='1.0'>", - addHandler ? httpHandlerXml : "", - " <http>", - " <filtering>", - " <access-control domain='foo' read='" + protection + "' write='" + protection + "' />", - " </filtering>", - " </http>", - " </container>", - "</services>"); - } - - private static final String httpHandlerXml = - joinLines(" <handler id='foo'>", - " <binding>http://foo/bar</binding>", - " </handler>"); - - @Test - void cluster_with_protection_passes_validation() throws IOException, SAXException { - DeployState deployState = deployState(servicesXml(true, true)); - VespaModel model = new VespaModel(new NullConfigModelRegistry(), deployState); - - validator.validate(model, deployState); - } - - @Test - void cluster_with_no_handlers_passes_validation_without_protection() throws IOException, SAXException { - DeployState deployState = deployState(servicesXml(false, false)); - VespaModel model = new VespaModel(new NullConfigModelRegistry(), deployState); - - validator.validate(model, deployState); - } - - @Test - void cluster_without_custom_components_passes_validation_without_protection() throws IOException, SAXException { - String servicesXml = joinLines("<services version='1.0'>", - " <container id='default' version='1.0' />", - "</services>"); - DeployState deployState = deployState(servicesXml); - VespaModel model = new VespaModel(new NullConfigModelRegistry(), deployState); - - validator.validate(model, deployState); - } - - @Test - void cluster_with_handler_fails_validation_without_protection() throws IOException, SAXException { - DeployState deployState = deployState(servicesXml(true, false)); - VespaModel model = new VespaModel(new NullConfigModelRegistry(), deployState); - - try { - validator.validate(model, deployState); - fail(); - } catch (IllegalArgumentException e) { - assertTrue(e.getMessage().contains("Access-control must be enabled")); - assertTrue(e.getMessage().contains("production zones: [default]")); - } - } - - @Test - void no_http_element_has_same_effect_as_no_write_protection() throws IOException, SAXException { - String servicesXml = joinLines("<services version='1.0'>", - " <container id='default' version='1.0'>", - httpHandlerXml, - " </container>", - "</services>"); - DeployState deployState = deployState(servicesXml); - VespaModel model = new VespaModel(new NullConfigModelRegistry(), deployState); - - try { - validator.validate(model, deployState); - fail(); - } catch (IllegalArgumentException e) { - assertTrue(e.getMessage().contains("Access-control must be enabled")); - assertTrue(e.getMessage().contains("production zones: [default]")); - } - } - - @Test - void cluster_with_mbus_handler_passes_validation_without_write_protection() throws IOException, SAXException { - String servicesXml = joinLines("<services version='1.0'>", - " <container id='default' version='1.0'>", - " <handler id='foo'>", - " <binding>mbus://*/foo</binding>", - " </handler>", - " </container>", - "</services>"); - DeployState deployState = deployState(servicesXml); - VespaModel model = new VespaModel(new NullConfigModelRegistry(), deployState); - - validator.validate(model, deployState); - } - - @Test - void write_protection_is_not_required_for_non_default_application_type() throws IOException, SAXException { - String servicesXml = joinLines("<services version='1.0' application-type='hosted-infrastructure'>", - " <container id='default' version='1.0'>", - httpHandlerXml, - " </container>", - "</services>"); - DeployState deployState = deployState(servicesXml); - VespaModel model = new VespaModel(new NullConfigModelRegistry(), deployState); - - validator.validate(model, deployState); - } - - @Test - void write_protection_is_not_required_with_validation_override() throws IOException, SAXException { - DeployState deployState = deployState(servicesXml(true, false), - "<validation-overrides><allow until='2000-01-30'>access-control</allow></validation-overrides>", - LocalDate.parse("2000-01-01", DateTimeFormatter.ISO_DATE).atStartOfDay().atZone(ZoneOffset.UTC).toInstant()); - VespaModel model = new VespaModel(new NullConfigModelRegistry(), deployState); - - validator.validate(model, deployState); - } - - private DeployState deployState(String servicesXml) { - return deployState(servicesXml, "<validation-overrides></validation-overrides>", Instant.now()); - } - - private DeployState deployState(String servicesXml, String validationOverrides, Instant now) { - ApplicationPackage app = new MockApplicationPackage.Builder() - .withServices(servicesXml) - .withValidationOverrides(validationOverrides) - .build(); - - DeployState.Builder builder = new DeployState.Builder() - .applicationPackage(app) - .zone(zone) - .properties(new TestProperties().setHostedVespa(true)) - .now(now); - final DeployState deployState = builder.build(); - - assertTrue(deployState.isHosted(), "Test must emulate a hosted deployment."); - assertEquals(prod, deployState.zone().environment(), "Test must emulate a prod environment."); - - return deployState; - } - -} |