diff options
Diffstat (limited to 'config-provisioning/src/test')
23 files changed, 65 insertions, 26 deletions
diff --git a/config-provisioning/src/test/java/com/yahoo/config/provision/ApplicationIdTest.java b/config-provisioning/src/test/java/com/yahoo/config/provision/ApplicationIdTest.java index c4896a8d78b..f137c058415 100644 --- a/config-provisioning/src/test/java/com/yahoo/config/provision/ApplicationIdTest.java +++ b/config-provisioning/src/test/java/com/yahoo/config/provision/ApplicationIdTest.java @@ -1,4 +1,4 @@ -// Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. +// Copyright Vespa.ai. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. package com.yahoo.config.provision; import com.yahoo.cloud.config.ApplicationIdConfig; diff --git a/config-provisioning/src/test/java/com/yahoo/config/provision/ApplicationNameTest.java b/config-provisioning/src/test/java/com/yahoo/config/provision/ApplicationNameTest.java index d18ab211f9b..303b537d81f 100644 --- a/config-provisioning/src/test/java/com/yahoo/config/provision/ApplicationNameTest.java +++ b/config-provisioning/src/test/java/com/yahoo/config/provision/ApplicationNameTest.java @@ -1,4 +1,4 @@ -// Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. +// Copyright Vespa.ai. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. package com.yahoo.config.provision; /** diff --git a/config-provisioning/src/test/java/com/yahoo/config/provision/CapacityTest.java b/config-provisioning/src/test/java/com/yahoo/config/provision/CapacityTest.java index b3d2e0afa7d..f9624605131 100644 --- a/config-provisioning/src/test/java/com/yahoo/config/provision/CapacityTest.java +++ b/config-provisioning/src/test/java/com/yahoo/config/provision/CapacityTest.java @@ -1,4 +1,4 @@ -// Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. +// Copyright Vespa.ai. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. package com.yahoo.config.provision; import org.junit.jupiter.api.Test; diff --git a/config-provisioning/src/test/java/com/yahoo/config/provision/CloudAccountTest.java b/config-provisioning/src/test/java/com/yahoo/config/provision/CloudAccountTest.java index 2a994ac607e..c9230feaa6d 100644 --- a/config-provisioning/src/test/java/com/yahoo/config/provision/CloudAccountTest.java +++ b/config-provisioning/src/test/java/com/yahoo/config/provision/CloudAccountTest.java @@ -1,4 +1,4 @@ -// Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. +// Copyright Vespa.ai. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. package com.yahoo.config.provision; import org.junit.jupiter.api.Test; diff --git a/config-provisioning/src/test/java/com/yahoo/config/provision/CloudNameTest.java b/config-provisioning/src/test/java/com/yahoo/config/provision/CloudNameTest.java index b030233d459..b2876469a69 100644 --- a/config-provisioning/src/test/java/com/yahoo/config/provision/CloudNameTest.java +++ b/config-provisioning/src/test/java/com/yahoo/config/provision/CloudNameTest.java @@ -1,4 +1,4 @@ -// Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. +// Copyright Vespa.ai. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. package com.yahoo.config.provision; import org.junit.jupiter.api.Test; diff --git a/config-provisioning/src/test/java/com/yahoo/config/provision/ClusterMembershipTest.java b/config-provisioning/src/test/java/com/yahoo/config/provision/ClusterMembershipTest.java index 292aec60e39..f22b980a21d 100644 --- a/config-provisioning/src/test/java/com/yahoo/config/provision/ClusterMembershipTest.java +++ b/config-provisioning/src/test/java/com/yahoo/config/provision/ClusterMembershipTest.java @@ -1,4 +1,4 @@ -// Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. +// Copyright Vespa.ai. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. package com.yahoo.config.provision; import com.yahoo.component.Vtag; diff --git a/config-provisioning/src/test/java/com/yahoo/config/provision/ClusterResourcesTest.java b/config-provisioning/src/test/java/com/yahoo/config/provision/ClusterResourcesTest.java index 06b5dd472d6..fec5b515d0a 100644 --- a/config-provisioning/src/test/java/com/yahoo/config/provision/ClusterResourcesTest.java +++ b/config-provisioning/src/test/java/com/yahoo/config/provision/ClusterResourcesTest.java @@ -1,4 +1,4 @@ -// Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. +// Copyright Vespa.ai. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. package com.yahoo.config.provision; import org.junit.jupiter.api.Test; diff --git a/config-provisioning/src/test/java/com/yahoo/config/provision/ClusterSpecTest.java b/config-provisioning/src/test/java/com/yahoo/config/provision/ClusterSpecTest.java index 21118266ce0..d6d7d40586f 100644 --- a/config-provisioning/src/test/java/com/yahoo/config/provision/ClusterSpecTest.java +++ b/config-provisioning/src/test/java/com/yahoo/config/provision/ClusterSpecTest.java @@ -1,4 +1,4 @@ -// Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. +// Copyright Vespa.ai. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. package com.yahoo.config.provision; import com.yahoo.component.Version; diff --git a/config-provisioning/src/test/java/com/yahoo/config/provision/DockerImageTest.java b/config-provisioning/src/test/java/com/yahoo/config/provision/DockerImageTest.java index 36cc83f91b6..99be5735447 100644 --- a/config-provisioning/src/test/java/com/yahoo/config/provision/DockerImageTest.java +++ b/config-provisioning/src/test/java/com/yahoo/config/provision/DockerImageTest.java @@ -1,4 +1,4 @@ -// Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. +// Copyright Vespa.ai. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. package com.yahoo.config.provision; import org.junit.jupiter.api.Test; diff --git a/config-provisioning/src/test/java/com/yahoo/config/provision/HostFilterTest.java b/config-provisioning/src/test/java/com/yahoo/config/provision/HostFilterTest.java index e8ad99ff0d3..87165c0afef 100644 --- a/config-provisioning/src/test/java/com/yahoo/config/provision/HostFilterTest.java +++ b/config-provisioning/src/test/java/com/yahoo/config/provision/HostFilterTest.java @@ -1,4 +1,4 @@ -// Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. +// Copyright Vespa.ai. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. package com.yahoo.config.provision; import com.yahoo.component.Vtag; diff --git a/config-provisioning/src/test/java/com/yahoo/config/provision/HostNameTest.java b/config-provisioning/src/test/java/com/yahoo/config/provision/HostNameTest.java index fe42e71682b..8a7002cc90a 100644 --- a/config-provisioning/src/test/java/com/yahoo/config/provision/HostNameTest.java +++ b/config-provisioning/src/test/java/com/yahoo/config/provision/HostNameTest.java @@ -1,4 +1,4 @@ -// Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. +// Copyright Vespa.ai. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. package com.yahoo.config.provision; import org.junit.jupiter.api.Test; diff --git a/config-provisioning/src/test/java/com/yahoo/config/provision/IdentifierTestBase.java b/config-provisioning/src/test/java/com/yahoo/config/provision/IdentifierTestBase.java index 1fd4c2e06ce..c85ec4eae9a 100644 --- a/config-provisioning/src/test/java/com/yahoo/config/provision/IdentifierTestBase.java +++ b/config-provisioning/src/test/java/com/yahoo/config/provision/IdentifierTestBase.java @@ -1,4 +1,4 @@ -// Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. +// Copyright Vespa.ai. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. package com.yahoo.config.provision; import org.junit.jupiter.api.Test; diff --git a/config-provisioning/src/test/java/com/yahoo/config/provision/InstanceNameTest.java b/config-provisioning/src/test/java/com/yahoo/config/provision/InstanceNameTest.java index c4767f1e4ba..3c9e228b6cb 100644 --- a/config-provisioning/src/test/java/com/yahoo/config/provision/InstanceNameTest.java +++ b/config-provisioning/src/test/java/com/yahoo/config/provision/InstanceNameTest.java @@ -1,4 +1,4 @@ -// Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. +// Copyright Vespa.ai. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. package com.yahoo.config.provision; /** diff --git a/config-provisioning/src/test/java/com/yahoo/config/provision/IntRangeTestCase.java b/config-provisioning/src/test/java/com/yahoo/config/provision/IntRangeTestCase.java index bdec9fe33a5..ee1c8daa213 100644 --- a/config-provisioning/src/test/java/com/yahoo/config/provision/IntRangeTestCase.java +++ b/config-provisioning/src/test/java/com/yahoo/config/provision/IntRangeTestCase.java @@ -1,3 +1,4 @@ +// Copyright Vespa.ai. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. package com.yahoo.config.provision; import org.junit.jupiter.api.Test; diff --git a/config-provisioning/src/test/java/com/yahoo/config/provision/NodeFlavorsTest.java b/config-provisioning/src/test/java/com/yahoo/config/provision/NodeFlavorsTest.java index 5ab6aa64516..8eceae18ca2 100644 --- a/config-provisioning/src/test/java/com/yahoo/config/provision/NodeFlavorsTest.java +++ b/config-provisioning/src/test/java/com/yahoo/config/provision/NodeFlavorsTest.java @@ -1,4 +1,4 @@ -// Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. +// Copyright Vespa.ai. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. package com.yahoo.config.provision; import com.yahoo.config.provisioning.FlavorsConfig; diff --git a/config-provisioning/src/test/java/com/yahoo/config/provision/NodeResourcesTest.java b/config-provisioning/src/test/java/com/yahoo/config/provision/NodeResourcesTest.java index 71d20e5bbd2..65ec070d744 100644 --- a/config-provisioning/src/test/java/com/yahoo/config/provision/NodeResourcesTest.java +++ b/config-provisioning/src/test/java/com/yahoo/config/provision/NodeResourcesTest.java @@ -1,22 +1,27 @@ -// Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. +// Copyright Vespa.ai. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. package com.yahoo.config.provision; +import com.yahoo.config.provision.NodeResources.Architecture; +import com.yahoo.config.provision.NodeResources.DiskSpeed; +import com.yahoo.config.provision.NodeResources.GpuResources; +import com.yahoo.config.provision.NodeResources.StorageType; import org.junit.jupiter.api.Test; import java.util.function.Supplier; import static org.junit.jupiter.api.Assertions.assertEquals; import static org.junit.jupiter.api.Assertions.assertFalse; +import static org.junit.jupiter.api.Assertions.assertThrows; import static org.junit.jupiter.api.Assertions.assertTrue; import static org.junit.jupiter.api.Assertions.fail; /** * @author bratseth */ -public class NodeResourcesTest { +class NodeResourcesTest { @Test - public void testCost() { + void testCost() { assertEquals(5.408, new NodeResources(32, 128, 1200, 1).cost(), 0.0001); } @@ -81,7 +86,40 @@ public class NodeResourcesTest { } @Test - public void testJoiningResources() { + void testSpecifyFully() { + NodeResources empty = new NodeResources(0, 0, 0, 0).with(DiskSpeed.any); + + assertEquals(0, empty.withUnspecifiedFieldsFrom(empty).vcpu()); + assertEquals(3, empty.withUnspecifiedFieldsFrom(empty.withVcpu(3)).vcpu()); + assertEquals(2, empty.withVcpu(2).withUnspecifiedFieldsFrom(empty.withVcpu(3)).vcpu()); + + assertEquals(0, empty.withUnspecifiedFieldsFrom(empty).memoryGb()); + assertEquals(3, empty.withUnspecifiedFieldsFrom(empty.withMemoryGb(3)).memoryGb()); + assertEquals(2, empty.withMemoryGb(2).withUnspecifiedFieldsFrom(empty.withMemoryGb(3)).memoryGb()); + + assertEquals(0, empty.withUnspecifiedFieldsFrom(empty).diskGb()); + assertEquals(3, empty.withUnspecifiedFieldsFrom(empty.withDiskGb(3)).diskGb()); + assertEquals(2, empty.withDiskGb(2).withUnspecifiedFieldsFrom(empty.withDiskGb(3)).diskGb()); + + assertEquals(0, empty.withUnspecifiedFieldsFrom(empty).bandwidthGbps()); + assertEquals(3, empty.withUnspecifiedFieldsFrom(empty.withBandwidthGbps(3)).bandwidthGbps()); + assertEquals(2, empty.withBandwidthGbps(2).withUnspecifiedFieldsFrom(empty.withBandwidthGbps(3)).bandwidthGbps()); + + assertEquals(Architecture.any, empty.withUnspecifiedFieldsFrom(empty).architecture()); + assertEquals(Architecture.arm64, empty.withUnspecifiedFieldsFrom(empty.with(Architecture.arm64)).architecture()); + assertEquals(Architecture.x86_64, empty.with(Architecture.x86_64).withUnspecifiedFieldsFrom(empty.with(Architecture.arm64)).architecture()); + + assertEquals(DiskSpeed.any, empty.withUnspecifiedFieldsFrom(empty).diskSpeed()); + assertEquals(DiskSpeed.fast, empty.withUnspecifiedFieldsFrom(empty.with(DiskSpeed.fast)).diskSpeed()); + assertEquals(DiskSpeed.slow, empty.with(DiskSpeed.slow).withUnspecifiedFieldsFrom(empty.with(DiskSpeed.fast)).diskSpeed()); + + assertEquals(StorageType.any, empty.withUnspecifiedFieldsFrom(empty).storageType()); + assertEquals(StorageType.local, empty.withUnspecifiedFieldsFrom(empty.with(StorageType.local)).storageType()); + assertEquals(StorageType.remote, empty.with(StorageType.remote).withUnspecifiedFieldsFrom(empty.with(StorageType.local)).storageType()); + } + + @Test + void testJoiningResources() { var resources = new NodeResources(1, 2, 3, 1, NodeResources.DiskSpeed.fast, NodeResources.StorageType.local, diff --git a/config-provisioning/src/test/java/com/yahoo/config/provision/RegionTest.java b/config-provisioning/src/test/java/com/yahoo/config/provision/RegionTest.java index 10857de9146..faeb1d328c1 100644 --- a/config-provisioning/src/test/java/com/yahoo/config/provision/RegionTest.java +++ b/config-provisioning/src/test/java/com/yahoo/config/provision/RegionTest.java @@ -1,4 +1,4 @@ -// Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. +// Copyright Vespa.ai. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. package com.yahoo.config.provision; /** diff --git a/config-provisioning/src/test/java/com/yahoo/config/provision/SystemNameTest.java b/config-provisioning/src/test/java/com/yahoo/config/provision/SystemNameTest.java index f0656f84a07..2db395caece 100644 --- a/config-provisioning/src/test/java/com/yahoo/config/provision/SystemNameTest.java +++ b/config-provisioning/src/test/java/com/yahoo/config/provision/SystemNameTest.java @@ -1,4 +1,4 @@ -// Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. +// Copyright Vespa.ai. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. package com.yahoo.config.provision; import org.junit.jupiter.api.Test; @@ -23,4 +23,4 @@ public class SystemNameTest { assertEquals(Set.of(SystemName.cd, SystemName.PublicCd), SystemName.allOf(SystemName::isCd)); assertEquals(Set.of(SystemName.PublicCd, SystemName.Public), SystemName.allOf(SystemName::isPublic)); } -}
\ No newline at end of file +} diff --git a/config-provisioning/src/test/java/com/yahoo/config/provision/TagsTest.java b/config-provisioning/src/test/java/com/yahoo/config/provision/TagsTest.java index a20e674c66e..cbe890c2cdf 100644 --- a/config-provisioning/src/test/java/com/yahoo/config/provision/TagsTest.java +++ b/config-provisioning/src/test/java/com/yahoo/config/provision/TagsTest.java @@ -1,4 +1,4 @@ -// Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. +// Copyright Vespa.ai. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. package com.yahoo.config.provision; import org.junit.jupiter.api.Test; diff --git a/config-provisioning/src/test/java/com/yahoo/config/provision/TenantTest.java b/config-provisioning/src/test/java/com/yahoo/config/provision/TenantTest.java index a68ea952475..0dfb920bcf7 100644 --- a/config-provisioning/src/test/java/com/yahoo/config/provision/TenantTest.java +++ b/config-provisioning/src/test/java/com/yahoo/config/provision/TenantTest.java @@ -1,4 +1,4 @@ -// Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. +// Copyright Vespa.ai. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. package com.yahoo.config.provision; import com.yahoo.test.TotalOrderTester; diff --git a/config-provisioning/src/test/java/com/yahoo/config/provision/ZoneIdTest.java b/config-provisioning/src/test/java/com/yahoo/config/provision/ZoneIdTest.java index 4fd1b1bbc26..a2d33f8ed00 100644 --- a/config-provisioning/src/test/java/com/yahoo/config/provision/ZoneIdTest.java +++ b/config-provisioning/src/test/java/com/yahoo/config/provision/ZoneIdTest.java @@ -1,4 +1,4 @@ -// Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. +// Copyright Vespa.ai. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. package com.yahoo.config.provision; import com.yahoo.config.provision.zone.ZoneId; diff --git a/config-provisioning/src/test/java/com/yahoo/config/provision/serialization/AllocatedHostsSerializerTest.java b/config-provisioning/src/test/java/com/yahoo/config/provision/serialization/AllocatedHostsSerializerTest.java index 0cba953e8f5..a38b072fa2d 100644 --- a/config-provisioning/src/test/java/com/yahoo/config/provision/serialization/AllocatedHostsSerializerTest.java +++ b/config-provisioning/src/test/java/com/yahoo/config/provision/serialization/AllocatedHostsSerializerTest.java @@ -1,4 +1,4 @@ -// Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. +// Copyright Vespa.ai. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. package com.yahoo.config.provision.serialization; import com.yahoo.component.Version; diff --git a/config-provisioning/src/test/java/com/yahoo/config/provision/zone/NodeSliceTest.java b/config-provisioning/src/test/java/com/yahoo/config/provision/zone/NodeSliceTest.java index b13eba5fa32..d7bc6126f9c 100644 --- a/config-provisioning/src/test/java/com/yahoo/config/provision/zone/NodeSliceTest.java +++ b/config-provisioning/src/test/java/com/yahoo/config/provision/zone/NodeSliceTest.java @@ -1,4 +1,4 @@ -// Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. +// Copyright Vespa.ai. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. package com.yahoo.config.provision.zone; import org.junit.jupiter.api.Test; |