add go bench client
This commit is contained in:
89
test_wifi_classification.py
Normal file
89
test_wifi_classification.py
Normal file
@@ -0,0 +1,89 @@
|
||||
#!/usr/bin/env python3
|
||||
"""
|
||||
Test script to verify WiFi adapter classification
|
||||
"""
|
||||
import sys
|
||||
sys.path.insert(0, '/home/gilles/projects/serv_benchmark/backend')
|
||||
|
||||
from app.utils.device_classifier import DeviceClassifier
|
||||
|
||||
# Test data from the Realtek RTL8188GU WiFi adapter
|
||||
test_content = """
|
||||
Bus 003 Device 002: ID 0bda:b711 Realtek Semiconductor Corp. RTL8188GU 802.11n WLAN Adapter (After Modeswitch)
|
||||
Negotiated speed: High Speed (480Mbps)
|
||||
Device Descriptor:
|
||||
bLength 18
|
||||
bDescriptorType 1
|
||||
bcdUSB 2.00
|
||||
bDeviceClass 0 [unknown]
|
||||
bDeviceSubClass 0 [unknown]
|
||||
bDeviceProtocol 0
|
||||
bMaxPacketSize0 64
|
||||
idVendor 0x0bda Realtek Semiconductor Corp.
|
||||
idProduct 0xb711 RTL8188GU 802.11n WLAN Adapter (After Modeswitch)
|
||||
bcdDevice 2.00
|
||||
iManufacturer 1 Realtek
|
||||
iProduct 2 802.11n WLAN Adapter
|
||||
iSerial 3 00E04CB82101
|
||||
bNumConfigurations 1
|
||||
Configuration Descriptor:
|
||||
bLength 9
|
||||
bDescriptorType 2
|
||||
wTotalLength 0x003c
|
||||
bNumInterfaces 1
|
||||
bConfigurationValue 1
|
||||
iConfiguration 0
|
||||
bmAttributes 0x80
|
||||
(Bus Powered)
|
||||
MaxPower 500mA
|
||||
Interface Descriptor:
|
||||
bLength 9
|
||||
bDescriptorType 4
|
||||
bInterfaceNumber 0
|
||||
bAlternateSetting 0
|
||||
bNumEndpoints 6
|
||||
bInterfaceClass 255 Vendor Specific Class
|
||||
bInterfaceSubClass 255 Vendor Specific Subclass
|
||||
bInterfaceProtocol 255 Vendor Specific Protocol
|
||||
iInterface 2 802.11n WLAN Adapter
|
||||
"""
|
||||
|
||||
device_info = {
|
||||
"vendor_id": "0x0bda",
|
||||
"product_id": "0xb711",
|
||||
"manufacturer": "Realtek",
|
||||
"product": "802.11n WLAN Adapter",
|
||||
"interface_classes": [{"code": 255, "name": "Vendor Specific Class"}],
|
||||
"device_class": "00"
|
||||
}
|
||||
|
||||
print("=" * 60)
|
||||
print("TEST: Realtek RTL8188GU WiFi Adapter Classification")
|
||||
print("=" * 60)
|
||||
|
||||
# Test 1: Full classification
|
||||
type_principal, sous_type = DeviceClassifier.classify_device(
|
||||
cli_content=test_content,
|
||||
synthese_content=None,
|
||||
device_info=device_info
|
||||
)
|
||||
|
||||
print(f"\n✓ Type principal: {type_principal}")
|
||||
print(f"✓ Sous-type: {sous_type}")
|
||||
|
||||
# Test 2: Keyword detection
|
||||
keyword_result = DeviceClassifier.detect_from_keywords(test_content)
|
||||
print(f"\n✓ Keyword detection: {keyword_result}")
|
||||
|
||||
# Test 3: Network refinement
|
||||
if type_principal == "USB" and sous_type == "Autre":
|
||||
refined = DeviceClassifier.refine_usb_network_subtype(test_content)
|
||||
print(f"\n✓ After refinement: USB / {refined}")
|
||||
sous_type = refined
|
||||
|
||||
print("\n" + "=" * 60)
|
||||
if type_principal == "USB" and sous_type == "Adaptateur WiFi":
|
||||
print("✅ SUCCESS: Correctly identified as WiFi adapter!")
|
||||
else:
|
||||
print(f"❌ FAILED: Expected 'USB / Adaptateur WiFi', got '{type_principal} / {sous_type}'")
|
||||
print("=" * 60)
|
||||
Reference in New Issue
Block a user