示例#1
0
 def blog_admin_delete_info(self):
     id = self.data.get_request_parameter('id', default=None)
     KMBlogInfo.delete_by_id(id)
     KMBlogCategory.delete_by_condition(info_id=id)
     KMBlogArticle.delete_by_condition(info_id=id)
     self.result['type'] = 'result'
     self.result['message'] = '削除できました。'
 def test_get(self):
     model = KMBlogCategory.get(None)
     # id = Noneの場合は新規モデルが取得できること
     eq_(model.id, None)
     model = KMBlogCategory.get(1)
     # id = 1の場合は登録済みのモデルが取得できること
     eq_(model.id, 1)
 def test_set_data(self):
     model = KMBlogCategory()
     data = self.mocker.CreateMock(KMData)
     data.get_request_parameter('name', default='', decode=True).AndReturn(self.test_name)
     data.get_request_parameter('info_id', default=None).AndReturn(self.test_info_id)
     self.mocker.ReplayAll()
     model.set_data(data);
     # KMDataで指定した値が設定されること
     eq_(model.name, self.test_name)
     eq_(model.info_id, self.test_info_id)
     eq_(model.error, None)
     self.mocker.UnsetStubs()
     self.mocker.VerifyAll()
示例#4
0
 def blog_page(self, blog_url, id):
     info = KMBlogInfo.find(url=blog_url)[0]
     article = KMBlogArticle.get(id)
     category = KMBlogCategory.get(article.category_id)
     article.comments = KMBlogComment.find(article_id=article.id)
     values = {'info': info, 'article': article, 'category': category}
     return self.render('kokemomo/plugins/blog/view/template/' + SETTINGS.BLOG_TEMPLATE + '/page', url=self.get_url, values=values, blog_url=blog_url)
    def test_save_data(self):

        model = KMBlogCategory.get(1)
        eq_(model.id, 1)
        eq_(model.name, '')
        eq_(model.info_id, None)
        data = self.mocker.CreateMock(KMData)
        data.get_request_parameter('name', default='', decode=True).AndReturn(self.test_name)
        data.get_request_parameter('info_id', default=None).AndReturn(self.test_info_id)
        self.mocker.ReplayAll()
        model = KMBlogCategory.save_data(1, data)
        # 既存データのidが指定された場合は値が上書きされること
        eq_(model.error.size(), 0)
        eq_(model.id, 1)
        eq_(model.name, self.test_name)
        eq_(model.info_id, self.test_info_id)
        self.mocker.VerifyAll()
 def test_save_data_error(self):
     data = self.mocker.CreateMock(KMData)
     data.get_request_parameter('name', default='', decode=True).AndReturn('')
     data.get_request_parameter('info_id', default=None).AndReturn('')
     self.mocker.ReplayAll()
     model = KMBlogCategory.save_data(None, data)
     # フィールドに値が設定されていない場合はエラーが返ること
     eq_(model.error.size(), 1)
     self.mocker.VerifyAll()
示例#7
0
 def blog_admin_category(self):
     '''
     blog admin page
     :return: template
     '''
     id = self.data.get_request_parameter('id', default=None)
     self.result['info'] = KMBlogInfo.all()
     self.result['category'] = KMBlogCategory.get(id=id)
     self.result['type'] = 'category'
     self.result['menu_list'] = get_menu_list()
示例#8
0
 def blog_admin_create_category(self):
     '''
     Create Blog Category.
     :return:
     '''
     id = self.data.get_request_parameter('id', default=None)
     self.result['info'] = KMBlogInfo.all()
     self.result['category'] = KMBlogCategory.save_data(id, self.data)
     self.result['type'] = 'category'
     self.result['menu_list'] = get_menu_list()
示例#9
0
 def blog_admin_category(self):
     '''
     blog admin page
     :return: template
     '''
     id = self.data.get_request_parameter('id', default=None)
     self.result['info'] = KMBlogInfo.all()
     self.result['category'] = KMBlogCategory.get(id=id)
     self.result['type'] = 'category'
     self.result['menu_list'] = get_menu_list()
