diff --git a/test/integration/conftest.py b/test/integration/conftest.py index 6470d9df1..8cdc7dc5c 100644 --- a/test/integration/conftest.py +++ b/test/integration/conftest.py @@ -32,7 +32,7 @@ ) from linode_api4.errors import ApiError from linode_api4.linode_client import LinodeClient, MonitorClient -from linode_api4.objects import Region +from linode_api4.objects import Capability, Region ENV_TOKEN_NAME = "LINODE_TOKEN" ENV_API_URL_NAME = "LINODE_API_URL" @@ -42,10 +42,10 @@ SKIP_E2E_FIREWALL = "SKIP_E2E_FIREWALL" ALL_ACCOUNT_AVAILABILITIES = { - "Linodes", - "NodeBalancers", - "Block Storage", - "Kubernetes", + Capability.linodes, + Capability.nodebalancers, + Capability.block_storage, + Capability.lke, } logger = logging.getLogger(__name__) @@ -61,7 +61,7 @@ def get_api_url(): def get_regions( client: LinodeClient, - capabilities: Optional[Set[str]] = None, + capabilities: Optional[Set[Capability]] = None, site_type: Optional[str] = None, ): region_override = os.environ.get(ENV_REGION_OVERRIDE) @@ -115,7 +115,9 @@ def get_regions( def get_region( - client: LinodeClient, capabilities: Set[str] = None, site_type: str = "core" + client: LinodeClient, + capabilities: Optional[Set[Capability]] = None, + site_type: str = "core", ): return random.choice(get_regions(client, capabilities, site_type)) @@ -223,7 +225,11 @@ def create_inbound_rule(ipv4_address, ipv6_address): def create_linode(test_linode_client, e2e_test_firewall): client = test_linode_client - region = get_region(client, {"Linodes", "Cloud Firewall"}, site_type="core") + region = get_region( + client, + {Capability.linodes, Capability.firewall}, + site_type="core", + ) label = get_test_label(length=8) linode_instance = client.linode.instance_create( @@ -244,7 +250,11 @@ def create_linode(test_linode_client, e2e_test_firewall): def create_linode_for_pass_reset(test_linode_client, e2e_test_firewall): client = test_linode_client - region = get_region(client, {"Linodes", "Cloud Firewall"}, site_type="core") + region = get_region( + client, + {Capability.linodes, Capability.firewall}, + site_type="core", + ) label = get_test_label(length=8) password = "aComplex@Password123" @@ -337,7 +347,11 @@ def get_domain_status(): @pytest.fixture(scope="session") def test_volume(test_linode_client): client = test_linode_client - region = get_region(client, {"Linodes", "Cloud Firewall"}, site_type="core") + region = get_region( + client, + {Capability.linodes, Capability.firewall}, + site_type="core", + ) label = get_test_label(length=8) volume = client.volume_create(label=label, region=region) @@ -356,7 +370,7 @@ def get_volume_status(): @pytest.fixture(scope="session") def test_volume_with_encryption(test_linode_client): client = test_linode_client - region = get_region(client, {"Block Storage Encryption"}) + region = get_region(client, {Capability.blockstorage_encryption}) label = get_test_label(length=8) volume = client.volume_create( @@ -388,7 +402,8 @@ def test_nodebalancer(test_linode_client): label = get_test_label(length=8) nodebalancer = client.nodebalancer_create( - region=get_region(client, capabilities={"NodeBalancers"}), label=label + region=get_region(client, capabilities={Capability.nodebalancers}), + label=label, ) yield nodebalancer @@ -475,11 +490,11 @@ def create_vpc(test_linode_client): region=get_region( test_linode_client, { - "VPCs", - "VPC IPv6 Stack", - "Linode Interfaces", - "Custom VPC IPv4 Ranges", - "Linodes", + Capability.vpcs, + Capability.vpc_ipv6_stack, + Capability.linode_interfaces, + Capability.vpc_custom_ipv4_ranges, + Capability.linodes, }, ), description="test description", @@ -497,7 +512,12 @@ def create_vpc_with_rdma_type(test_linode_client): # GPUDirect RDMA capability not available for now region = get_region( - test_linode_client, {"VPCs", "VPC IPv6 Stack", "Linode Interfaces"} + test_linode_client, + { + Capability.vpcs, + Capability.vpc_ipv6_stack, + Capability.linode_interfaces, + }, ) vpc = client.vpcs.create( @@ -567,7 +587,10 @@ def create_vpc_with_ipv4(test_linode_client): vpc = client.vpcs.create( label=get_test_label(length=10), - region=get_region(client, {"VPCs", "Custom VPC IPv4 Ranges"}), + region=get_region( + client, + {Capability.vpcs, Capability.vpc_custom_ipv4_ranges}, + ), description="integration test vpc with ipv4", ipv4=[{"range": "10.0.0.0/8"}], ) @@ -587,13 +610,13 @@ def create_multiple_vpcs(test_linode_client): vpc_1 = client.vpcs.create( label, - get_region(test_linode_client, {"VPCs"}), + get_region(test_linode_client, {Capability.vpcs}), description="test description", ) vpc_2 = client.vpcs.create( label_2, - get_region(test_linode_client, {"VPCs"}), + get_region(test_linode_client, {Capability.vpcs}), description="test description", ) @@ -612,7 +635,7 @@ def create_placement_group(test_linode_client): pg = client.placement.group_create( label, - get_region(test_linode_client, {"Placement Group"}), + get_region(test_linode_client, {Capability.placement_group}), PlacementGroupType.anti_affinity_local, PlacementGroupPolicy.flexible, ) @@ -652,7 +675,11 @@ def pytest_configure(config): @pytest.fixture(scope="session") def linode_for_vlan_tests(test_linode_client, e2e_test_firewall): client = test_linode_client - region = get_region(client, {"Linodes", "Vlans"}, site_type="core") + region = get_region( + client, + {Capability.linodes, Capability.vlans}, + site_type="core", + ) label = get_test_label(length=8) linode_instance = client.linode.instance_create( @@ -811,7 +838,11 @@ def test_monitor_client(get_monitor_token_for_db_entities): @pytest.fixture def create_reserved_ip(test_linode_client): client = test_linode_client - region = get_region(client, {"Linodes", "Cloud Firewall"}, site_type="core") + region = get_region( + client, + {Capability.linodes, Capability.firewall}, + site_type="core", + ) reserved_ip = client.networking.reserved_ip_create( region=region, tags=["test"] ) diff --git a/test/integration/filters/fixtures.py b/test/integration/filters/fixtures.py index e753236dd..6a805a853 100644 --- a/test/integration/filters/fixtures.py +++ b/test/integration/filters/fixtures.py @@ -3,6 +3,8 @@ import pytest +from linode_api4.objects import Capability + @pytest.fixture(scope="package") def domain_instance(test_linode_client): @@ -23,7 +25,10 @@ def lke_cluster_instance(test_linode_client): node_type = test_linode_client.linode.types()[1] # g6-standard-1 version = test_linode_client.lke.versions()[0] - region = get_region(test_linode_client, {"Kubernetes", "Disk Encryption"}) + region = get_region( + test_linode_client, + {Capability.lke, Capability.disk_encryption}, + ) node_pool = test_linode_client.lke.node_pool(node_type, 3) label = get_test_label() + "_cluster" diff --git a/test/integration/linode_client/test_linode_client.py b/test/integration/linode_client/test_linode_client.py index 0cacdf437..b4fe95787 100644 --- a/test/integration/linode_client/test_linode_client.py +++ b/test/integration/linode_client/test_linode_client.py @@ -6,7 +6,12 @@ import pytest from linode_api4 import ApiError -from linode_api4.objects import ConfigInterface, ObjectStorageKeys, Region +from linode_api4.objects import ( + Capability, + ConfigInterface, + ObjectStorageKeys, + Region, +) def is_tag_created(client, tag_label): @@ -19,7 +24,11 @@ def is_tag_created(client, tag_label): @pytest.fixture(scope="session") def setup_client_and_linode(test_linode_client, e2e_test_firewall): client = test_linode_client - region = get_region(client, {"Kubernetes", "NodeBalancers"}, "core").id + region = get_region( + client, + {Capability.lke, Capability.nodebalancers}, + "core", + ).id label = get_test_label() @@ -228,7 +237,7 @@ def test_get_account_settings(test_linode_client): # LinodeGroupTests def test_create_linode_instance_without_image(test_linode_client): client = test_linode_client - region = get_region(client, {"Linodes"}, "core").id + region = get_region(client, {Capability.linodes}, "core").id label = get_test_label() linode_instance = client.linode.instance_create( @@ -252,7 +261,11 @@ def test_create_linode_instance_with_image(setup_client_and_linode): def test_create_linode_with_interfaces(test_linode_client): client = test_linode_client - region = get_region(client, {"Vlans", "Linodes"}, site_type="core").id + region = get_region( + client, + {Capability.vlans, Capability.linodes}, + site_type="core", + ).id label = get_test_label() linode_instance = client.linode.instance_create( @@ -325,7 +338,7 @@ def test_cluster_create_with_api_objects(test_linode_client): client = test_linode_client node_type = client.linode.types()[1] # g6-standard-1 version = client.lke.versions()[0] - region = get_region(client, {"Kubernetes"}) + region = get_region(client, {Capability.lke}) node_pool = client.lke.node_pool(node_type, 3) label = get_test_label() @@ -342,7 +355,7 @@ def test_cluster_create_with_api_objects(test_linode_client): def test_fails_to_create_cluster_with_invalid_version(test_linode_client): invalid_version = "a.12" client = test_linode_client - region = get_region(client, {"Kubernetes"}).id + region = get_region(client, {Capability.lke}).id with pytest.raises(ApiError, match="not valid") as exc_info: client.lke.cluster_create( diff --git a/test/integration/models/account/test_account.py b/test/integration/models/account/test_account.py index 2922b01fa..cb29f0de9 100644 --- a/test/integration/models/account/test_account.py +++ b/test/integration/models/account/test_account.py @@ -12,6 +12,7 @@ from linode_api4.objects import ( Account, AccountSettings, + Capability, ChildAccount, Event, Login, @@ -100,7 +101,11 @@ def test_update_maintenance_policy(test_linode_client): def test_latest_get_event(test_linode_client, e2e_test_firewall): client = test_linode_client - region = get_region(client, {"Linodes", "Cloud Firewall"}, site_type="core") + region = get_region( + client, + {Capability.linodes, Capability.firewall}, + site_type="core", + ) label = get_test_label() linode = client.linode.instance_create( diff --git a/test/integration/models/firewall/test_firewall.py b/test/integration/models/firewall/test_firewall.py index 9ccd90b05..7dd77622a 100644 --- a/test/integration/models/firewall/test_firewall.py +++ b/test/integration/models/firewall/test_firewall.py @@ -4,13 +4,17 @@ import pytest -from linode_api4.objects import Firewall, FirewallDevice +from linode_api4.objects import Capability, Firewall, FirewallDevice @pytest.fixture(scope="session") def linode_fw(test_linode_client): client = test_linode_client - region = get_region(client, {"Linodes", "Cloud Firewall"}, site_type="core") + region = get_region( + client, + {Capability.linodes, Capability.firewall}, + site_type="core", + ) label = get_test_label() linode_instance = client.linode.instance_create( diff --git a/test/integration/models/image/test_image.py b/test/integration/models/image/test_image.py index 56b1ecf0d..ff89fc692 100644 --- a/test/integration/models/image/test_image.py +++ b/test/integration/models/image/test_image.py @@ -6,7 +6,7 @@ import pytest from linode_api4 import LinodeClient -from linode_api4.objects import Image +from linode_api4.objects import Capability, Image DISALLOWED_IMAGE_REGIONS = { "gb-lon", @@ -30,7 +30,7 @@ def get_image_upload_regions(client: LinodeClient): region for region in get_regions( client, - capabilities={"Linodes", "Object Storage"}, + capabilities={Capability.linodes, Capability.object_storage}, site_type="core", ) if region.id not in DISALLOWED_IMAGE_REGIONS diff --git a/test/integration/models/linode/test_linode.py b/test/integration/models/linode/test_linode.py index 0d607223b..731d535aa 100644 --- a/test/integration/models/linode/test_linode.py +++ b/test/integration/models/linode/test_linode.py @@ -12,6 +12,7 @@ from linode_api4.errors import ApiError from linode_api4.objects import ( + Capability, Config, ConfigInterface, ConfigInterfaceIPv4, @@ -29,7 +30,11 @@ @pytest.fixture(scope="session") def linode_with_volume_firewall(test_linode_client): client = test_linode_client - region = get_region(client, {"Linodes", "Cloud Firewall"}, site_type="core") + region = get_region( + client, + {Capability.linodes, Capability.firewall}, + site_type="core", + ) label = get_test_label() rules = { @@ -75,7 +80,11 @@ def linode_with_volume_firewall(test_linode_client): @pytest.fixture(scope="function") def linode_for_legacy_interface_tests(test_linode_client, e2e_test_firewall): client = test_linode_client - region = get_region(client, {"Linodes", "Cloud Firewall"}, site_type="core") + region = get_region( + client, + {Capability.linodes, Capability.firewall}, + site_type="core", + ) label = get_test_label(length=8) linode_instance = client.linode.instance_create( @@ -158,7 +167,11 @@ def linode_for_vpu_tests(test_linode_client, e2e_test_firewall): @pytest.fixture def linode_for_disk_tests(test_linode_client, e2e_test_firewall): client = test_linode_client - region = get_region(client, {"Linodes", "Cloud Firewall"}, site_type="core") + region = get_region( + client, + {Capability.linodes, Capability.firewall}, + site_type="core", + ) label = get_test_label() linode_instance = client.linode.instance_create( @@ -192,7 +205,10 @@ def linode_for_disk_tests(test_linode_client, e2e_test_firewall): @pytest.fixture def linode_with_block_storage_encryption(test_linode_client, e2e_test_firewall): client = test_linode_client - region = get_region(client, {"Linodes", "Block Storage Encryption"}) + region = get_region( + client, + {Capability.linodes, Capability.blockstorage_encryption}, + ) label = get_test_label() linode_instance = client.linode.instance_create( @@ -212,7 +228,11 @@ def linode_with_block_storage_encryption(test_linode_client, e2e_test_firewall): @pytest.fixture def create_linode_for_long_running_tests(test_linode_client, e2e_test_firewall): client = test_linode_client - region = get_region(client, {"Linodes", "Cloud Firewall"}, site_type="core") + region = get_region( + client, + {Capability.linodes, Capability.firewall}, + site_type="core", + ) label = get_test_label() linode_instance = client.linode.instance_create( @@ -233,7 +253,7 @@ def create_linode_for_long_running_tests(test_linode_client, e2e_test_firewall): def linode_with_disk_encryption(test_linode_client, request): client = test_linode_client - target_region = get_region(client, {"Disk Encryption"}) + target_region = get_region(client, {Capability.disk_encryption}) label = get_test_label(length=8) disk_encryption = request.param @@ -257,7 +277,11 @@ def linode_with_disk_encryption(test_linode_client, request): def create_linode_with_authorized_key(test_linode_client, ssh_key_gen): client = test_linode_client - region = get_region(client, {"Linodes", "Cloud Firewall"}, site_type="core") + region = get_region( + client, + {Capability.linodes, Capability.firewall}, + site_type="core", + ) label = get_test_label(length=8) linode_instance = client.linode.instance_create( @@ -311,7 +335,7 @@ def test_linode_transfer(test_linode_client, linode_with_volume_firewall): def test_linode_rebuild(test_linode_client): client = test_linode_client - region = get_region(client, {"Disk Encryption"}) + region = get_region(client, {Capability.disk_encryption}) label = get_test_label() + "_rebuild" @@ -373,7 +397,11 @@ def test_update_linode(create_linode): def test_delete_linode(test_linode_client): client = test_linode_client - region = get_region(client, {"Linodes", "Cloud Firewall"}, site_type="core") + region = get_region( + client, + {Capability.linodes, Capability.firewall}, + site_type="core", + ) label = get_test_label() linode_instance = client.linode.instance_create( @@ -568,7 +596,7 @@ def test_linode_with_block_storage_encryption( linode_with_block_storage_encryption, ): linode = linode_with_block_storage_encryption - assert "Block Storage Encryption" in linode.capabilities + assert Capability.blockstorage_encryption in linode.capabilities def wait_for_disk_status(disk: Disk, timeout): @@ -648,9 +676,15 @@ def test_linode_ips(create_linode): def test_linode_initate_migration(test_linode_client, e2e_test_firewall): client = test_linode_client label = get_test_label() + "_migration" - region = get_region(client, {"Linodes", "Cloud Firewall"}, site_type="core") + region = get_region( + client, + {Capability.linodes, Capability.firewall}, + site_type="core", + ) region_migrate = get_region( - client, {"Linodes", "Cloud Firewall"}, site_type="core" + client, + {Capability.linodes, Capability.firewall}, + site_type="core", ) # Cannot migrate linode to the same region @@ -659,7 +693,9 @@ def test_linode_initate_migration(test_linode_client, e2e_test_firewall): break region_migrate = get_region( - client, {"Linodes", "Cloud Firewall"}, site_type="core" + client, + {Capability.linodes, Capability.firewall}, + site_type="core", ) else: pytest.skip("No alternative region to be used for linode migration") @@ -1186,7 +1222,11 @@ def test_delete_interface_containing_vpc( def test_create_linode_with_maintenance_policy(test_linode_client): client = test_linode_client - region = get_region(client, {"Linodes", "Cloud Firewall"}, site_type="core") + region = get_region( + client, + {Capability.linodes, Capability.firewall}, + site_type="core", + ) label = get_test_label() policies = client.maintenance.maintenance_policies() @@ -1233,7 +1273,11 @@ def test_expected_error_if_fields_authorized_users_authorized_keys_root_pass_are test_linode_client, ): client = test_linode_client - region = get_region(client, {"Linodes", "Cloud Firewall"}, site_type="core") + region = get_region( + client, + {Capability.linodes, Capability.firewall}, + site_type="core", + ) label = get_test_label(length=8) with pytest.raises(ValueError) as create_instance_error: diff --git a/test/integration/models/lke/test_lke.py b/test/integration/models/lke/test_lke.py index d5b21089e..69a3d0655 100644 --- a/test/integration/models/lke/test_lke.py +++ b/test/integration/models/lke/test_lke.py @@ -18,6 +18,7 @@ from linode_api4.common import RegionPrice from linode_api4.errors import ApiError from linode_api4.objects import ( + Capability, LKECluster, LKENodePool, LKENodePoolTaint, @@ -31,7 +32,10 @@ def lke_cluster(test_linode_client): node_type = test_linode_client.linode.types()[1] # g6-standard-1 version = test_linode_client.lke.versions()[0] - region = get_region(test_linode_client, {"Kubernetes", "Disk Encryption"}) + region = get_region( + test_linode_client, + {Capability.lke, Capability.disk_encryption}, + ) node_pools = test_linode_client.lke.node_pool(node_type, 3) label = get_test_label() + "_cluster" @@ -49,7 +53,7 @@ def lke_cluster(test_linode_client): def lke_cluster_with_acl(test_linode_client): node_type = test_linode_client.linode.types()[1] # g6-standard-1 version = test_linode_client.lke.versions()[0] - region = get_region(test_linode_client, {"Kubernetes"}) + region = get_region(test_linode_client, {Capability.lke}) node_pools = test_linode_client.lke.node_pool(node_type, 1) label = get_test_label() + "_cluster" @@ -79,7 +83,7 @@ def lke_cluster_with_labels_and_taints(test_linode_client): node_type = test_linode_client.linode.types()[1] # g6-standard-1 version = test_linode_client.lke.versions()[0] - region = get_region(test_linode_client, {"Kubernetes"}) + region = get_region(test_linode_client, {Capability.lke}) node_pools = test_linode_client.lke.node_pool( node_type, @@ -114,7 +118,10 @@ def lke_cluster_with_labels_and_taints(test_linode_client): def lke_cluster_with_apl(test_linode_client): version = test_linode_client.lke.versions()[0] - region = get_region(test_linode_client, {"Kubernetes", "Disk Encryption"}) + region = get_region( + test_linode_client, + {Capability.lke, Capability.disk_encryption}, + ) # NOTE: g6-dedicated-4 is the minimum APL-compatible Linode type node_pools = test_linode_client.lke.node_pool("g6-dedicated-4", 3) @@ -144,7 +151,8 @@ def lke_cluster_enterprise(e2e_test_firewall, test_linode_client): )[0] region = get_region( - test_linode_client, {"Kubernetes Enterprise", "Disk Encryption"} + test_linode_client, + {Capability.lke_e, Capability.disk_encryption}, ) node_pools = test_linode_client.lke.node_pool( diff --git a/test/integration/models/lock/test_lock.py b/test/integration/models/lock/test_lock.py index 31f89b992..a964eeced 100644 --- a/test/integration/models/lock/test_lock.py +++ b/test/integration/models/lock/test_lock.py @@ -6,7 +6,7 @@ import pytest -from linode_api4.objects import Lock, LockType +from linode_api4.objects import Capability, Lock, LockType @pytest.fixture(scope="function") @@ -15,7 +15,11 @@ def linode_for_lock(test_linode_client, e2e_test_firewall): Create a Linode instance for testing locks. """ client = test_linode_client - region = get_region(client, {"Linodes", "Cloud Firewall"}, site_type="core") + region = get_region( + client, + {Capability.linodes, Capability.firewall}, + site_type="core", + ) label = get_test_label(length=8) linode_instance = client.linode.instance_create( diff --git a/test/integration/models/monitor/test_monitor_logs.py b/test/integration/models/monitor/test_monitor_logs.py index 9d4148c17..cddc95961 100644 --- a/test/integration/models/monitor/test_monitor_logs.py +++ b/test/integration/models/monitor/test_monitor_logs.py @@ -11,6 +11,7 @@ from linode_api4 import LinodeClient, LogsStreamType, PaginatedList, Region from linode_api4.objects import ( + Capability, ObjectStorageACL, ObjectStorageBucket, ObjectStorageKeys, @@ -34,7 +35,7 @@ @pytest.fixture(scope="session") def region(test_linode_client: LinodeClient): - region = get_region(test_linode_client, {"Object Storage"}) + region = get_region(test_linode_client, {Capability.object_storage}) yield region diff --git a/test/integration/models/networking/test_networking.py b/test/integration/models/networking/test_networking.py index 18b6dabb1..de5b53f4c 100644 --- a/test/integration/models/networking/test_networking.py +++ b/test/integration/models/networking/test_networking.py @@ -17,6 +17,7 @@ from linode_api4 import ApiError, Instance, LinodeClient from linode_api4.objects import ( + Capability, Config, ConfigInterfaceIPv4, Firewall, @@ -35,7 +36,7 @@ base_url=get_api_url(), ca_path=get_api_ca_file(), ), - {"Linodes", "Cloud Firewall"}, + {Capability.linodes, Capability.firewall}, site_type="core", ) @@ -94,7 +95,7 @@ def create_linode_without_firewall(test_linode_client): """ client = test_linode_client - region = get_region(client, {"Cloud Firewall"}, "core").id + region = get_region(client, {Capability.firewall}, "core").id label = get_test_label() diff --git a/test/integration/models/nodebalancer/test_nodebalancer.py b/test/integration/models/nodebalancer/test_nodebalancer.py index 97e76e88f..8777cb791 100644 --- a/test/integration/models/nodebalancer/test_nodebalancer.py +++ b/test/integration/models/nodebalancer/test_nodebalancer.py @@ -11,6 +11,7 @@ from linode_api4 import ApiError, LinodeClient, NodeBalancer from linode_api4.objects import ( + Capability, NodeBalancerConfig, NodeBalancerNode, NodeBalancerType, @@ -24,7 +25,7 @@ base_url=get_api_url(), ca_path=get_api_ca_file(), ), - {"Linodes", "Cloud Firewall", "NodeBalancers"}, + {Capability.linodes, Capability.firewall, Capability.nodebalancers}, site_type="core", ) diff --git a/test/integration/models/placement/test_placement.py b/test/integration/models/placement/test_placement.py index 1a7e38e27..0badaa31e 100644 --- a/test/integration/models/placement/test_placement.py +++ b/test/integration/models/placement/test_placement.py @@ -13,6 +13,7 @@ PlacementGroupPolicy, PlacementGroupType, ) +from linode_api4.objects import Capability @pytest.mark.smoke @@ -76,7 +77,7 @@ def test_pg_migration( pg_outbound = client.placement.group_create( label_pg, - get_region(test_linode_client, {"Placement Group"}), + get_region(test_linode_client, {Capability.placement_group}), PlacementGroupType.anti_affinity_local, PlacementGroupPolicy.flexible, ) diff --git a/test/integration/models/sharegroups/test_sharegroups.py b/test/integration/models/sharegroups/test_sharegroups.py index e3ac79652..dcb23e574 100644 --- a/test/integration/models/sharegroups/test_sharegroups.py +++ b/test/integration/models/sharegroups/test_sharegroups.py @@ -5,6 +5,7 @@ import pytest from linode_api4.objects import ( + Capability, Image, ImageShareGroup, ImageShareGroupImagesToAdd, @@ -36,7 +37,11 @@ def wait_for_image_status( @pytest.fixture(scope="module") def sample_linode(test_linode_client, e2e_test_firewall): client = test_linode_client - region = get_region(client, {"Linodes", "Cloud Firewall"}, site_type="core") + region = get_region( + client, + {Capability.linodes, Capability.firewall}, + site_type="core", + ) label = get_test_label(length=8) linode_instance = client.linode.instance_create( diff --git a/test/integration/models/volume/test_blockstorage.py b/test/integration/models/volume/test_blockstorage.py index 69a60868b..08baa8614 100644 --- a/test/integration/models/volume/test_blockstorage.py +++ b/test/integration/models/volume/test_blockstorage.py @@ -2,12 +2,17 @@ from test.integration.helpers import get_test_label, retry_sending_request from linode_api4 import Instance +from linode_api4.objects import Capability def test_config_create_with_extended_volume_limit(test_linode_client): client = test_linode_client - region = get_region(client, {"Linodes", "Block Storage"}, site_type="core") + region = get_region( + client, + {Capability.linodes, Capability.block_storage}, + site_type="core", + ) label = get_test_label() linode = client.linode.instance_create( @@ -46,7 +51,11 @@ def test_config_create_with_extended_volume_limit(test_linode_client): def test_config_create_with_device_map(test_linode_client): client = test_linode_client - region = get_region(client, {"Linodes", "Block Storage"}, site_type="core") + region = get_region( + client, + {Capability.linodes, Capability.block_storage}, + site_type="core", + ) label = get_test_label() linode = client.linode.instance_create( diff --git a/test/integration/models/volume/test_volume.py b/test/integration/models/volume/test_volume.py index 7f9045e2e..94765f701 100644 --- a/test/integration/models/volume/test_volume.py +++ b/test/integration/models/volume/test_volume.py @@ -15,7 +15,7 @@ import pytest from linode_api4 import LinodeClient -from linode_api4.objects import RegionPrice, Volume, VolumeType +from linode_api4.objects import Capability, RegionPrice, Volume, VolumeType TEST_REGION = get_region( LinodeClient( @@ -23,7 +23,7 @@ base_url=get_api_url(), ca_path=get_api_ca_file(), ), - {"Linodes", "Cloud Firewall"}, + {Capability.linodes, Capability.firewall}, site_type="core", ) diff --git a/test/integration/models/vpc/test_vpc.py b/test/integration/models/vpc/test_vpc.py index de4a36e5a..5d9473b53 100644 --- a/test/integration/models/vpc/test_vpc.py +++ b/test/integration/models/vpc/test_vpc.py @@ -3,6 +3,7 @@ import pytest from linode_api4 import VPC, ApiError, VPCIPv4DefaultRange, VPCSubnet +from linode_api4.objects import Capability @pytest.mark.smoke @@ -60,7 +61,7 @@ def test_fails_create_vpc_invalid_data(test_linode_client): with pytest.raises(ApiError) as excinfo: test_linode_client.vpcs.create( label="invalid_label!!", - region=get_region(test_linode_client, {"VPCs"}), + region=get_region(test_linode_client, {Capability.vpcs}), description="test description", ) assert excinfo.value.status == 400 diff --git a/test/unit/linode_client_test.py b/test/unit/linode_client_test.py index 78a542210..c17be6006 100644 --- a/test/unit/linode_client_test.py +++ b/test/unit/linode_client_test.py @@ -10,6 +10,7 @@ ObjectStorageACL, ObjectStorageCluster, ) +from linode_api4.objects.region import Capability class LinodeClientGeneralTest(ClientBaseCase): @@ -46,11 +47,11 @@ def test_get_account(self): self.assertEqual( a.capabilities, [ - "Linodes", - "NodeBalancers", - "Block Storage", - "Object Storage", - "Linode Interfaces", + Capability.linodes, + Capability.nodebalancers, + Capability.block_storage, + Capability.object_storage, + Capability.linode_interfaces, ], ) @@ -66,21 +67,21 @@ def test_get_regions(self): self.assertEqual( region.capabilities, [ - "Linodes", - "NodeBalancers", - "Block Storage", - "Object Storage", - "Linode Interfaces", + Capability.linodes, + Capability.nodebalancers, + Capability.block_storage, + Capability.object_storage, + Capability.linode_interfaces, ], ) else: self.assertEqual( region.capabilities, [ - "Linodes", - "NodeBalancers", - "Block Storage", - "Linode Interfaces", + Capability.linodes, + Capability.nodebalancers, + Capability.block_storage, + Capability.linode_interfaces, ], ) self.assertEqual(region.status, "ok")