Skip to content
Snippets Groups Projects

Feature/nat 328 site names should be validated

Merged Hakan Calim requested to merge feature/NAT-328-Site-names-should-be-validated into develop
1 file
+ 10
0
Compare changes
  • Side-by-side
  • Inline
+ 10
0
import ipaddress
from typing import Any
from uuid import UUID
import re
from fastapi import Depends, HTTPException, status
from fastapi.routing import APIRouter
@@ -104,6 +105,15 @@ class IptrunkImportModel(BaseModel):
return value
@validator("site_name", allow_reuse=True)
def site_name_must_be_valid(cls, site_name: str) -> str:
# Accept 3 chapital letters and only one ditigt after capital letters.
pattern = re.compile(r"^[A-Z]{3}[0-9]?$")
if not bool(pattern.match(site_name)):
raise ValueError(f"Enter a valid site name similar looks like AMS, AMS1or LON9. Get: {site_name}")
return site_name
@root_validator
def check_members(cls, values: dict[str, Any]) -> dict[str, Any]:
min_links = values["iptrunk_minimum_links"]
Loading