Exemple #1
0
 def test_query_recent(self):
     a = MEntity.get_by_uid(self.uid)
     assert a == None
     self.add_message()
     a = MEntity.get_by_uid(self.uid)
     assert a
     self.tearDown()
Exemple #2
0
 def tearDown(self):
     print("function teardown")
     tt = MEntity.get_id_by_impath(self.path)
     if tt:
         print('x' * 20)
         print(tt)
         MEntity.delete(tt)
Exemple #3
0
    def add_pdf(self, post_data):
        '''
        Adding the pdf file.
        '''

        img_entity = self.request.files['file'][0]
        img_desc = post_data['desc']
        filename = img_entity["filename"]

        # qian, hou = os.path.splitext(filename)

        if filename and allowed_file_pdf(filename):
            pass
        else:
            return False

        _, hou = os.path.splitext(filename)
        signature = str(uuid.uuid1())
        outfilename = '{0}{1}'.format(signature, hou)
        outpath = 'static/upload/{0}'.format(signature[:2])
        if os.path.exists(outpath):
            pass
        else:
            os.makedirs(outpath)
        with open(os.path.join(outpath, outfilename), "wb") as fout:
            fout.write(img_entity["body"])

        sig_save = os.path.join(signature[:2], signature)
        path_save = os.path.join(signature[:2], outfilename)
        MEntity.create_entity(signature, path_save, img_desc, kind=2)

        self.redirect('/entity/{0}{1}'.format(sig_save, hou.lower()))
Exemple #4
0
    def add_pdf(self):

        img_entiry = self.request.files['file'][0]

        filename = img_entiry["filename"]

        qian, hou = os.path.splitext(filename)

        if filename and allowed_file_pdf(filename):
            pass
        else:
            return False

        (qian, hou) = os.path.splitext(filename)
        signature = str(uuid.uuid1())
        outfilename = '{0}{1}'.format(signature, hou)
        outpath = 'static/upload/{0}'.format(signature[:2])
        if os.path.exists(outpath):
            pass
        else:
            os.makedirs(outpath)
        with open(os.path.join(outpath, outfilename), "wb") as fout:
            fout.write(img_entiry["body"])

        sig_save = os.path.join(signature[:2], signature)

        MEntity.create_entity(signature, sig_save)

        self.redirect('/entity/{0}{1}'.format(sig_save, hou.lower()))
Exemple #5
0
    def test_create_entity(self):
        uid = self.uid
        post_data = {
            'path': self.path,
        }

        MEntity.create_entity(uid, post_data['path'])
        assert True
Exemple #6
0
 def _add_download_entity(self, ext_dic):
     download_url = ext_dic['tag_file_download'].strip().lower() if (
         'tag_file_download' in ext_dic) else ''
     the_entity = MEntity.get_id_by_impath(download_url)
     if the_entity:
         return True
     if download_url:
         MEntity.create_entity(path=download_url, desc=download_url, kind=4)
Exemple #7
0
    def test_total_number(self):
        b = MEntity.total_number()

        self.add_message()
        a = MEntity.total_number()

        assert b + 1 <= a
        self.tearDown()
Exemple #8
0
    def test_delete(self):
        tf = MEntity.get_by_uid(self.uid)
        assert tf == None
        self.add_message()
        tf = MEntity.delete(self.uid)
        assert tf
        tf = MEntity.get_by_uid(self.uid)

        assert tf == None
        self.tearDown()
Exemple #9
0
 def setup(self):
     print('setup 方法执行于本类中每条用例之前')
     self.M2U = MEntity2User()
     self.username = '******'
     self.uu = MUser()
     self.user_uid = ''
     self.e_uid = 'q112'
     self.path = '/static/123123'
     self.userip = '10.6.0.177'
     self.ee = MEntity()
     self.uid = ''
Exemple #10
0
    def test_insert_2(self):
        '''Wiki insert: Test invalid title'''
        post_data = {
            'path': '',
        }
        uu = MEntity.get_id_by_impath(post_data['path'])
        assert uu == False

        post_data = {
            'path': self.path,
        }
        uu = MEntity.get_id_by_impath(post_data['path'])
        assert uu == False
Exemple #11
0
    def test_create_entity_2(self):
        '''Wiki insert: Test invalid title'''
        post_data = {
            'path': '',
        }
        uu = MEntity.get_id_by_impath(post_data['path'])
        assert uu is None

        post_data = {
            'path': self.path,
        }
        uu = MEntity.get_id_by_impath(post_data['path'])
        assert uu is None
