|
| 1 | +from test.integration.filters.fixtures import ( # noqa: F401 |
| 2 | + domain_instance, |
| 3 | + lke_cluster_instance, |
| 4 | +) |
| 5 | + |
| 6 | +from linode_api4.objects import ( |
| 7 | + DatabaseEngine, |
| 8 | + DatabaseType, |
| 9 | + Domain, |
| 10 | + Firewall, |
| 11 | + Image, |
| 12 | + LKECluster, |
| 13 | + Type, |
| 14 | +) |
| 15 | + |
| 16 | + |
| 17 | +def test_database_type_model_filter(test_linode_client): |
| 18 | + client = test_linode_client |
| 19 | + |
| 20 | + db_disk = client.database.types()[0].disk |
| 21 | + |
| 22 | + filtered_db_type = client.database.types(DatabaseType.disk == db_disk) |
| 23 | + |
| 24 | + assert db_disk == filtered_db_type[0].disk |
| 25 | + |
| 26 | + |
| 27 | +def test_database_engine_model_filter(test_linode_client): |
| 28 | + client = test_linode_client |
| 29 | + |
| 30 | + engine = "mysql" |
| 31 | + |
| 32 | + filtered_db_engine = client.database.engines( |
| 33 | + DatabaseEngine.engine == engine |
| 34 | + ) |
| 35 | + |
| 36 | + assert len(client.database.engines()) > len(filtered_db_engine) |
| 37 | + |
| 38 | + |
| 39 | +def test_domain_model_filter(test_linode_client, domain_instance): |
| 40 | + client = test_linode_client |
| 41 | + |
| 42 | + filtered_domain = client.domains(Domain.domain == domain_instance.domain) |
| 43 | + |
| 44 | + assert domain_instance.id == filtered_domain[0].id |
| 45 | + |
| 46 | + |
| 47 | +def test_image_model_filter(test_linode_client): |
| 48 | + client = test_linode_client |
| 49 | + |
| 50 | + filtered_images = client.images(Image.label.contains("Debian")) |
| 51 | + |
| 52 | + assert len(client.images()) > len(filtered_images) |
| 53 | + |
| 54 | + |
| 55 | +def test_linode_type_model_filter(test_linode_client): |
| 56 | + client = test_linode_client |
| 57 | + |
| 58 | + filtered_types = client.linode.types(Type.label.contains("Linode")) |
| 59 | + |
| 60 | + assert len(filtered_types) > 0 |
| 61 | + assert "Linode" in filtered_types[0].label |
| 62 | + |
| 63 | + |
| 64 | +def test_lke_cluster_model_filter(test_linode_client, lke_cluster_instance): |
| 65 | + client = test_linode_client |
| 66 | + |
| 67 | + filtered_cluster = client.lke.clusters( |
| 68 | + LKECluster.label.contains(lke_cluster_instance.label) |
| 69 | + ) |
| 70 | + |
| 71 | + assert filtered_cluster[0].id == lke_cluster_instance.id |
| 72 | + |
| 73 | + |
| 74 | +def test_networking_firewall_model_filter( |
| 75 | + test_linode_client, e2e_test_firewall |
| 76 | +): |
| 77 | + client = test_linode_client |
| 78 | + |
| 79 | + filtered_firewall = client.networking.firewalls( |
| 80 | + Firewall.label.contains(e2e_test_firewall.label) |
| 81 | + ) |
| 82 | + |
| 83 | + assert len(filtered_firewall) > 0 |
| 84 | + assert e2e_test_firewall.label in filtered_firewall[0].label |
0 commit comments