def test_article_get(self): r = self.client.get(self.url + '/article') self.assertEqual(r.status_code, 401) article = Article() article.title = 'title-test' article.slug = 'test' article.content = 'content ' * 20 db.session.add(article) db.session.commit() r = self.client.get(self.url + '/article?slug=test') self.assertEqual(r.status_code, 401) tag = Tag() tag.name = 'tag' db.session.add(tag) category = Category() category.name = 'category' db.session.add(category) db.session.commit() article = Article() article.title = 'article' article.slug = 'slug' article.category = category article.content = 'content' article.tags = [tag] db.session.add(category) db.session.commit() r = self.client.get(self.url + '/article?slug=slug') self.assertEqual(r.status_code, 401)
def test_validate_account(self): site = Site.objects.get_current().domain user = BlogUser.objects.create_superuser(email="*****@*****.**", username="******", password="******") self.client.login(username='******', password='******') response = self.client.get('/admin/') self.assertEqual(response.status_code, 200) category = Category() category.name = "categoryaaa" category.created_time = datetime.datetime.now() category.last_mod_time = datetime.datetime.now() category.save() article = Article() article.title = "nicetitleaaa" article.body = "nicecontentaaa" article.author = user article.category = category article.type = 'a' article.status = 'p' article.save() response = self.client.get(article.get_admin_url()) self.assertEqual(response.status_code, 200)
def test_validate_article(self): from accounts.models import BlogUser site = Site.objects.get_current().domain user = BlogUser() user.email = "*****@*****.**" user.username = "******" user.password = "******" user.set_password("liangliangyy") user.save() response = self.client.get(user.get_absolute_url()) self.assertEqual(response.status_code, 200) category = Category() category.name = "category" category.created_time = datetime.datetime.now() category.last_mod_time = datetime.datetime.now() category.save() response = self.client.get(category.get_absolute_url()) self.assertEqual(response.status_code, 200) article = Article() article.title = "nicetitle" article.body = "nicecontent" article.author = user article.category = category article.type = 'a' article.status = 'p' article.save() response = self.client.get(article.get_absolute_url()) self.assertEqual(response.status_code, 200)
def test_validate_account(self): site = get_current_site().domain user = BlogUser.objects.create_superuser( email="*****@*****.**", username="******", password="******") testuser = BlogUser.objects.get(username='******') loginresult = self.client.login(username='******', password='******') self.assertEqual(loginresult, True) response = self.client.get('/admin/') self.assertEqual(response.status_code, 200) category = Category() category.name = "categoryaaa" category.created_time = datetime.datetime.now() category.last_mod_time = datetime.datetime.now() category.save() article = Article() article.title = "nicetitleaaa" article.body = "nicecontentaaa" article.author = user article.category = category article.type = 'a' article.status = 'p' article.save() response = self.client.get(article.get_admin_url()) self.assertEqual(response.status_code, 200)
def test_validate_register(self): self.assertEquals( 0, len(BlogUser.objects.filter(email='*****@*****.**'))) response = self.client.post( reverse('account:register'), { 'username': '******', 'email': '*****@*****.**', 'password1': 'password123!q@wE#R$T', 'password2': 'password123!q@wE#R$T', }) self.assertEquals( 1, len(BlogUser.objects.filter(email='*****@*****.**'))) user = BlogUser.objects.filter(email='*****@*****.**')[0] sign = get_md5(get_md5(settings.SECRET_KEY + str(user.id))) path = reverse('accounts:result') url = '{path}?type=validation&id={id}&sign={sign}'.format(path=path, id=user.id, sign=sign) response = self.client.get(url) self.assertEqual(response.status_code, 200) self.client.login(username='******', password='******') user = BlogUser.objects.filter(email='*****@*****.**')[0] user.is_superuser = True user.is_staff = True user.save() delete_sidebar_cache(user.username) category = Category() category.name = "categoryaaa" category.created_time = datetime.datetime.now() category.last_mod_time = datetime.datetime.now() category.save() article = Article() article.category = category article.title = "nicetitle333" article.body = "nicecontentttt" article.author = user article.type = 'a' article.status = 'p' article.save() response = self.client.get(article.get_admin_url()) self.assertEqual(response.status_code, 200) response = self.client.get(reverse('account:logout')) self.assertIn(response.status_code, [301, 302, 200]) response = self.client.get(article.get_admin_url()) self.assertIn(response.status_code, [301, 302, 200]) response = self.client.post(reverse('account:login'), { 'username': '******', 'password': '******' }) self.assertIn(response.status_code, [301, 302, 200]) response = self.client.get(article.get_admin_url()) self.assertIn(response.status_code, [301, 302, 200])
def post(self, request, format=None): try: ser = SubmitAricleSerializer(data=request.data) if ser._valid(): title = ser.data.get('title') cover = request.FILES['cover'] content = ser.data.get('content') category_id = ser.data.get('category_id') author_id = ser.data.get('author_id') promote = ser.data.get('promote') else: return Response({'status':'Bad request ...', status=status.HTTP_200_OK}) user = User.objects.get(id=author_id) author = UserProfile.objects.get(user=user) category = Category.objects.get(id=category_id) article = Article() article.title = title article.cover = cover article.content = content article.category = category article.author = author article.promote = promote article.save() return Response('status':'OK', status = status.HTTP_200_OK) except: return Response({'status': 'server error .....'}, status=status.HTTP_500_INTERNAL_SERVER_ERROR)
def test_validate_comment(self): site = Site.objects.get_current().domain user = BlogUser.objects.create_superuser(email="*****@*****.**", username="******", password="******") self.client.login(username='******', password='******') c = Category() c.name = "categoryccc" c.created_time = datetime.datetime.now() c.last_mod_time = datetime.datetime.now() c.save() article = Article() article.title = "nicetitleccc" article.body = "nicecontentccc" article.author = user article.category = c article.type = 'a' article.status = 'p' article.save() s = TextMessage([]) s.content = "nicetitleccc" rsp = search(s, None) self.assertTrue(rsp != '没有找到相关文章。') rsp = category(None, None) self.assertIsNotNone(rsp) rsp = recents(None, None) self.assertTrue(rsp != '暂时还没有文章') cmd = commands() cmd.title = "test" cmd.command = "ls" cmd.describe = "test" cmd.save() cmdhandler = CommandHandler() rsp = cmdhandler.run('test') self.assertIsNotNone(rsp) s.source = 'u' s.content = 'test' msghandler = MessageHandler(s, {}) #msghandler.userinfo.isPasswordSet = True #msghandler.userinfo.isAdmin = True msghandler.handler() s.content = 'y' msghandler.handler() s.content = 'idcard:12321233' msghandler.handler() s.content = 'weather:上海' msghandler.handler() s.content = 'admin' msghandler.handler() s.content = '123' msghandler.handler() s.content = 'exit' msghandler.handler()
def test_validate_account(self): site = Site.objects.get_current().domain user = BlogUser.objects.create_superuser(email="*****@*****.**", username="******", password="******") self.client.login(username='******', password='******') response = self.client.get('/admin/') self.assertEqual(response.status_code, 200) category = Category() category.name = "categoryaaa" category.created_time = datetime.datetime.now() category.last_mod_time = datetime.datetime.now() category.save() article = Article() article.title = "nicetitleaaa" article.body = "nicecontentaaa" article.author = user article.category = category article.type = 'a' article.status = 'p' article.save() response = self.client.get(article.get_admin_url()) self.assertEqual(response.status_code, 200)
def setUp(self): self.app = create_app('test') self.app_context = self.app.app_context() self.app_context.push() db.create_all() self.client = self.app.test_client() tag = Tag() tag.name = 'tagx' db.session.add(tag) category = Category() category.name = 'categoryx' db.session.add(category) db.session.commit() article = Article() article.title = 'articlex' article.slug = 'slugx' article.category = category article.content = 'contentx' article.tags = [tag] db.session.add(category) db.session.commit() user = User() user.name = 'admin' user.password = '******' db.session.add(user) db.session.commit()
def test_validate_comment(self): site = Site.objects.get_current().domain user = BlogUser.objects.create_superuser(email="*****@*****.**", username="******", password="******") self.client.login(username='******', password='******') c = Category() c.name = "categoryccc" c.created_time = datetime.datetime.now() c.last_mod_time = datetime.datetime.now() c.save() article = Article() article.title = "nicetitleccc" article.body = "nicecontentccc" article.author = user article.category = c article.type = 'a' article.status = 'p' article.save() s = TextMessage([]) s.content = "nicetitleccc" rsp = search(s, None) self.assertTrue(rsp != '没有找到相关文章。') rsp = category(None, None) self.assertIsNotNone(rsp) rsp = recents(None, None) self.assertTrue(rsp != '暂时还没有文章') cmd = commands() cmd.title = "test" cmd.command = "ls" cmd.describe = "test" cmd.save() cmdhandler = CommandHandler() rsp = cmdhandler.run('test') self.assertIsNotNone(rsp) s.source = 'u' s.content = 'test' msghandler = MessageHandler(s, {}) #msghandler.userinfo.isPasswordSet = True #msghandler.userinfo.isAdmin = True msghandler.handler() s.content = 'y' msghandler.handler() s.content='idcard:12321233' msghandler.handler() s.content='weather:上海' msghandler.handler() s.content='admin' msghandler.handler() s.content='123' msghandler.handler() s.content = 'exit' msghandler.handler()
def AddArticle(request): """ Add a new blog. """ if not request.user.is_authenticated(): return render_to_response("user/login.html", RequestContext(request)) if request.method == 'POST': title = request.POST.get('title', '') body = request.POST.get('body', '') status = request.POST.get('status', '') abstract = request.POST.get('abstract', '') keywords = request.POST.get('keywords', '') en_keywords = request.POST.get('en_keywords', '') topped = request.POST.get('topped', '') price = request.POST.get('price', '') attachment = request.POST.get('attachment', '') category = request.POST.get('category', '') tag = request.POST.get('tag', '') myFile = request.FILES.get("attachment", None) if not myFile: return HttpResponse('Please upload file.') destination = open(os.path.join(settings.MEDIA_ROOT, myFile.name), 'wb+') for chunk in myFile.chunks(): destination.write(chunk) destination.close() attachedFile = Attachment() attachedFile.name = myFile.name attachedFile.attachment = myFile.name newFile = attachedFile.save() article = Article() article.title = title article.body = body article.status = status article.abstract = abstract article.keywords = keywords article.en_keywords = en_keywords article.topped = topped article.price = price article.attachment = Attachment.objects.filter(name=myFile.name)[0] article.category = Category.objects.filter(id=category)[0] article.tag = Tag.objects.filter(id=tag)[0] article.user = User.objects.filter(id=request.user.id)[0] article.save() article_id = Article.objects.filter(title=title, status=article.status, category=article.category, tag=article.tag)[0] url = "article/" + str(article_id.id) return HttpResponseRedirect(url)
def add(request): user = '' nt = time.asctime(time.localtime(time.time())) if request.POST: if request.POST.has_key('_save'): addblog = Article() addblog.category = request.POST['category'] addblog.content = request.POST['content'] p = r'<p>(<img src=.+\.jpg)' pp = re.compile(p) pic = pp.findall(addblog.content) if pic == []: addblog.picture = 0 else: for j in pic: addblog.picture = j + '/>' break if (Article.objects.filter( category=request.POST['category']).filter( content=request.POST['content'])): addblog.update_time = nt else: addblog.pub_date = nt addblog.title = request.POST['title'] addblog.save() return HttpResponseRedirect("/hello") if request.POST.has_key('_addanother'): addblog = Article() addblog.category = request.POST['category'] addblog.content = request.POST['content'] if (Article.objects.filter( category=request.POST['category']).filter( content=request.POST['content'])): addblog.update_time = nt else: addblog.pub_date = nt addblog.title = request.POST['title'] addblog.save() return HttpResponseRedirect("/add") return render(request, "add.html")
def test_validate_comment(self): site = get_current_site().domain user = BlogUser.objects.create_superuser( email="*****@*****.**", username="******", password="******") self.client.login(username='******', password='******') c = Category() c.name = "categoryccc" c.created_time = timezone.now() c.last_mod_time = timezone.now() c.save() article = Article() article.title = "nicetitleccc" article.body = "nicecontentccc" article.author = user article.category = c article.type = 'a' article.status = 'p' article.save() s = TextMessage([]) s.content = "nice" rsp = search(s, None) rsp = category(None, None) self.assertIsNotNone(rsp) rsp = recents(None, None) self.assertTrue(rsp != 'No articles yet') cmd = commands() cmd.title = "test" cmd.command = "ls" cmd.describe = "test" cmd.save() cmdhandler = CommandHandler() rsp = cmdhandler.run('test') self.assertIsNotNone(rsp) s.source = 'u' s.content = 'test' msghandler = MessageHandler(s, {}) # msghandler.userinfo.isPasswordSet = True # msghandler.userinfo.isAdmin = True msghandler.handler() s.content = 'y' msghandler.handler() s.content = 'idcard:12321233' msghandler.handler() s.content = 'weather:
def test_validate_register(self): self.assertEquals( 0, len(BlogUser.objects.filter(email='*****@*****.**'))) response = self.client.post( reverse('account:register'), { 'username': '******', 'email': '*****@*****.**', 'password1': 'password123!q@wE#R$T', 'password2': 'password123!q@wE#R$T', }) self.assertEquals( 1, len(BlogUser.objects.filter(email='*****@*****.**'))) self.client.login(username='******', password='******') user = BlogUser.objects.filter(email='*****@*****.**')[0] user.is_superuser = True user.is_staff = True user.save() delete_view_cache(user.username) category = Category() category.name = "categoryaaa" category.created_time = datetime.datetime.now() category.last_mod_time = datetime.datetime.now() category.save() article = Article() article.category = category article.title = "nicetitle333" article.body = "nicecontentttt" article.author = user article.type = 'a' article.status = 'p' article.save() response = self.client.get(article.get_admin_url()) self.assertEqual(response.status_code, 200) response = self.client.get(reverse('account:logout')) self.assertIn(response.status_code, [301, 302, 200]) response = self.client.get(article.get_admin_url()) self.assertIn(response.status_code, [301, 302, 200]) response = self.client.post(reverse('account:login'), { 'username': '******', 'password': '******' }) self.assertIn(response.status_code, [301, 302, 200]) response = self.client.get(article.get_admin_url()) self.assertIn(response.status_code, [301, 302, 200])
def post(self): post_parser = reqparse.RequestParser() post_parser.add_argument('slug', type=str, required=True, help='the argument cannot be blank') post_parser.add_argument('title', type=str, required=True, help='the argument cannot be blank') post_parser.add_argument('content', type=str, required=True, help='the argument cannot be blank') post_parser.add_argument('category_id', type=blank_and_int, help='the argument cannot be blank') post_parser.add_argument('tag_ids', type=int, action='append', help='the argument cannot be blank') args = post_parser.parse_args() try: article = Article() article.title = args['title'] article.slug = args['slug'] # raw_content -> html article.raw_content = args['content'] article.content = markdown.markdown( article.raw_content, extensions=[ 'markdown.extensions.extra', 'markdown.extensions.codehilite', 'markdown.extensions.toc', ]) article.category = Category.query.get(args['category_id']) article.tags = [ Tag.query.get_or_404(id) for id in args['tag_ids'] ] if args['tag_ids'] else [] db.session.add(article) db.session.commit() except sqlalchemy.exc.IntegrityError: db.session.rollback() return {'status': 400, 'msg': '字段冲突'}, 400 except sqlalchemy.exc.InvalidRequestError: db.session.rollback() return {'status': 400, 'msg': '字段冲突'}, 400 except LookupError: db.session.rollback() return {'status': 400, 'msg': '编码冲突'}, 400 return {'status': 200, 'msg': '新建文章成功'}
def get(self): from .models import Blog, Article, Tag, Category data = dict( date_added=request.args.get('date_added',None), date_end=request.args.get('date_end',None), name=request.args.get('name',None), description=request.args.get('description',None), slug=request.args.get('slug',None), short_url=request.args.get('short_url',None), title=request.args.get('title',None), add_to_nav=request.args.get('add_to_nav',None), add_sidebar=request.args.get('add_sidebar',None), visible=request.args.get('visible',None), meta_title=request.args.get('meta_title',None), content=request.args.get('content',None), template=request.args.get('template',None), category=request.args.get('category',None), tags=request.args.get('tags',None), use_base_template=request.args.get('use_base_template',None), ) blog = Blog.get_current_blog() post = Article.query.filter(Article.name==data['name'])\ .filter(Article.blog==blog)\ .first() if post is not None: res = 0 else: tags = [x.name for x in Tag.query.all()] new_tags = [] for tag in data['tags']: if not tag in tags: t = Tag() t.name = tag new_tags.append(t.save()) new_tags = new_tags + tags post = Article() post.tags = new_tags post.name = data.get('name') post.date_added = data.get('date_added') post.description = data.get('description',None) post.slug = data.get('slug',None) post.url = data.get('short_url',None) post.title = data.get('title',None) post.visible = data.get('visible',None) post.meta_title = data.get('meta_title',None) post.content = data.get('content',None) post.category = data.get('category',None) post.save() res = 1 return jsonify(result=res,content=data['content'])
def test_article(self): # 这里就简单的测试创建5篇文章 for i in range(1, 6): article = Article() article.category = self.category article.author = self.superuser article.title = 'title' + str(i) article.content = 'content' + str(i) article.save() self.assertEqual(len(Article.objects.all()), 5 + 1) article_detail_res = self.client.get( Article.objects.first().get_absolute_url()) self.assertEqual(article_detail_res.status_code, 200)
def get(self): from .models import Blog, Article, Tag, Category data = dict( date_added=request.args.get('date_added', None), date_end=request.args.get('date_end', None), name=request.args.get('name', None), description=request.args.get('description', None), slug=request.args.get('slug', None), short_url=request.args.get('short_url', None), title=request.args.get('title', None), add_to_nav=request.args.get('add_to_nav', None), add_sidebar=request.args.get('add_sidebar', None), visible=request.args.get('visible', None), meta_title=request.args.get('meta_title', None), content=request.args.get('content', None), template=request.args.get('template', None), category=request.args.get('category', None), tags=request.args.get('tags', None), use_base_template=request.args.get('use_base_template', None), ) blog = Blog.get_current_blog() post = Article.query.filter(Article.name==data['name'])\ .filter(Article.blog==blog)\ .first() if post is not None: res = 0 else: tags = [x.name for x in Tag.query.all()] new_tags = [] for tag in data['tags']: if not tag in tags: t = Tag() t.name = tag new_tags.append(t.save()) new_tags = new_tags + tags post = Article() post.tags = new_tags post.name = data.get('name') post.date_added = data.get('date_added') post.description = data.get('description', None) post.slug = data.get('slug', None) post.url = data.get('short_url', None) post.title = data.get('title', None) post.visible = data.get('visible', None) post.meta_title = data.get('meta_title', None) post.content = data.get('content', None) post.category = data.get('category', None) post.save() res = 1 return jsonify(result=res, content=data['content'])
def test_validate_register(self): self.assertEquals(0, len(BlogUser.objects.filter(email='*****@*****.**'))) response = self.client.post(reverse('account:register'), { 'username': '******', 'email': '*****@*****.**', 'password1': 'password123', 'password2': 'password123', }) self.assertEquals(1, len(BlogUser.objects.filter(email='*****@*****.**'))) self.client.login(username='******', password='******') user = BlogUser.objects.filter(email='*****@*****.**')[0] user.is_superuser = True user.is_staff = True user.save() category = Category() category.name = "categoryaaa" category.created_time = datetime.datetime.now() category.last_mod_time = datetime.datetime.now() category.save() article = Article() article.category = category article.title = "nicetitle333" article.body = "nicecontentttt" article.author = user article.type = 'a' article.status = 'p' article.save() response = self.client.get(article.get_admin_url()) self.assertEqual(response.status_code, 200) response = self.client.get(reverse('account:logout')) self.assertIn(response.status_code, [301, 302]) response = self.client.get(article.get_admin_url()) self.assertIn(response.status_code, [301, 302]) response = self.client.post(reverse('account:login'), { 'username': '******', 'password': '******' }) self.assertIn(response.status_code, [301, 302]) response = self.client.get(article.get_admin_url()) self.assertEqual(response.status_code, 200)
def publish(request): login_value = get_login_value(request) if login_value['state'] == 2: return HttpResponseRedirect("../home") if request.method == 'POST': article = Article() article.title = request.POST['title'] article.category = request.POST['category'] article.introduction = request.POST['description'] html = request.POST['markdown'].replace(' ', ' ').replace('\\n', '\n').replace('<', '<').replace('>', '>') html = append_script(html) article.content = html article.save() return HttpResponseRedirect("../user") else: return HttpResponseRedirect("../home")
def test_validate_comment(self): site = Site.objects.get_current().domain user = BlogUser.objects.create_superuser( email="*****@*****.**", username="******", password="******") self.client.login(username='******', password='******') category = Category() category.name = "categoryccc" category.created_time = datetime.datetime.now() category.last_mod_time = datetime.datetime.now() category.save() article = Article() article.title = "nicetitleccc" article.body = "nicecontentccc" article.author = user article.category = category article.type = 'a' article.status = 'p' article.save() commenturl = reverse('comments:postcomment', kwargs={'article_id': article.id}) response = self.client.post(commenturl, {'body': '123ffffffffff'}) self.assertEqual(response.status_code, 200) article = Article.objects.get(pk=article.pk) self.assertEqual(len(article.comment_list()), 0) response = self.client.post(commenturl, { 'body': '123ffffffffff', 'email': user.email, 'name': user.username }) self.assertEqual(response.status_code, 302) article = Article.objects.get(pk=article.pk) self.assertEqual(len(article.comment_list()), 1)
def test_validate_article(self): site = Site.objects.get_current().domain user = BlogUser.objects.get_or_create(email="*****@*****.**", username="******")[0] user.set_password("liangliangyy") user.save() response = self.client.get(user.get_absolute_url()) self.assertEqual(response.status_code, 200) category = Category() category.name = "category" category.created_time = datetime.datetime.now() category.last_mod_time = datetime.datetime.now() category.save() tag = Tag() tag.name = "nicetag" tag.save() article = Article() article.title = "nicetitle" article.body = "nicecontent" article.author = user article.category = category article.type = 'a' article.status = 'p' article.save() self.assertEqual(0, article.tags.count()) article.tags.add(tag) article.save() self.assertEqual(1, article.tags.count()) response = self.client.get(article.get_absolute_url()) self.assertEqual(response.status_code, 200) response = self.client.get(tag.get_absolute_url()) self.assertEqual(response.status_code, 200) response = self.client.get(category.get_absolute_url()) self.assertEqual(response.status_code, 200) from DjangoBlog.spider_notify import SpiderNotify SpiderNotify.baidu_notify([article.get_full_url()])
def addArticle(request): categories=Category.objects.all(); if request.method=='POST': form=ArticleForm(request.POST,request.FILES) if form.is_valid(): title=form.cleaned_data['title'];summary=form.cleaned_data['summary'];paragraph=form.cleaned_data['paragraph'] caption=form.cleaned_data['caption'];link=form.cleaned_data['link'];linkText=form.cleaned_data['linkText']; image=form.cleaned_data['image'];category=form.cleaned_data['category']; envoi=True #creation of the section object article=Article(title=title,summary=summary,paragraph=paragraph,caption=caption,image=image,link=link,linkText=linkText) article.category=category; article.save(); return home(request); #return page(request,category); else: addArticle=True; displayForm=True; form=ArticleForm() return render(request, 'blog/blogForm.html',locals())
def publish(request): logging_status = get_logging_status(request) if logging_status['login_state'] == BLOGSETTING.UNLOGGED: return HttpResponseRedirect("../home") if request.method == 'POST': article = Article() article.title = request.POST['title'] article.category = request.POST['category'] article.introduction = request.POST['description'] html = request.POST['html'].replace(' ', ' ').replace('\\n', '\n') \ .replace('<', '<').replace('>', '>') html = append_script(html) markdown = request.POST['markdown'].replace(' ', ' ').replace('\\n', '\n') \ .replace('<', '<').replace('>', '>') article.markdown = markdown article.content = html article.save() return HttpResponseRedirect("../user") else: return HttpResponseRedirect("../home")
def new_article(): try: title = request.json.get('title') slug = request.json.get('slug') category_id = request.json.get('category') tag_ids = request.json.get('tags') content = request.json.get('content') except AttributeError: abort(400) if title and content: article = Article() article.title = title article.slug = slug try: article.category = Category.query.get(category_id) except Exception: pass article.tags = [Tag.query.get(int(id)) for id in tag_ids] article.content = content db.session.add(article) db.session.commit() return jsonify({'status': 200}) return jsonify({'status': 404}), 404
def test_validate_article(self): site = Site.objects.get_current().domain user = BlogUser.objects.get_or_create(email="*****@*****.**", username="******")[0] user.set_password("systemsgt.cn") user.is_staff = True user.is_superuser = True user.save() response = self.client.get(user.get_absolute_url()) self.assertEqual(response.status_code, 200) category = Category() category.name = "category" category.created_time = datetime.datetime.now() category.last_mod_time = datetime.datetime.now() category.save() tag = Tag() tag.name = "nicetag" tag.save() article = Article() article.title = "nicetitle" article.body = "nicecontent" article.author = user article.category = category article.type = 'a' article.status = 'p' article.save() self.assertEqual(0, article.tags.count()) article.tags.add(tag) article.save() self.assertEqual(1, article.tags.count()) response = self.client.get(article.get_absolute_url()) self.assertEqual(response.status_code, 200) from DjangoBlog.spider_notify import SpiderNotify SpiderNotify.notify(article.get_absolute_url()) response = self.client.get(tag.get_absolute_url()) self.assertEqual(response.status_code, 200) response = self.client.get(category.get_absolute_url()) self.assertEqual(response.status_code, 200) response = self.client.get('/search', {'q': 'django'}) self.assertEqual(response.status_code, 200) s = load_articletags(article) self.assertIsNotNone(s) p = Paginator(Article.objects.all(), 2) s = load_pagination_info(p.page(1), '', '') self.assertIsNotNone(s) p = Paginator(Tag.objects.all(), 2) s = load_pagination_info(p.page(1), '分类标签归档', 'tagname') self.assertIsNotNone(s) p = Paginator(BlogUser.objects.all(), 2) s = load_pagination_info(p.page(1), '作者文章归档', 'username') self.assertIsNotNone(s) p = Paginator(Category.objects.all(), 2) s = load_pagination_info(p.page(1), '分类目录归档', 'categoryname') self.assertIsNotNone(s) f = BlogSearchForm() f.search() self.client.login(username='******', password='******') from DjangoBlog.spider_notify import SpiderNotify SpiderNotify.baidu_notify([article.get_full_url()]) rsp = self.client.get('/refresh/') self.assertEqual(rsp.status_code, 200) from blog.templatetags.blog_tags import gravatar_url, gravatar u = gravatar_url('*****@*****.**') u = gravatar('*****@*****.**')
def add(request,*arg,**kwarg): uid=int(-1) userInfos=common.Users(request,uid) currentUser=userInfos["currentuser"] categoryList=common.categoryList(currentUser.id) channelList=Channel.objects.all() if request.POST.has_key('ok'): channel1Id=int(utility.GetPostData(request,'channel1',0)) channel2Id=int(utility.GetPostData(request,'channel1',0)) cateId=int(utility.GetPostData(request,'category')) category=Category.objects.get(id=utility.GetPostData(request,'category')) title = utility.GetPostData(request,'title') pic = utility.GetPostData(request,'pic') tags=utility.GetPostData(request,'tags') summary=utility.GetPostData(request,'summary') content = utility.GetPostData(request,'content') status = utility.GetPostData(request,'status') ishome=utility.GetPostData(request,'ishome') isrecommend = utility.GetPostData(request,'isrecommend') istop = utility.GetPostData(request,'istop') isoriginal=utility.GetPostData(request,'isoriginal') cancomment = utility.GetPostData(request,'cancomment') password = utility.GetPostData(request,'password') if summary=="": tempContent=utility.RemoveTags(content) summary=tempContent[0:200] if len(tempContent)>200 else tempContent else: summary=utility.RemoveTags(summary) articleInfo=Article(category=category) articleInfo.channel1_id=channel1Id articleInfo.channel2_id=channel2Id articleInfo.category=category articleInfo.title = title articleInfo.pic=pic articleInfo.tags=tags articleInfo.summary=summary articleInfo.content = content articleInfo.createtime=datetime.datetime.now() articleInfo.views=0 articleInfo.comments=0 articleInfo.goods=0 articleInfo.bads=0 articleInfo.status=1 if status else 0 articleInfo.user_id=currentUser.id articleInfo.username=currentUser.username articleInfo.ishome=1 if ishome else 0 articleInfo.isrecommend=1 if isrecommend else 0 articleInfo.istop=1 if istop else 0 articleInfo.isoriginal=1 if isoriginal else 0 articleInfo.cancomment=1 if cancomment else 0 articleInfo.password=password articleInfo.save() #更新分类统计信息 不是默认分类并且是发布的文章 if category.id !=1 and status: category.articles+=1 category.save() #更新用户文章统计信息 currentBlog=userInfos["currentblog"] currentBlog.articles+=1 currentBlog.save() if channel1Id>0: channel1=Channel.objects.get(id=channel1Id) channel1.articles+=1 channel1.save() if channel2Id>0: channel2=Channel.objects.get(id=channel2Id) channel2.articles+=1 channel2.save() return HttpResponseRedirect('/%d/' %request.user.id) else: articleInfo=Article() return utility.my_render_to_response(request,"pub/articleedit.html",locals())
def test_validate_article(self): site = get_current_site().domain user = BlogUser.objects.get_or_create(email="*****@*****.**", username="******")[0] user.set_password("superstrongz") user.is_staff = True user.is_superuser = True user.save() response = self.client.get(user.get_absolute_url()) self.assertEqual(response.status_code, 200) response = self.client.get('admin/admin/logentry/') s = SideBar() s.sequence = 1 s.name = 'test' s.content = 'test content' s.is_enable = True s.save() category = Category() category.name = "category" category.created_time = datetime.datetime.now() category.last_mod_time = datetime.datetime.now() category.save() tag = Tag() tag.name = "nicetag" tag.save() article = Article() article.title = "nicetitle" article.body = "nicecontent" article.author = user article.category = category article.type = 'a' article.status = 'p' article.save() self.assertEqual(0, article.tags.count()) article.tags.add(tag) article.save() self.assertEqual(1, article.tags.count()) for i in range(20): article = Article() article.title = "nicetitle" + str(i) article.body = "nicetitle" + str(i) article.author = user article.category = category article.type = 'a' article.status = 'p' article.save() article.tags.add(tag) article.save() response = self.client.get(article.get_absolute_url()) self.assertEqual(response.status_code, 200) from DjangoBlog.spider_notify import SpiderNotify SpiderNotify.notify(article.get_absolute_url()) response = self.client.get(tag.get_absolute_url()) self.assertEqual(response.status_code, 200) response = self.client.get(category.get_absolute_url()) self.assertEqual(response.status_code, 200) response = self.client.get('/search', {'q': 'django'}) self.assertEqual(response.status_code, 200) s = load_articletags(article) self.assertIsNotNone(s) rsp = self.client.get('/refresh') self.assertEqual(rsp.status_code, 302) self.client.login(username='******', password='******') rsp = self.client.get('/refresh') self.assertEqual(rsp.status_code, 200) response = self.client.get(reverse('blog:archives')) self.assertEqual(response.status_code, 200) p = Paginator(Article.objects.all(), 2) self.__check_pagination__(p, '', '') p = Paginator(Article.objects.filter(tags=tag), 2) self.__check_pagination__(p, '分类标签归档', tag.slug) p = Paginator(Article.objects.filter(author__username='******'), 2) self.__check_pagination__(p, '作者文章归档', 'superstrongz') p = Paginator(Article.objects.filter(category=category), 2) self.__check_pagination__(p, '分类目录归档', category.slug) f = BlogSearchForm() f.search() self.client.login(username='******', password='******') from DjangoBlog.spider_notify import SpiderNotify SpiderNotify.baidu_notify([article.get_full_url()]) from blog.templatetags.blog_tags import gravatar_url, gravatar u = gravatar_url('*****@*****.**') u = gravatar('*****@*****.**')
def test_validate_article(self): site = Site.objects.get_current().domain user = BlogUser.objects.get_or_create(email="*****@*****.**", username="******")[0] user.set_password("liangliangyy") user.save() response = self.client.get(user.get_absolute_url()) self.assertEqual(response.status_code, 200) category = Category() category.name = "category" category.created_time = datetime.datetime.now() category.last_mod_time = datetime.datetime.now() category.save() tag = Tag() tag.name = "nicetag" tag.save() article = Article() article.title = "nicetitle" article.body = "nicecontent" article.author = user article.category = category article.type = 'a' article.status = 'p' article.save() self.assertEqual(0, article.tags.count()) article.tags.add(tag) article.save() self.assertEqual(1, article.tags.count()) response = self.client.get(article.get_absolute_url()) self.assertEqual(response.status_code, 200) response = self.client.get(tag.get_absolute_url()) self.assertEqual(response.status_code, 200) response = self.client.get(category.get_absolute_url()) self.assertEqual(response.status_code, 200) response = self.client.get('/search', {'q': 'django'}) self.assertEqual(response.status_code, 200) s = load_articletags(article) self.assertIsNotNone(s) p = Paginator(Article.objects.all(), 2) s = load_pagination_info(p.page(1), '', '') self.assertIsNotNone(s) p = Paginator(Tag.objects.all(), 2) s = load_pagination_info(p.page(1), '分类标签归档', 'tagname') self.assertIsNotNone(s) p = Paginator(BlogUser.objects.all(), 2) s = load_pagination_info(p.page(1), '作者文章归档', 'username') self.assertIsNotNone(s) p = Paginator(Category.objects.all(), 2) s = load_pagination_info(p.page(1), '分类目录归档', 'categoryname') self.assertIsNotNone(s) f = BlogSearchForm() f.search() from DjangoBlog.spider_notify import SpiderNotify SpiderNotify.baidu_notify([article.get_full_url()])
def test_validate_article(self): # site = get_current_site().domain user = BlogUser.objects.get_or_create(email="*****@*****.**", username="******")[0] user.set_password("liangliangyy") user.is_staff = True user.is_superuser = True user.save() response = self.client.get(user.get_absolute_url()) self.assertEqual(response.status_code, 200) response = self.client.get('/admin/servermanager/emailsendlog/') response = self.client.get('admin/admin/logentry/') s = SideBar() s.sequence = 1 s.name = 'test' s.content = 'test content' s.is_enable = True s.save() category = Category() category.name = "category" category.created_time = datetime.datetime.now() category.last_mod_time = datetime.datetime.now() category.save() tag = Tag() tag.name = "nicetag" tag.save() article = Article() article.title = "nicetitle" article.body = "nicecontent" article.author = user article.category = category article.type = 'a' article.status = 'p' article.save() self.assertEqual(0, article.tags.count()) article.tags.add(tag) article.save() self.assertEqual(1, article.tags.count()) for i in range(20): article = Article() article.title = "nicetitle" + str(i) article.body = "nicetitle" + str(i) article.author = user article.category = category article.type = 'a' article.status = 'p' article.save() article.tags.add(tag) article.save() response = self.client.get(article.get_absolute_url()) self.assertEqual(response.status_code, 200) SpiderNotify.notify(article.get_absolute_url()) response = self.client.get(tag.get_absolute_url()) self.assertEqual(response.status_code, 200) response = self.client.get(category.get_absolute_url()) self.assertEqual(response.status_code, 200) response = self.client.get('/search', {'q': 'django'}) self.assertEqual(response.status_code, 200) s = load_articletags(article) self.assertIsNotNone(s) rsp = self.client.get('/refresh') self.assertEqual(rsp.status_code, 302) self.client.login(username='******', password='******') rsp = self.client.get('/refresh') self.assertEqual(rsp.status_code, 200) response = self.client.get(reverse('blog:archives')) self.assertEqual(response.status_code, 200) p = Paginator(Article.objects.all(), 2) self.__check_pagination__(p, '', '') p = Paginator(Article.objects.filter(tags=tag), 2) self.__check_pagination__(p, '分类标签归档', tag.slug) p = Paginator(Article.objects.filter(author__username='******'), 2) self.__check_pagination__(p, '作者文章归档', 'liangliangyy') p = Paginator(Article.objects.filter(category=category), 2) self.__check_pagination__(p, '分类目录归档', category.slug) f = BlogSearchForm() f.search() self.client.login(username='******', password='******') SpiderNotify.baidu_notify([article.get_full_url()]) # u = gravatar_url('*****@*****.**') u = gravatar('*****@*****.**') link = Links(sequence=1, name="lylinux", link='https://wwww.lylinux.net') link.save() response = self.client.get('/links.html') self.assertEqual(response.status_code, 200)
def test_validate_comment(self): site = get_current_site().domain user = BlogUser.objects.create_superuser( email="*****@*****.**", username="******", password="******") self.client.login(username='******', password='******') category = Category() category.name = "categoryccc" category.created_time = datetime.datetime.now() category.last_mod_time = datetime.datetime.now() category.save() article = Article() article.title = "nicetitleccc" article.body = "nicecontentccc" article.author = user article.category = category article.type = 'a' article.status = 'p' article.save() commenturl = reverse('comments:postcomment', kwargs={'article_id': article.id}) response = self.client.post(commenturl, {'body': '123ffffffffff'}) self.assertEqual(response.status_code, 200) article = Article.objects.get(pk=article.pk) self.assertEqual(len(article.comment_list()), 0) response = self.client.post(commenturl, { 'body': '123ffffffffff', 'email': user.email, 'name': user.username }) self.assertEqual(response.status_code, 302) article = Article.objects.get(pk=article.pk) self.assertEqual(len(article.comment_list()), 1) parent_comment_id = article.comment_list()[0].id response = self.client.post( commenturl, { 'body': ''' # Title1 ```python import os ``` [url](https://www.lylinux.net/) [ddd](http://www.baidu.com) ''', 'email': user.email, 'name': user.username, 'parent_comment_id': parent_comment_id }) self.assertEqual(response.status_code, 302) article = Article.objects.get(pk=article.pk) self.assertEqual(len(article.comment_list()), 2) comment = Comment.objects.get(id=parent_comment_id) tree = parse_commenttree(article.comment_list(), comment) self.assertEqual(len(tree), 1) data = show_comment_item(comment, True) self.assertIsNotNone(data) s = get_max_articleid_commentid() self.assertIsNotNone(s)
def test_validate_article(self): site = Site.objects.get_current().domain user = BlogUser.objects.get_or_create(email="*****@*****.**", username="******")[0] user.set_password("liangliangyy") user.is_staff = True user.is_superuser = True user.save() response = self.client.get(user.get_absolute_url()) self.assertEqual(response.status_code, 200) s = SideBar() s.sequence = 1 s.name = 'test' s.content = 'test content' s.is_enable = True s.save() category = Category() category.name = "category" category.created_time = datetime.datetime.now() category.last_mod_time = datetime.datetime.now() category.save() tag = Tag() tag.name = "nicetag" tag.save() article = Article() article.title = "nicetitle" article.body = "nicecontent" article.author = user article.category = category article.type = 'a' article.status = 'p' article.save() self.assertEqual(0, article.tags.count()) article.tags.add(tag) article.save() self.assertEqual(1, article.tags.count()) for i in range(20): article = Article() article.title = "nicetitle" + str(i) article.body = "nicetitle" + str(i) article.author = user article.category = category article.type = 'a' article.status = 'p' article.save() article.tags.add(tag) article.save() response = self.client.get(article.get_absolute_url()) self.assertEqual(response.status_code, 200) from DjangoBlog.spider_notify import SpiderNotify SpiderNotify.notify(article.get_absolute_url()) response = self.client.get(tag.get_absolute_url()) self.assertEqual(response.status_code, 200) response = self.client.get(category.get_absolute_url()) self.assertEqual(response.status_code, 200) response = self.client.get('/search', {'q': 'django'}) self.assertEqual(response.status_code, 200) s = load_articletags(article) self.assertIsNotNone(s) rsp = self.client.get('/refresh') self.assertEqual(rsp.status_code, 302) self.client.login(username='******', password='******') rsp = self.client.get('/refresh') self.assertEqual(rsp.status_code, 200) response = self.client.get(reverse('blog:archives')) self.assertEqual(response.status_code, 200) p = Paginator(Article.objects.all(), 2) self.__check_pagination__(p, '', '') p = Paginator(Article.objects.filter(tags=tag), 2) self.__check_pagination__(p, '分类标签归档', tag.slug) p = Paginator(Article.objects.filter(author__username='******'), 2) self.__check_pagination__(p, '作者文章归档', 'liangliangyy') p = Paginator(Article.objects.filter(category=category), 2) self.__check_pagination__(p, '分类目录归档', category.slug) f = BlogSearchForm() f.search() self.client.login(username='******', password='******') from DjangoBlog.spider_notify import SpiderNotify SpiderNotify.baidu_notify([article.get_full_url()]) from blog.templatetags.blog_tags import gravatar_url, gravatar u = gravatar_url('*****@*****.**') u = gravatar('*****@*****.**')
from blog.models import Article, Category cat = Category(name="blog") cat.save() art = Article(title="My first blog lol", author="Me lol", content="This is a blog it's so blog lolg") art.category = cat art.save() art = Article(title="Anotherone", author="Me lol", content="Has someone seen my pie it's cherry tasting?") art.category = cat art.save() art = Article(title="Life is sad", author="Me lol", content="For when the rain is hard and the dead leaves on the ground smell like the harsh reality of the lives of forgotten souls of the past, my pie is gone and so am I.") art.category = cat art.save()