Exemple #12
0
 def test_get_all_pager(self):
     a = MEntity.get_all_pager()
     tf = True
     for i in a:
         if i.uid == self.uid:
             tf = False
     assert tf
     self.add_message()
     a = MEntity.get_all_pager()
     tf = False
     for i in a:
         if i.uid == self.uid:
             tf = True
     assert tf
     self.tearDown()
Exemple #13
0
    def add_pic(self, post_data):
        '''
        Adding the picture.
        '''
        img_entity = self.request.files['file'][0]
        filename = img_entity["filename"]

        if filename and allowed_file(filename):
            pass
        else:
            return False

        _, hou = os.path.splitext(filename)
        signature = str(uuid.uuid1())
        outfilename = '{0}{1}'.format(signature, hou)
        outpath = 'static/upload/{0}'.format(signature[:2])
        if os.path.exists(outpath):
            pass
        else:
            os.makedirs(outpath)
        with open(os.path.join(outpath, outfilename), "wb") as fileout:
            fileout.write(img_entity["body"])
        path_save = os.path.join(signature[:2], outfilename)
        sig_save = os.path.join(signature[:2], signature)

        imgpath = os.path.join(outpath, signature + '_m.jpg')
        imgpath_sm = os.path.join(outpath, signature + '_sm.jpg')

        ptr_image = Image.open(os.path.join('static/upload', path_save))
        tmpl_size = (768, 768)
        thub_size = (256, 256)
        (imgwidth, imgheight) = ptr_image.size
        if imgwidth < tmpl_size[0] and imgheight < tmpl_size[1]:
            tmpl_size = (imgwidth, imgheight)
        ptr_image.thumbnail(tmpl_size)

        im0 = ptr_image.convert('RGB')
        im0.save(imgpath, 'JPEG')

        im0.thumbnail(thub_size)
        im0.save(imgpath_sm, 'JPEG')

        MEntity.create_entity(signature,
                              path_save,
                              post_data['desc'] if 'desc' in post_data else '',
                              kind=1)

        self.redirect('/entity/{0}_m.jpg'.format(sig_save))
Exemple #14
0
 def test_create_entity(self):
     uid = self.uid
     path = self.path
     desc = 'create entity'
     kind = '1'
     tt = MEntity.create_entity(uid, path, desc, kind)
     assert tt == True
Exemple #15
0
    def down(self, down_uid):
        '''
        Download the entity by UID.
        '''

        post_data = {}
        for key in self.request.arguments:
            post_data[key] = self.get_arguments(key)[0]

        down_url = MPost.get_by_uid(down_uid).extinfo.get(
            'tag__file_download', '')
        if down_url:

            if allowed_file(down_url):
                kind = '1'
            elif allowed_file_pdf(down_url):
                kind = '2'
            else:
                kind = '3'
            if str(down_url)[:17] == '/static/datasets/':
                str_down_url = str(down_url)[8:]
            else:
                str_down_url = str(down_url)[15:]
            if kind == '3':
                str_down_url = down_url

            ment_id = MEntity.get_id_by_impath(str_down_url)
            if ment_id:

                MEntity2User.create_entity2user(ment_id, self.userinfo.uid,
                                                post_data['userip'])

                return True
            else:

                MEntity.create_entity(uid='',
                                      path=str_down_url,
                                      desc='',
                                      kind=kind)
                ment_id = MEntity.get_id_by_impath(str_down_url)
                if ment_id:
                    MEntity2User.create_entity2user(ment_id, self.userinfo.uid,
                                                    post_data['userip'])
                    return True
        else:
            return False
Exemple #16
0
 def add_url(self, post_data):
     '''
     Adding the URL as entity.
     '''
     img_desc = post_data['desc']
     img_path = post_data['file1']
     cur_uid = tools.get_uudd(4)
     while MEntity.get_by_uid(cur_uid):
         cur_uid = tools.get_uudd(4)
     MEntity.create_entity(cur_uid, img_path, img_desc, kind=3)
     kwd = {
         'kind': '3',
     }
     self.render('misc/entity/entity_view.html',
                 filename=img_path,
                 cfg=config.CMS_CFG,
                 kwd=kwd,
                 userinfo=self.userinfo)
