@@ -4,6 +4,7 @@ class MockServer(object):
44 def __init__ (self , host = None , port = None , broken = True , ok = True ,
55 broken_username = False ):
66 self .valid = "test"
7+ self .valid_desc = '"Test UPS 1"'
78 self .broken = broken
89 self .ok = ok
910 self .broken_username = broken_username
@@ -33,7 +34,7 @@ def run_command(self):
3334 self .first = False
3435 return 'BEGIN LIST UPS\n '
3536 elif self .command == "LIST UPS\n " :
36- return 'UPS ' + self .valid + '"Test UPS 1" \n UPS Test_UPS2 "Test UPS 2"\n END LIST UPS\n '
37+ return 'UPS ' + self .valid + ' ' + self . valid_desc + ' \n UPS Test_UPS2 "Test UPS 2"\n END LIST UPS\n '
3738 elif self .command == "LIST VAR %s\n " % self .valid and self .first :
3839 self .first = False
3940 return 'BEGIN LIST VAR ' + self .valid + '\n '
@@ -62,7 +63,18 @@ def run_command(self):
6263 return 'CLIENT ' + self .valid + ' ' + self .valid + '\n END LIST CLIENTS\n '
6364 elif self .command .startswith ("LIST CLIENTS" ):
6465 return 'ERR INVALID-ARGUMENT\n '
65- # TODO: SET commands
66+ elif self .command == "LIST ENUM %s %s\n " % (self .valid , self .valid ) and self .first :
67+ self .first = False
68+ return 'BEGIN LIST ENUM %s %s\n ' (self .valid , self .valid )
69+ elif self .command == "LIST ENUM %s %s\n " % (self .valid , self .valid ):
70+ return 'ENUM %s %s %s\n END LIST ENUM %s %s\n ' % (self .valid ,
71+ self .valid , self .valid_desc , self .valid , self .valid )
72+ elif self .command == "LIST RANGE %s %s\n " % (self .valid , self .valid ) and self .first :
73+ self .first = False
74+ return 'BEGIN LIST RANGE %s %s\n ' (self .valid , self .valid )
75+ elif self .command == "LIST RANGE %s %s\n " % (self .valid , self .valid ):
76+ return 'RANGE %s %s %s %s\n END LIST RANGE %s %s\n ' % (self .valid ,
77+ self .valid , self .valid_desc , self .valid_desc , self .valid , self .valid )
6678 elif self .command == "SET VAR %s %s %s\n " % (self .valid , self .valid , self .valid ):
6779 return 'OK\n '
6880 elif self .command .startswith ("SET" ):
@@ -75,11 +87,11 @@ def run_command(self):
7587 elif self .command == "USERNAME %s\n " % self .valid :
7688 return 'OK\n '
7789 elif self .command .startswith ("USERNAME" ):
78- return 'OK \n ' # FIXME
90+ return 'ERR \n ' # FIXME: What does it say on invalid password?
7991 elif self .command == "PASSWORD %s\n " % self .valid :
8092 return 'OK\n '
8193 elif self .command .startswith ("PASSWORD" ):
82- return 'OK \n ' # FIXME
94+ return 'ERR \n ' # FIXME: ^
8395 elif self .command == "STARTTLS\n " :
8496 return 'ERR FEATURE-NOT-CONFIGURED\n '
8597 elif self .command == "MASTER %s\n " % self .valid :
@@ -88,5 +100,35 @@ def run_command(self):
88100 return 'OK FSD-SET\n '
89101 elif self .command == "FSD %s\n " % self .valid :
90102 return 'ERR\n '
103+ elif self .command == "GET NUMLOGINS %s\n " % self .valid :
104+ return 'NUMLOGINS %s 1\n ' % self .valid
105+ elif self .command .startswith ("GET NUMLOGINS" ):
106+ return 'ERR UNKNOWN-UPS\n '
107+ elif self .command == "GET UPSDESC %s\n " % self .valid :
108+ return 'UPSDESC %s %s\n ' % (self .valid , self .valid_desc )
109+ elif self .command .startswith ("GET UPSDESC" ):
110+ return 'ERR UNKNOWN-UPS\n '
111+ elif self .command == "GET VAR %s %s\n " % (self .valid , self .valid ):
112+ return 'VAR %s %s "100"\n ' % (self .valid , self .valid )
113+ elif self .command .startswith ("GET VAR %s" % self .valid ):
114+ return 'ERR VAR-NOT-SUPPORTED\n '
115+ elif self .command .startswith ("GET VAR " ):
116+ return 'ERR UNKNOWN-UPS\n '
117+ elif self .command .startswith ("GET VAR" ):
118+ return 'ERR INVALID-ARGUMENT\n '
119+ elif self .command == "GET TYPE %s %s\n " % (self .valid , self .valid ):
120+ return 'TYPE %s %s RW STRING:3\n ' % (self .valid , self .valid )
121+ elif self .command .startswith ("GET TYPE %s" % self .valid ):
122+ return 'ERR VAR-NOT-SUPPORTED\n '
123+ elif self .command .startswith ("GET TYPE" ):
124+ return 'ERR INVALID-ARGUMENT\n '
125+ elif self .command == "GET DESC %s %s\n " % (self .valid , self .valid ):
126+ return 'DESC %s %s %s\n ' % (self .valid , self .valid , self .valid_desc )
127+ elif self .command .startswith ("GET DESC" ):
128+ return 'ERR-INVALID-ARGUMENT\n '
129+ elif self .command == "GET CMDDESC %s %s" % (self .valid , self .valid ):
130+ return 'CMDDESC %s %s %s\n ' % (self .valid , self .valid , self .valid_desc )
131+ elif self .command .startswith ("GET CMDDESC" ):
132+ return 'ERR INVALID-ARGUMENT'
91133 else :
92134 return 'ERR UNKNOWN-COMMAND\n '
0 commit comments