示例#10
0
 def blog_admin_create_category(self):
     '''
     Create Blog Category.
     :return:
     '''
     id = self.data.get_request_parameter('id', default=None)
     self.result['info'] = KMBlogInfo.all();
     self.result['category'] = KMBlogCategory.save_data(id, self.data);
     self.result['type'] = 'category'
     self.result['menu_list'] = get_menu_list()
 def test_validate(self):
     model = KMBlogCategory()
     # 各フィールドに値が設定されていない場合はFalseが返され、エラーが取得できること
     eq_(model.validate(), False)
     eq_(model.error.get('name')['message'], 'カテゴリ名は必須です。')
     # 各フィールドに値が設定されている場合はTrueが返されること
     model = KMBlogCategory()
     model.name = self.test_name
     eq_(model.validate(), True)
 def test_save_data_id_none(self):
     data = self.mocker.CreateMock(KMData)
     data.get_request_parameter('name', default='', decode=True).AndReturn(self.test_name)
     data.get_request_parameter('info_id', default=None).AndReturn(self.test_info_id)
     self.mocker.ReplayAll()
     model = KMBlogCategory.save_data(None, data)
     # idが指定されていない場合は新規で登録されること(id=2)
     eq_(model.error.size(), 0)
     eq_(model.id, 2)
     eq_(model.name, self.test_name)
     eq_(model.info_id, self.test_info_id)
     self.mocker.VerifyAll()
示例#13
0
 def blog_admin_article(self):
     '''
     blog admin page
     :return: template
     '''
     id = self.data.get_request_parameter('id', default=None)
     info_id = self.data.get_request_parameter('info_id')
     self.result['info'] = KMBlogInfo.get(id=info_id)
     self.result['category'] = KMBlogCategory.find(info_id=info_id)
     self.result['article'] = KMBlogArticle.get(id=id)
     self.result['type'] = 'article'
     self.result['menu_list'] = get_menu_list()
示例#14
0
 def blog_admin_article(self):
     '''
     blog admin page
     :return: template
     '''
     id = self.data.get_request_parameter('id', default=None)
     info_id = self.data.get_request_parameter('info_id')
     self.result['info'] = KMBlogInfo.get(id=info_id)
     self.result['category'] = KMBlogCategory.find(info_id=info_id)
     self.result['article'] = KMBlogArticle.get(id=id)
     self.result['type'] = 'article'
     self.result['menu_list'] = get_menu_list()
示例#15
0
 def blog_top(self, blog_url):
     tab = self.data.get_request_parameter('tab', default=0)
     info = KMBlogInfo.find(url=blog_url)[0]
     categories = KMBlogCategory.find(info_id=info.id)
     info.articles = []
     for category in categories:
         page = self.data.get_request_parameter('page_' + str(category.id), default=0)
         res = KMBlogArticle.find(info_id=info.id, category_id=category.id, order=KMBlogArticle.updated_at.desc())
         category.page = page
         res = res[PAGE_SIZE*page:PAGE_SIZE*page+PAGE_SIZE]
         for article in res:
             article.comments = KMBlogComment.find(article_id=article.id)
         info.articles.extend(res)
     values = {'info': info, 'categories': categories, 'tab': tab}
     return self.render('kokemomo/plugins/blog/view/template/' + SETTINGS.BLOG_TEMPLATE + '/top', url=self.get_url, values=values, blog_url=blog_url)
示例#16
0
 def blog_admin_delete_category(self):
     id = self.data.get_request_parameter('id', default=None)
     KMBlogCategory.delete_by_id(id)
     KMBlogArticle.delete_by_condition(category_id=id)
 def setUp(self):
     initialize(rdb_path='sqlite:///:memory:')
     self.mocker = Mox()
     model = KMBlogCategory()
     model.save() # id = 1のデータを登録
示例#18
0
 def blog_admin_delete_category(self):
     id = self.data.get_request_parameter('id', default=None)
     KMBlogCategory.delete_by_id(id)
     KMBlogArticle.delete_by_condition(category_id=id)