Exemple #17
0
    def render(self, *args, **kwargs):
        current = int(args[0])

        pager_count = int(MEntity.total_number() / config.CMS_CFG['list_num'])
        page_num = (pager_count if abs(pager_count - MEntity.total_number() /
                                       config.CMS_CFG['list_num']) < 0.1 else
                    pager_count + 1)
        kwd = {
            'page_home': False if current <= 1 else True,
            'page_end': False if current >= page_num else True,
            'page_pre': False if current <= 1 else True,
            'page_next': False if current >= page_num else True,
        }

        return self.render_string('modules/post/entity_pager.html',
                                  kwd=kwd,
                                  pager_num=page_num,
                                  page_current=current)
Exemple #18
0
    def down(self, down_uid):
        '''
        Download the entity by UID.
        '''
        post_data = {}
        for key in self.request.arguments:
            post_data[key] = self.get_arguments(key)[0]

        down_url = MPost.get_by_uid(down_uid).extinfo.get(
            'tag__file_download', '')
        if down_url:

            if allowed_file(down_url):
                kind = '1'
            elif allowed_file_pdf(down_url):
                kind = '2'
            else:
                kind = '3'

            ment_id = MEntity.get_id_by_impath(down_url)

            userip = self.get_host_ip()

            if ment_id:

                MEntity2User.create_entity2user(ment_id, self.userinfo.uid,
                                                userip)

            else:

                MEntity.create_entity(uid='',
                                      path=down_url,
                                      desc='',
                                      kind=kind)
                ment_id = MEntity.get_id_by_impath(down_url)
                if ment_id:
                    MEntity2User.create_entity2user(ment_id, self.userinfo.uid,
                                                    userip)

            output = {'down_code': 1, 'down_url': down_url}

        else:
            output = {'down_code': 0}
        return json.dump(output, self)
Exemple #19
0
    def test_get_by_kind(self):
        self.add_message()
        a = MEntity.get_by_kind(kind='f')

        tf = False
        for i in a:
            if i.uid == self.uid:
                tf = True
        assert tf
        self.tearDown()
Exemple #20
0
 def down(self, down_uid):
     mpost = MPost.get_by_uid(down_uid)
     down_url = mpost.extinfo[
         'tag_file_download'] if 'tag_file_download' in mpost.extinfo else ''
     if down_url:
         url = mpost.extinfo['tag_file_download']
         ment_id = MEntity.get_id_by_impath(url)
         MEntity2User.create_entity2user(ment_id, self.userinfo.uid)
     else:
         return False
Exemple #21
0
 def list(self):
     recs = MEntity.query_all(limit=16)
     kwd = {
         'pager': '',
     }
     self.render('misc/entity/entity_list.html',
                 imgs=recs,
                 cfg=config.CMS_CFG,
                 kwd=kwd,
                 userinfo=self.userinfo)
Exemple #22
0
    def add_pic(self):
        img_entiry = self.request.files['file'][0]

        filename = img_entiry["filename"]

        if filename and allowed_file(filename):
            pass
        else:
            return False

        (qian, hou) = os.path.splitext(filename)
        signature = str(uuid.uuid1())
        outfilename = '{0}{1}'.format(signature, hou)
        outpath = 'static/upload/{0}'.format(signature[:2])
        if os.path.exists(outpath):
            pass
        else:
            os.makedirs(outpath)
        with open(os.path.join(outpath, outfilename), "wb") as f:
            f.write(img_entiry["body"])
        path_save = os.path.join(signature[:2], outfilename)
        sig_save = os.path.join(signature[:2], signature)

        imgpath = os.path.join(outpath, signature + '_m.jpg')
        imgpath_sm = os.path.join(outpath, signature + '_sm.jpg')

        im = Image.open(os.path.join('static/upload', path_save))
        tmpl_size = (768, 768)
        thub_size = (256, 256)
        (imgwidth, imgheight) = im.size
        if imgwidth < tmpl_size[0] and imgheight < tmpl_size[1]:
            tmpl_size = (imgwidth, imgheight)
        im.thumbnail(tmpl_size)

        im0 = im.convert('RGB')
        im0.save(imgpath, 'JPEG')

        im0.thumbnail(thub_size)
        im0.save(imgpath_sm, 'JPEG')

        MEntity.create_entity(signature, sig_save)

        self.redirect('/entity/{0}_m.jpg'.format(sig_save))
Exemple #23
0
 def down(self, down_uid):
     '''
     Download the entity by UID.
     '''
     down_url = MPost.get_by_uid(down_uid).extinfo.get(
         'tag_file_download', '')
     if down_url:
         ment_id = MEntity.get_id_by_impath(down_url)
         MEntity2User.create_entity2user(ment_id, self.userinfo.uid)
     else:
         return False
