Skip to content

Commit ebe8d96

Browse files
committed
Update tests after API changes on DevCloud
1 parent 3f867e3 commit ebe8d96

4 files changed

Lines changed: 26 additions & 31 deletions

File tree

test/integration/conftest.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -737,7 +737,7 @@ def create_reserved_ip(test_linode_client):
737737
region = get_region(client, {"Linodes", "Cloud Firewall"}, site_type="core")
738738
reserved_ip = client.networking.reserved_ip_create(
739739
region=region,
740-
tags=["test1"]
740+
tags=["test"]
741741
)
742742

743743
yield reserved_ip

test/integration/models/linode/interfaces/test_interfaces.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -417,6 +417,7 @@ def test_linode_interfaces_with_reserved_ips(test_linode_client, e2e_test_firewa
417417
assert len(linode_ips) == 1
418418
assert linode_ips[0].address == reserved_ip.address
419419
assert linode_ips[0].reserved == True
420+
# assert linode_ips[0].tags == ["test"] # TODO Does not work at the moment - during clarifications with API Team
420421
assert linode_ips[0].linode_id == linode.id
421422
assert linode_ips[0].assigned_entity.id == linode.id
422423
assert linode_ips[0].assigned_entity.type == "linode"
@@ -427,5 +428,6 @@ def test_linode_interfaces_with_reserved_ips(test_linode_client, e2e_test_firewa
427428
reserved_ips_list = client.networking.reserved_ips(ReservedIPAddress.address==reserved_ip.address)
428429
assert len(reserved_ips_list) == 1
429430
assert reserved_ips_list[0].reserved == True
431+
# assert linode_ips[0].tags == ["test"] # TODO Does not work at the moment - during clarifications with API Team
430432
assert reserved_ips_list[0].linode_id is None
431433
assert reserved_ips_list[0].assigned_entity is None

test/integration/models/networking/test_networking.py

Lines changed: 23 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
import ipaddress
2+
import requests
23
import time
34
from test.integration.conftest import (
45
get_api_ca_file,
@@ -394,7 +395,7 @@ def test_create_reserved_ip(request, test_linode_client, region, tags):
394395
request.addfinalizer(reserved_ip.delete)
395396

396397
verify_reserved_ip(reserved_ip)
397-
# assert reserved_ip.tags == tags # NOTE: Skipped as tags not available in the API yet
398+
assert reserved_ip.tags == tags if tags else reserved_ip.tags == []
398399

399400

400401
def test_create_reserved_ip_wo_region_fail(test_linode_client):
@@ -411,7 +412,6 @@ def test_create_reserved_ip_wo_region_fail(test_linode_client):
411412
assert "region is required" in error_msg
412413

413414

414-
@pytest.mark.skip # NOTE: Skipped as tags not available in the API yet
415415
def test_update_reserved_ip_tags(test_linode_client, create_reserved_ip):
416416
client = test_linode_client
417417
reserved_ip = create_reserved_ip
@@ -428,19 +428,18 @@ def test_update_reserved_ip_tags(test_linode_client, create_reserved_ip):
428428
def test_create_reserved_ip_assigned(test_linode_client, create_reserved_ip_assigned):
429429
client = test_linode_client
430430
linode, reserved_ip = create_reserved_ip_assigned
431-
432431
verify_reserved_ip_assigned(reserved_ip, linode)
433-
# assert reserved_ip.tags == tags # NOTE: Skipped as tags not available in the API yet
432+
assert sorted(reserved_ip.tags) == ["assigned", "test"]
434433

435-
ips_list = client.networking.ips()
436-
assert reserved_ip.address in [ip.address for ip in ips_list]
434+
# ips_list = client.networking.ips()
435+
# assert reserved_ip.address in [ip.address for ip in ips_list]
437436

438437
reserved_ips_list = client.networking.reserved_ips()
439438
assert reserved_ip.address in [ip.address for ip in reserved_ips_list]
440439

441-
# linode_ips = linode.ips.ipv4.public
442-
# assert len(linode_ips) == 2
443-
# assert any([ip.reserved for ip in linode_ips])
440+
linode_ips = linode.ips.ipv4.public
441+
assert len(linode_ips) == 2
442+
assert any([ip.reserved for ip in linode_ips])
444443

445444
reserved_ip.delete()
446445
reserved_ips_list = client.networking.reserved_ips()
@@ -449,25 +448,25 @@ def test_create_reserved_ip_assigned(test_linode_client, create_reserved_ip_assi
449448
reserved_ips_list = client.networking.reserved_ips(ReservedIPAddress.address==reserved_ip.address)
450449
assert len(reserved_ips_list) == 0
451450

452-
# delattr(linode, "_ips")
453-
# linode_ips = linode.ips.ipv4.public
454-
# assert len(linode_ips) == 2
455-
# assert not any([ip.reserved for ip in linode_ips])
456-
# assert not any([ip.tags for ip in linode_ips]) # Tags should be removed ???
451+
delattr(linode, "_ips")
452+
linode_ips = linode.ips.ipv4.public
453+
assert len(linode_ips) == 2
454+
assert not any([ip.reserved for ip in linode_ips])
455+
assert not any([ip.tags for ip in linode_ips]) # Tags should be removed
457456

458457

459458
def test_get_reserved_ip_types(test_linode_client, create_reserved_ip):
460-
# TODO: Currently it uses client (token), should not it be publicly accessible (no token required) ???
461459
client = test_linode_client
462-
types = client.networking.reserved_ip_types()
463-
assert types.only
460+
endpoint = client.base_url + "/networking/reserved/ips/types"
461+
types = requests.get(endpoint).json()["data"] # Pricing should be publicly available
464462

465-
pricing = types.first()
466-
assert pricing.id == "reserved-ipv4"
467-
assert pricing.label == "Reserved IPv4"
468-
assert pricing.price.hourly
469-
# assert pricing.price.monthly is None
470-
# assert pricing.region_prices == []
463+
assert isinstance(types, list)
464+
assert types[0]["id"] == "reserved-ipv4"
465+
assert types[0]["label"] == "Reserved IPv4"
466+
assert "hourly" in types[0]["price"]
467+
assert "monthly" in types[0]["price"]
468+
assert any(price != 0 for price in list(types[0]["price"].values()))
469+
assert isinstance(types[0]["region_prices"], list)
471470

472471

473472
@pytest.mark.smoke
@@ -486,7 +485,7 @@ def test_create_reserved_ip_with_allocate(test_linode_client, create_linode, res
486485
reserved_ip = client.networking.ip_allocate(reserved=reserved, linode=linode.id)
487486
verify_reserved_ip_assigned(reserved_ip, linode)
488487

489-
# assert reserved_ip.tags == tags # TODO: Skipped as tags not available in the API yet
488+
assert reserved_ip.tags == []
490489

491490

492491
def test_reserve_ephemeral_ip(test_linode_client, create_linode):
@@ -498,7 +497,6 @@ def test_reserve_ephemeral_ip(test_linode_client, create_linode):
498497
assert ip_address.reserved == False
499498

500499
ip_address.reserved = True
501-
# ip_address.rdns = "test.example.org" # TODO: Should be enabled ?
502500
ip_address.save()
503501
ip_address = client.load(IPAddress, linode.ipv4[0])
504502
assert ip_address.linode_id == linode.id
@@ -522,7 +520,3 @@ def test_convert_unassigned_reserved_ip_to_ephemeral(test_linode_client, create_
522520

523521
reserved_ips_list = client.networking.reserved_ips(ReservedIPAddress.address==reserved_ip.address)
524522
assert len(reserved_ips_list) == 0
525-
526-
527-
# def test_create_unassigned_reserved_ip_with_rdns():
528-
# pass

test/integration/models/nodebalancer/test_nodebalancer.py

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -114,7 +114,6 @@ def test_create_nb(test_linode_client, e2e_test_firewall):
114114
nb.delete()
115115

116116

117-
@pytest.mark.skip(reason="Currently it fails to assign ReservedIP via ipv4 param")
118117
def test_create_nb_with_reserved_ip(test_linode_client, e2e_test_firewall, create_reserved_ip):
119118
client = test_linode_client
120119
reserved_ip = create_reserved_ip

0 commit comments

Comments
 (0)