0
0
mirror of https://gitlab.nic.cz/labs/bird.git synced 2024-12-23 02:01:55 +00:00

Python CLI Package: Use CLI code names instead of numbers

This commit is contained in:
Maria Matejka 2023-05-20 11:12:00 +02:00
parent 8496c4b469
commit 7dcfad4085
2 changed files with 10 additions and 4 deletions

View File

@ -23,3 +23,9 @@ class Basic:
async def load(self): async def load(self):
if self.data is None: if self.data is None:
await self.update() await self.update()
class Code:
OK = 0
Welcome = 1
Status = 13
Version = 1000

View File

@ -1,5 +1,5 @@
import asyncio import asyncio
from BIRD.Basic import Basic from BIRD.Basic import Basic, Code
class StatusException(Exception): class StatusException(Exception):
def __init__(self, msg): def __init__(self, msg):
@ -12,12 +12,12 @@ class Status(Basic):
await self.bird.cli.open() await self.bird.cli.open()
data = await self.bird.cli.socket.command("show status") data = await self.bird.cli.socket.command("show status")
if data[0]["code"] != 1000: if data[0]["code"] != Code.Version:
raise StatusException(f"BIRD version not on the first line, got {data[0]['code']}") raise StatusException(f"BIRD version not on the first line, got {data[0]['code']}")
self.data["version"] = data[0]["data"] self.data["version"] = data[0]["data"]
if data[-1]["code"] != 13: if data[-1]["code"] != Code.Status:
raise StatusException(f"BIRD status not on the last line, got {data[-1]['code']}") raise StatusException(f"BIRD status not on the last line, got {data[-1]['code']}")
self.data["status"] = data[-1]["data"] self.data["status"] = data[-1]["data"]
@ -35,7 +35,7 @@ class Version(Basic):
await self.bird.cli.open() await self.bird.cli.open()
hello = self.bird.cli.hello hello = self.bird.cli.hello
if hello["code"] != 1: if hello["code"] != Code.Welcome:
raise VersionException(f"code is {hello['code']}, should be 1") raise VersionException(f"code is {hello['code']}, should be 1")
s = hello["data"].split(" ") s = hello["data"].split(" ")