Exemple #24
0
    def test_query_all(self):
        self.add_message()
        a = MEntity.query_all()
        tf = False

        for i in a:

            if i.uid == self.uid:
                tf = True
        assert tf
        self.tearDown()
Exemple #25
0
    def add_pdf(self, post_data):
        '''
        Adding the pdf file.
        '''

        img_entity = self.request.files['file'][0]
        img_desc = post_data['desc']
        filename = img_entity["filename"]

        if filename and allowed_file_pdf(filename):
            pass
        else:
            kwd = {
                'pager':
                '',
                'err_info':
                '* The formats of uploadable files are: pdf, doc, docx, zip, rar, ppt, 7z, xlsx'
            }
            self.render('misc/entity/entity_add.html',
                        cfg=config.CMS_CFG,
                        kwd=kwd,
                        userinfo=self.userinfo)
            # return False

        _, hou = os.path.splitext(filename)
        signature = str(uuid.uuid1())
        outfilename = '{0}{1}'.format(signature, hou)
        outpath = 'static/upload/{0}'.format(signature[:2])
        if os.path.exists(outpath):
            pass
        else:
            os.makedirs(outpath)
        with open(os.path.join(outpath, outfilename), "wb") as fout:
            fout.write(img_entity["body"])

        sig_save = os.path.join(signature[:2], signature)
        path_save = os.path.join(signature[:2], outfilename)
        create_pdf = MEntity.create_entity(
            signature,
            path_save,
            img_desc,
            kind=post_data['kind'] if 'kind' in post_data else '2')
        if self.entity_ajax is False:
            self.redirect('/entity/{0}{1}'.format(sig_save, hou.lower()))
        else:
            if create_pdf:
                output = {'path_save': path_save}
            else:
                output = {'path_save': ''}
            return json.dump(output, self)
Exemple #26
0
    def list(self, cur_p=''):
        '''
        Lists of the entities.
        '''
        current_page_number = int(cur_p) if cur_p else 1
        current_page_number = 1 if current_page_number < 1 else current_page_number

        kwd = {'current_page': current_page_number}
        recs = MEntity.get_all_pager(current_page_num=current_page_number)
        self.render('misc/entity/entity_list.html',
                    imgs=recs,
                    cfg=config.CMS_CFG,
                    kwd=kwd,
                    userinfo=self.userinfo)
Exemple #27
0
    def render(self, kind, cur_p=''):
        if cur_p == '':
            current_page_number = 1
        else:
            current_page_number = int(cur_p)

        current_page_number = 1 if current_page_number < 1 else current_page_number
        kwd = {'current_page': current_page_number}

        recs = MEntity.get_by_kind(kind=kind,
                                   current_page_num=current_page_number)

        return self.render_string('modules/post/entity_list.html',
                                  kwd=kwd,
                                  rec=recs)
Exemple #28
0
    def down(self, down_uid):
        '''
        Download the entity by UID.
        '''
        down_url = MPost.get_by_uid(down_uid).extinfo.get(
            'tag__file_download', '')
        print('=' * 40)
        print(down_url)
        str_down_url = str(down_url)[15:]

        if down_url:
            ment_id = MEntity.get_id_by_impath(str_down_url)
            if ment_id:
                MEntity2User.create_entity2user(ment_id, self.userinfo.uid)
            return True
        else:
            return False
Exemple #29
0
    def add_pdf(self, post_data):
        '''
        Adding the pdf file.
        '''

        img_entity = self.request.files['file'][0]
        img_desc = post_data['desc']
        filename = img_entity["filename"]

        if filename and allowed_file_pdf(filename):
            pass
        else:
            return False

        _, hou = os.path.splitext(filename)
        signature = str(uuid.uuid1())
        outfilename = '{0}{1}'.format(signature, hou)
        outpath = 'static/upload/{0}'.format(signature[:2])
        if os.path.exists(outpath):
            pass
        else:
            os.makedirs(outpath)
        with open(os.path.join(outpath, outfilename), "wb") as fout:
            fout.write(img_entity["body"])

        sig_save = os.path.join(signature[:2], signature)
        path_save = os.path.join(signature[:2], outfilename)
        create_pdf = MEntity.create_entity(
            signature,
            path_save,
            img_desc,
            kind=post_data['kind'] if 'kind' in post_data else '2')
        if self.entity_ajax == False:
            self.redirect('/entity/{0}{1}'.format(sig_save, hou.lower()))
        else:
            if create_pdf:
                output = {'path_save': path_save}
            else:
                output = {'path_save': ''}
            return json.dump(output, self)
def Test():
    assert MEntity()