def __checkSessionAuthStatus__(self, session, reqObj, reqPath, reqParam): return session.__contains__('authorized') @cloudModule() class SampleServerApi: sessionCallCount = 0 def emptyCall(self): return "emptyCall" def callWithArgs(self, callId, method="post"): return "callId: %s" % callId def callWithSession(self, session): session[self.sessionCallCount] = self.sessionCallCount self.sessionCallCount += 1 return session def sleepSeconds(self, t): t = int(t) if t > 0: time.sleep(t) return "Sleep: %s" % t if __name__ == "__main__": # --workerSize 5 servering(" -p 8081 --processes 1 -f .")
raise RedirectException(url) def getLoginInfo(self, __session__): return {'name':__session__['name']} def logout(self, session): return self.__invalidateSession__(session['id']) def getMailList(self): emails = self.tjson.getKey("email") if emails is None: pros = self.dbapi.getTestConfig("plan", ckey="owner", status=1, fields="ccontent") emails = [] for p in pros: try: addr = eval(p['ccontent'])['email'] if addr is not None and addr != "": emails.append({'addr':addr}) except:pass emails = tuple(emails) self.tjson.addKey("email", emails) return emails + self.dbapi.getTestConfig("plan", ckey="email", status=1, fields="cname as addr") def __checkSessionAuthStatus__(self, session, reqObj, reqPath, reqParam): return session.__contains__('authorized') if __name__ == "__main__": from cserver import servering cprop.load("cplan.ini") servering("-p 8089 -f webs -m cplan.html -t testtoolplatform.py -t testtoolcenter.py --uploadFolder webs\uploads")
''' Created on 2015-7-10 @author: chinple ''' from cserver import servering if __name__ == "__main__": # --workerSize 5 servering(" -p 8081 -t serverTest.py -f D:\\ --uploadFolder D:/tmp")
tempFile = "%s/%s" % (pkFolder, toFolder) packageFile = "%s/%s_tar" % (pkFolder, packageName) if os.path.exists(tempFile): return "fail: downloading" if os.path.exists(packageFile): return "success: exist" server = "git" if path.__contains__(gitHost) else "svn" if server == "git": cmd = "%s %s %s %s %s" % (gitBash, module, branch, path, tempFile) else: cmd = svnBash % (path, tempFile, svnUser, svnPasswd) exeInfo = "success" if os.system(cmd) == 0: tarCmd = "cd %s;tar cf %s %s" % (pkFolder, packageFile, toFolder) os.system(tarCmd) else: exeInfo = "failed: execute upload code failed" delCmd = "rm -rf %s" % tempFile os.system(delCmd) return exeInfo if __name__ == "__main__": from cserver import servering servering(" -p 8080 -n bill-tool-test")
# if httpsConn: # httpsConn.close @cloudModule(urlParam={"t": 'textarea'}, param={"t": 'textarea'}, svnPath={"t": 'textarea'}, urlParam2={"t": 'textarea'}, jsonStr={"t": 'textarea'}, jsonStr2={"t": 'textarea'}, header={"t": 'textarea'}, body={"t": 'textarea'}, urlParamToJson={'desp': "convert url parameter to json"}, jsonToUrlParam={'desp': 'convert json to url parameter'}) class HttpToolServer(HttpToolBase): pass @cloudModule() class CommonTool: def md5(self, s): import md5 m = md5.new() m.update(s) return m.hexdigest() if __name__ == "__main__": from cserver import servering servering(" -p 8080 -n http-tool-test")
''' Created on 2016-8-29 @author: chinple ''' from server.cproxy import LogHttpHandle from cserver import cloudModule @cloudModule(handleUrl="/") class LogHttpProxy(LogHttpHandle): def __analyzeSession__(self, isMock, isPost, reqPath, reqParam, respBody, reqTime, respTime, respStatus, reqAddress, reqHeader, respHeader): self.getHostLog("requestHeader").info(str(dict(reqHeader))) LogHttpHandle.__analyzeSession__(self, isMock, isPost, reqPath, reqParam, respBody, reqTime, respTime, respStatus, reqAddress, reqHeader, respHeader) if __name__ == "__main__": from cserver import servering servering(" ")
# -*- coding: utf8 -*- ''' Created on 2010-9-28 @author: chinple ''' import sys reload(sys) eval('sys.setdefaultencoding("utf-8")') if __name__ == "__main__": if len(sys.argv) <= 1: print("please type command: server, or direct test arguments.") elif sys.argv[1] == "server": from cserver import servering servering(*sys.argv[2:] if len(sys.argv) > 2 else ("-h", )) else: from mtest import testing testing(*sys.argv[2 if sys.argv[1] == "test" else 1:])
logHandler=slog.info, sslVersion=int(sslVersion)) @cloudModule(urlParam={"t": 'textarea'}, param={"t": 'textarea'}, svnPath={"t": 'textarea'}, urlParam2={"t": 'textarea'}, jsonStr={"t": 'textarea'}, jsonStr2={"t": 'textarea'}, header={"t": 'textarea'}, body={"t": 'textarea'}, urlParamToJson={'desp': "convert url parameter to json"}, jsonToUrlParam={'desp': 'convert json to url parameter'}) class HttpTool(HttpToolBase): pass @cloudModule() class CommonTool: def md5(self, s): import md5 m = md5.new() m.update(s) return m.hexdigest() if __name__ == "__main__": from cserver import servering servering(" -p 8085 -n http-tool-test -s 172.16.12.124:8080")
''' Created on 2015-7-10 @author: chinple ''' from cserver import servering if __name__ == "__main__": # --workerSize 5 servering(r' -p 8080 -f /Users/happyheart/Documents/workdocs/explore')
''' Created on 2015-7-10 @author: chinple ''' from cserver import servering if __name__ == "__main__": # --workerSize 5 servering(r' -p 8081 -t D:\explore\mserver\tools\stool\logProxy.py -s 172.16.6.37:8089 --initMethods "LogHttpProxy.addUrlMock,LogHttpProxy.reloadProxyConfig"')
return "No such sql" try: sqlConn = self.__getConn__(dbconfig) res = sqlConn.executeSql(sql, isFethall=False) rows = [] try: head = self._formatRow([h[0] for h in res.description], widths) while True: r = res.fetchone() if r is None: break rows.append("<tr>%s</tr>" % self._formatRow(r)) finally: res.close() self.tryAgain = True except: self.executeSql(dbconfig=dbconfig) if self.tryAgain: self.tryAgain = False return self.showtable(dbconfig, sql) maxWidth = self._getWidth(widths, 0) d = self.tableTemplate.replace("{maxWidth}", maxWidth).replace( "{head}", head).replace("{content}", "".join(rows)) raise ReturnFileException(d, 'text/html') if __name__ == "__main__": from cserver import servering servering("-p 8089 -f webs -m CToolPlatform.html ")
where={"t": 'textarea'}, whereArgs={"t": 'textarea'}) class OnlineSqlTool(SqlOpTool): def __init__(self, isCheckUpdate=True, isSupportDelete=False, isSupportAnySql=False, dbstoreName="dbstore"): SqlOpTool.__init__(self, True, False, False, "onlinedb") def onlineAddConn(self, configName, host, port, user, passwd): return SqlOpTool.__addConn__(self, configName, host, port, user, passwd).keys() def onlineExecuteSql(self, operation="show", fields="*", table="db", dbName="", where="1=1", whereArgs="", affectRows=100, dbConfig="local"): return SqlOpTool.__executeSql__(self, operation, fields, table, dbName, where, whereArgs, affectRows, dbConfig) if __name__ == "__main__": from cserver import servering servering(" -p 8080")
def addOnlineTask(self, taskmgr, taskid, taskKey, targs, ttype, hour=-1, minute=0, span=-1, maxCount=-1, runCount=0, opstatus=None, **taskprops): task = taskmgr.saveTask(taskKey, 'online', hour, minute, span, maxCount, runCount, ttype=ttype, targs=toJsonObj(targs), taskid=taskid) for p in taskprops.keys(): task[p] = taskprops[p] if opstatus == 'needrun': taskmgr.operateTask(taskKey, 'online', 'asyncrun') return task def getTaskReport(self, task, tret): subject, body = None, None return subject, body def run(self, task): if self.rhandler: return self.rhandler(task) if task['ttype'] == 'fun': return SyncFunctionTaskHandle.run(self, task) if __name__ == "__main__": from cserver import cloudModule @cloudModule() class TaskclientApi(OnlineTaskClient): def run(self): slog.info("Run the task") from cserver import servering cprop.load("task.ini") servering(" -p 8085")
def onlineAddConn(self, configName, host, port, user, passwd): return SqlOpTool.__addConn__(self, configName, host, port, user, passwd).keys() def onlineExecuteSql(self, operation="show", fields="*", table="db", where="1=1", whereArgs="", affectRows=10, dbName="", dbconfig="local", base64Sql=None): if base64Sql is not None and str(base64Sql).strip() != "": import base64 operation = base64.decodestring(base64Sql) self.isSupportAnySql = True try: return SqlOpTool.__executeSql__(self, operation, fields, table, dbName, where, whereArgs, affectRows, dbconfig) finally: self.isSupportAnySql = False if __name__ == "__main__": from cserver import servering servering(" -p 8081")