def test_simple_decode(self): obj = [1, 2, 3] string = json.dumps(obj) self.assertEqual(obj, jsonify.decode(string)) obj = [True, 2, 3] string = json.dumps(obj) self.assertEqual(obj, jsonify.decode(string))
def runTask(name, data = []): s = socket.socket(socket.AF_UNIX, socket.SOCK_STREAM) s.connect("socket") s.send(jsonify.encode([name, data])) data = jsonify.encode("done") if name != "kill": data = s.recv(4096) s.close() return jsonify.decode(data)
def verify_data(self, data): error, taskfunc = None, None try: task, args = jsonify.decode(data) if type(args) != list: raise TypeError("Wrong argument type.") taskfunc = getattr(self, task) fargs, va, kw, defaults = inspect.getargspec(taskfunc) if len(fargs) > len(args) + 1: error = {"error" : "invalid_param_count"} elif len(fargs) != len(args) + 1 and not va: error = {"error" : "invalid_param_count"} except AttributeError: error = {"error" : "no_such_task"} except: error = {"error" : "invalid_data_format"} return error, task, args
def ed_test(self, obj): string = jsonify.encode(obj) decodeobj = jsonify.decode(string) self.assertEqual(obj, decodeobj)
def start_task(self, **params): self.connect_to_coord() self.coord_socket.sendall("start_task:" + jsonify.encode(params)) result = self.coord_socket.recv(256) self.coord_socket.close() return jsonify.decode(result)["tid"]