fix: drop stubs that claim what a phone cannot do (0.1.1) #3

Merged
christianmanivong merged 1 commits from chore/drop-snmp-stub into master 2026-10-16 23:07:00 +00:00
12 changed files with 15 additions and 42 deletions
Showing only changes of commit 46ff971953 - Show all commits

No files matched your search

-8
View File
@@ -1,8 +0,0 @@
Metadata-Version: 2.4
Name: napalm-yealink
Version: 0.1.0
Summary: NAPALM driver for Yealink IP phones and video endpoints
Requires-Python: >=3.10
Requires-Dist: napalm
Requires-Dist: napalm-device-types
Requires-Dist: requests
-10
View File
@@ -1,10 +0,0 @@
pyproject.toml
napalm_yealink/__init__.py
napalm_yealink/yealink.py
napalm_yealink.egg-info/PKG-INFO
napalm_yealink.egg-info/SOURCES.txt
napalm_yealink.egg-info/dependency_links.txt
napalm_yealink.egg-info/entry_points.txt
napalm_yealink.egg-info/requires.txt
napalm_yealink.egg-info/top_level.txt
tests/test_fingerprint.py
@@ -1 +0,0 @@
-2
View File
@@ -1,2 +0,0 @@
[napalm.drivers]
yealink = napalm_yealink:YealinkDriver
-3
View File
@@ -1,3 +0,0 @@
napalm
napalm-device-types
requests
-1
View File
@@ -1 +0,0 @@
napalm_yealink
Binary file not shown.
Binary file not shown.
-16
View File
@@ -22,7 +22,6 @@ from requests.exceptions import RequestException
from napalm.base.exceptions import ConnectionClosedException, ConnectionException
from napalm_device_types import FingerprintRule, PhoneDriver
from napalm_device_types.models import HealthMetricsDict
class YealinkDriver(PhoneDriver):
@@ -210,18 +209,3 @@ class YealinkDriver(PhoneDriver):
def rollback(self) -> None:
raise NotImplementedError
# AccessPointDriver stubs
def get_wireless_clients(self) -> list:
raise NotImplementedError
def get_ssids(self) -> dict:
raise NotImplementedError
def get_radio_info(self) -> dict:
raise NotImplementedError
@classmethod
async def get_health_metrics(cls, snmp_get, snmp_walk) -> HealthMetricsDict:
raise NotImplementedError
+1 -1
View File
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
[project]
name = "napalm-yealink"
version = "0.1.0"
version = "0.1.1"
description = "NAPALM driver for Yealink IP phones and video endpoints"
requires-python = ">=3.10"
dependencies = [
Binary file not shown.
+14
View File
@@ -0,0 +1,14 @@
"""A method exists on the driver only where the phone can answer it.
The application asks ``callable(getattr(driver, name, None))``; a stub that only
raises would claim a capability the phone does not have.
"""
import pytest
from napalm_yealink.yealink import YealinkDriver
@pytest.mark.parametrize("name", ["get_health_metrics", "get_ssids", "get_radio_info", "get_wireless_clients"])
def test_no_stub_claims_what_the_phone_cannot_do(name):
assert name not in vars(YealinkDriver)