import pytest from tools.flash_device import _reject_csv_metacharacters def test_clean_value_accepted(): """A value with no metacharacters should pass without exiting.""" _reject_csv_metacharacters("device-id", "dc-0042") _reject_csv_metacharacters("location-id", "retailer-123") _reject_csv_metacharacters("wifi-ssid", "StoreWiFi-2.4GHz") _reject_csv_metacharacters("wifi-password", "p@ssw0rd!~#$%^&*()_+-=:;<>?/") @pytest.mark.parametrize("bad", ["Home,Network", 'pa"ss', "ssid\nfoo", "name\rbar"]) def test_metacharacter_rejected(bad): with pytest.raises(SystemExit): _reject_csv_metacharacters("wifi-ssid", bad)