def test_mlink_insert(): ''' Test mlink insert ''' # assert 0 uu = MLink() uid = tools.get_uu4d() raw_count = uu.get_counts() post_data = { 'name': 'asdf', 'link': 'sadf', 'order': '1', 'logo': 'asf', } uu.insert_data(uid, post_data) new_count = uu.get_counts() tt = uu.get_by_uid(uid) # assert assert tt.name == post_data['name'] assert tt.link == post_data['link'] assert tt.order == int(post_data['order']) assert tt.logo == post_data['logo'] assert raw_count + 1 == new_count uu.delete(uid)
def test_delete(self): self.add_message() a = MLink.get_by_uid(self.id) assert a.uid == self.id MLink.delete(self.id) a = MLink.get_by_uid(self.id) assert a == None self.tearDown()
def delete(self, del_id): if self.check_post_role()['DELETE']: pass else: return False if self.is_p == True: if MLink.delete(del_id): output = {'del_link': 1} else: output = {'del_link': 0} return json.dump(output, self) else: is_deleted = MLink.delete(del_id) if is_deleted: self.redirect('/link/list')
def delete(self, del_id): if self.check_post_role()['DELETE']: pass else: return False if MLink.delete(del_id): output = {'del_link': 1} else: output = {'del_link': 0} return json.dump(output, self)
def tearDown(self): print("function teardown") tt = MLink.get_by_uid(self.id) if tt: MLink.delete(tt.uid)
class LinkHandler(BaseHandler): def initialize(self): self.init() self.mlink = MLink() self.tmpl_dir = 'doc' self.tmpl_router = 'link' def get(self, url_str=''): url_arr = self.parse_url(url_str) if len(url_arr) == 1 and url_str.endswith('.html'): self.wiki(url_str.split('.')[0]) elif url_str == 'add_link': self.to_add_link() elif url_str == 'list': self.recent() elif url_str == 'refresh': self.refresh() elif url_arr[0] == 'modify': self.to_modify(url_arr[1]) elif url_arr[0] == 'delete': self.delete(url_arr[1]) else: kwd = { 'info': '页面未找到', } self.render( 'html/404.html', kwd=kwd, userinfo=self.userinfo, ) def post(self, url_str=''): if url_str == '': return print(url_str) url_arr = url_str.split('/') if url_arr[0] == 'modify': self.update(url_arr[1]) elif url_str == 'add_link': self.p_user_add_link() elif url_arr[0] == 'add_link': self.p_user_add_link() else: self.redirect('html/404.html') def recent(self): kwd = { 'pager': '', 'unescape': tornado.escape.xhtml_unescape, 'title': '最近文档', } self.render( '{1}/{0}/link_list.html'.format(self.tmpl_router, self.tmpl_dir), kwd=kwd, view=self.mlink.query_recent(), format_date=tools.format_date, userinfo=self.userinfo, ) def refresh(self): kwd = { 'pager': '', 'title': '最近文档', } self.render( 'doc/link/link_list.html', kwd=kwd, userinfo=self.userinfo, view=self.mlink.query_dated(10), format_date=tools.format_date, unescape=tornado.escape.xhtml_unescape, ) def get_random(self): return self.mlink.query_random() def wiki(self, uid): dbdate = self.mlink.get_by_id(uid) if dbdate: self.viewit(uid) else: self.to_add(uid) def to_add_link(self, ): if self.check_post_role(self.userinfo)['ADD']: pass else: return False kwd = { 'pager': '', 'uid': '', } self.render( 'doc/{0}/link_add.html'.format(self.tmpl_router), topmenu='', kwd=kwd, userinfo=self.userinfo, ) @tornado.web.authenticated def to_add(self, uid): kwd = { 'uid': uid, 'pager': '', } self.render( 'doc/{0}/link_add.html'.format(self.tmpl_router), kwd=kwd, ) def __could_edit(self, uid): raw_data = self.mlink.get_by_id(uid) if not raw_data: return False if self.check_post_role( self.userinfo )['EDIT'] or raw_data.id_user == self.userinfo.user_name: return True else: return False @tornado.web.authenticated def update(self, uid): if self.__could_edit(uid): pass else: return False post_data = self.get_post_data() post_data['user_name'] = self.get_current_user() if self.tmpl_router == "link": self.mlink.update(uid, post_data) self.redirect('/link/list'.format(uid)) else: if self.mlink.update(uid, post_data): output = { 'addinfo ': 1, } else: output = { 'addinfo ': 0, } return json.dump(output, self) @tornado.web.authenticated def to_modify(self, id_rec): # 用户具有管理权限, # 或 # 文章是用户自己发布的。 if self.__could_edit(id_rec): pass else: return False a = self.mlink.get_by_id(id_rec) kwd = { 'pager': '', } self.render( 'doc/{0}/link_edit.html'.format(self.tmpl_router), kwd=kwd, unescape=tornado.escape.xhtml_unescape, dbrec=a, userinfo=self.userinfo, ) @tornado.web.authenticated def viewit(self, post_id): rec = self.mlink.get_by_id(post_id) if not rec: kwd = { 'info': '您要找的分类不存在。', } self.render('html/404.html', kwd=kwd) return False kwd = { 'pager': '', 'editable': self.editable(), } self.render( 'doc/{0}/link_view.html'.format(self.tmpl_router), view=rec, unescape=tornado.escape.xhtml_unescape, kwd=kwd, userinfo=self.userinfo, cfg=config.cfg, ) @tornado.web.authenticated def p_user_add_link(self): if self.check_post_role(self.userinfo)['ADD']: pass else: return False post_data = self.get_post_data() post_data['user_name'] = self.get_current_user() cur_uid = tools.get_uudd(2) while self.mlink.get_by_id(cur_uid): cur_uid = tools.get_uudd(2) if self.mlink.insert_data(cur_uid, post_data): output = { 'addinfo ': 1, } else: output = { 'addinfo ': 0, } return json.dump(output, self) # self.redirect('/link/list'.format(cur_uid)) @tornado.web.authenticated def user_add_link(self): if self.check_post_role(self.userinfo)['ADD']: pass else: return False post_data = self.get_post_data() post_data['user_name'] = self.get_current_user() cur_uid = tools.get_uudd(2) while self.mlink.get_by_id(cur_uid): cur_uid = tools.get_uudd(2) uid = self.mlink.insert_data(cur_uid, post_data) self.redirect('/link/list'.format(cur_uid)) @tornado.web.authenticated def delete(self, del_id): if self.check_post_role(self.userinfo)['DELETE']: pass else: return False if self.tmpl_router == "link": is_deleted = self.mlink.delete(del_id) if is_deleted: self.redirect('/link/list') else: return False else: if self.mlink.delete(del_id): output = {'del_link': 1} else: output = { 'del_link': 0, } return json.dump(output, self)
class TestUM(): def setup(self): print('setup 方法执行于本类中每条用例之前') self.uu = MLink() self.id = tools.get_uu4d() self.raw_count = self.uu.get_counts() print(self.raw_count) def test_insert(self): uid = self.id post_data = { 'name': 'asdf', 'link': 'sadf', 'order': '1', 'logo': 'asf', } self.uu.insert_data(uid, post_data) new_count = self.uu.get_counts() tt = self.uu.get_by_uid(uid) # assert assert tt.name == post_data['name'] assert tt.link == post_data['link'] assert tt.order == int(post_data['order']) assert tt.logo == post_data['logo'] assert self.raw_count + 1 == new_count def test_upate(self): uid = self.id post_data = { 'name': 'asdf', 'link': 'sadf', 'order': '1', 'logo': 'asf', } self.uu.insert_data(uid, post_data) new_count = self.uu.get_counts() assert self.raw_count + 1 == new_count post_data2 = { 'name': 'asdlkjf', 'link': 'sakljdf', 'order': '13', 'logo': 'asfa', } self.uu.update(uid, post_data2) new_count = self.uu.get_counts() assert self.raw_count + 1 == new_count tt = self.uu.get_by_uid(uid) assert tt.name != post_data['name'] assert tt.link != post_data['link'] assert tt.order != int(post_data['order']) assert tt.logo != post_data['logo'] assert tt.name == post_data2['name'] assert tt.link == post_data2['link'] assert tt.order == int(post_data2['order']) assert tt.logo == post_data2['logo'] def tearDown(self): print("function teardown") self.uu.delete(self.id)
def tearDown(self): MLink.delete(self.id)