本文整理汇总了Python中questions.tests.answer函数的典型用法代码示例。如果您正苦于以下问题:Python answer函数的具体用法?Python answer怎么用?Python answer使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了answer函数的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Python代码示例。
示例1: test_asker_replies_arent_a_contribution
def test_asker_replies_arent_a_contribution(self):
"""Verify that replies posted by the question creator aren't counted.
If a user has 10 replies to their own question, they aren't counted as
a contributor.
"""
# A user with 10 answers to own question.
q = question(save=True)
u = q.creator
for x in range(10):
answer(creator=u, question=q, save=True)
# Create metric kinds and update metrics for tomorrow (today's
# activity shows up tomorrow).
self._make_contributor_metric_kinds()
update_contributor_metrics(day=date.today() + timedelta(days=1))
r = self._get_api_result('kpi_active_contributors')
eq_(r['objects'][0]['support_forum'], 0)
# Change the question creator, now we should have 1 contributor.
q.creator = user(save=True)
q.save()
cache.clear() # We need to clear the cache for new results.
Metric.objects.all().delete()
update_contributor_metrics(day=date.today() + timedelta(days=1))
r = self._get_api_result('kpi_active_contributors')
eq_(r['objects'][0]['support_forum'], 1)
开发者ID:MiChrFri,项目名称:kitsune,代码行数:30,代码来源:test_api.py
示例2: test_recent_counts_with_filter
def test_recent_counts_with_filter(self):
"""Verify that recent_asked_count and recent_unanswered_count
respect filters passed."""
now = datetime.now()
question(created=now, locale='en-US', save=True)
q = question(created=now, locale='en-US', save=True)
answer(question=q, save=True)
question(created=now, locale='pt-BR', save=True)
question(created=now, locale='pt-BR', save=True)
q = question(created=now, locale='pt-BR', save=True)
answer(question=q, save=True)
# 5 asked recently, 3 are unanswered
eq_(5, Question.recent_asked_count())
eq_(3, Question.recent_unanswered_count())
# check english (2 asked, 1 unanswered)
locale_filter = Q(locale='en-US')
eq_(2, Question.recent_asked_count(locale_filter))
eq_(1, Question.recent_unanswered_count(locale_filter))
# check pt-BR (3 asked, 2 unanswered)
locale_filter = Q(locale='pt-BR')
eq_(3, Question.recent_asked_count(locale_filter))
eq_(2, Question.recent_unanswered_count(locale_filter))
开发者ID:nghitran,项目名称:kitsune,代码行数:27,代码来源:test_models.py
示例3: test_created
def test_created(self):
"""Basic functionality of created filter."""
created_ds = datetime(2010, 6, 19, 12, 00)
# on 6/19/2010
q1 = question(title=u"q1 audio", created=created_ds, save=True)
q1.tags.add(u"desktop")
ans = answer(question=q1, save=True)
answervote(answer=ans, helpful=True, save=True)
# on 6/21/2010
q2 = question(title=u"q2 audio", created=(created_ds + timedelta(days=2)), save=True)
q2.tags.add(u"desktop")
ans = answer(question=q2, save=True)
answervote(answer=ans, helpful=True, save=True)
self.refresh()
qs = {"a": 1, "w": 2, "format": "json", "sortby": 2, "created_date": "06/20/2010"}
qs["created"] = constants.INTERVAL_BEFORE
response = self.client.get(reverse("search"), qs)
results = json.loads(response.content)["results"]
eq_([q1.get_absolute_url()], [r["url"] for r in results])
qs["created"] = constants.INTERVAL_AFTER
response = self.client.get(reverse("search"), qs)
results = json.loads(response.content)["results"]
eq_([q2.get_absolute_url()], [r["url"] for r in results])
开发者ID:atopal,项目名称:kitsune,代码行数:29,代码来源:test_es.py
示例4: test_created
def test_created(self):
"""Basic functionality of created filter."""
created_ds = datetime(2010, 6, 19, 12, 00)
# on 6/19/2010
q1 = question(title=u'q1 audio', created=created_ds, save=True)
q1.tags.add(u'desktop')
ans = answer(question=q1, save=True)
answervote(answer=ans, helpful=True, save=True)
# on 6/21/2010
q2 = question(title=u'q2 audio',
created=(created_ds + timedelta(days=2)),
save=True)
q2.tags.add(u'desktop')
ans = answer(question=q2, save=True)
answervote(answer=ans, helpful=True, save=True)
self.refresh()
qs = {'a': 1, 'w': 2, 'format': 'json',
'sortby': 2, 'created_date': '06/20/2010'}
qs['created'] = constants.INTERVAL_BEFORE
response = self.client.get(reverse('search'), qs)
results = json.loads(response.content)['results']
eq_([q1.get_absolute_url()], [r['url'] for r in results])
qs['created'] = constants.INTERVAL_AFTER
response = self.client.get(reverse('search'), qs)
results = json.loads(response.content)['results']
eq_([q2.get_absolute_url()], [r['url'] for r in results])
开发者ID:LASarkar,项目名称:kitsune,代码行数:32,代码来源:test_es.py
示例5: test_user_num_answers
def test_user_num_answers(self):
u = user(save=True)
q = question(save=True)
eq_(user_num_answers(u), 0)
a1 = answer(creator=u, question=q, save=True)
eq_(user_num_answers(u), 1)
a2 = answer(creator=u, question=q, save=True)
eq_(user_num_answers(u), 2)
a1.delete()
eq_(user_num_answers(u), 1)
a2.delete()
eq_(user_num_answers(u), 0)
开发者ID:Apokalyptica79,项目名称:kitsune,代码行数:13,代码来源:test_models.py
示例6: test_recent_counts
def test_recent_counts(self):
"""Verify recent_asked_count and recent unanswered count."""
# create a question for each of past 4 days
now = datetime.now()
question(created=now, save=True)
question(created=now - timedelta(hours=24), save=True, is_locked=True)
q = question(created=now - timedelta(hours=48), save=True)
answer(question=q, save=True)
# 73 hours instead of 72 to avoid random test fails.
question(created=now - timedelta(hours=73), save=True)
# Only 3 are recent from last 72 hours, 1 has an answer.
eq_(3, Question.recent_asked_count())
eq_(1, Question.recent_unanswered_count())
开发者ID:Apokalyptica79,项目名称:kitsune,代码行数:14,代码来源:test_models.py
示例7: test_questions
def test_questions(self):
"""Test questions API call."""
# A question with a solution:
a = answer(save=True)
a.question.solution = a
a.question.save()
# A question with an answer:
answer(save=True)
# A question without answers:
question(save=True)
r = self._get_api_result('kpi_questions')
eq_(r['objects'][0]['solved'], 1)
eq_(r['objects'][0]['responded'], 2)
eq_(r['objects'][0]['questions'], 3)
开发者ID:Curlified,项目名称:kitsune,代码行数:15,代码来源:test_api.py
示例8: test_vote
def test_vote(self):
"""Test vote API call."""
u = user(save=True)
add_permission(u, Profile, 'view_kpi_dashboard')
r = revision(save=True)
helpful_vote(revision=r, save=True)
helpful_vote(revision=r, save=True)
helpful_vote(revision=r, helpful=True, save=True)
a = answer(save=True)
answer_vote(answer=a, save=True)
answer_vote(answer=a, helpful=True, save=True)
answer_vote(answer=a, helpful=True, save=True)
url = reverse('api_dispatch_list',
kwargs={'resource_name': 'kpi_vote',
'api_name': 'v1'})
self.client.login(username=u.username, password='testpass')
response = self.client.get(url + '?format=json')
eq_(200, response.status_code)
r = json.loads(response.content)
eq_(r['objects'][0]['kb_helpful'], 1)
eq_(r['objects'][0]['kb_votes'], 3)
eq_(r['objects'][0]['ans_helpful'], 2)
eq_(r['objects'][0]['ans_votes'], 3)
开发者ID:readevalprint,项目名称:kitsune,代码行数:26,代码来源:test_api.py
示例9: test_front_page_search_paging
def test_front_page_search_paging(self):
# Create 30 documents
for i in range(30):
doc = document(
title=u'How to fix your audio %d' % i,
locale=u'en-US',
category=10,
save=True)
doc.tags.add(u'desktop')
revision(document=doc, is_approved=True, save=True)
# Create 20 questions
for i in range(20):
ques = question(title=u'audio', content=u'audio bad.', save=True)
ques.tags.add(u'desktop')
ans = answer(question=ques, save=True)
answervote(answer=ans, helpful=True, save=True)
self.refresh()
response = self.client.get(reverse('search'), {
'q_tags': 'desktop', 'product': 'desktop', 'q': 'audio',
'format': 'json'
})
eq_(200, response.status_code)
content = json.loads(response.content)
# Make sure there are 20 results.
eq_(content['total'], 20)
# Make sure only 10 of them are kb.
docs = [mem for mem in content['results']
if mem['type'] == 'document']
eq_(len(docs), 10)
开发者ID:tgavankar,项目名称:kitsune,代码行数:34,代码来源:test_es.py
示例10: test_product_facets
def test_product_facets(self):
"""Verify the facet counts on the results page."""
# Create products, questions and documents.
p1 = product(title="Firefox", slug="firefox", save=True)
p2 = product(title="Firefox for mobile", slug="mobile", save=True)
ques = question(title=u"audio", save=True)
ques.products.add(p1)
ans = answer(question=ques, content=u"volume", save=True)
answervote(answer=ans, helpful=True, save=True)
doc = document(title=u"audio", locale=u"en-US", category=10, save=True)
doc.products.add(p1)
doc.products.add(p2)
revision(document=doc, is_approved=True, save=True)
self.refresh()
# There should be 2 total results, 2 "firefox" results and
# 1 "mobile" result.
response = self.client.get(reverse("search"), {"q": "audio"})
eq_(200, response.status_code)
doc = pq(response.content)
eq_("Found 2 results for audio in English", doc("h2").text())
facet_text = doc("#product-filter").text()
assert "Firefox (2)" in facet_text
assert "Firefox for mobile (1)" in facet_text
开发者ID:atopal,项目名称:kitsune,代码行数:27,代码来源:test_es.py
示例11: test_front_page_only_shows_wiki_and_questions
def test_front_page_only_shows_wiki_and_questions(self):
"""Tests that the front page doesn't show forums
This verifies that we're only showing documents of the type
that should be shown and that the filters on model are working
correctly.
Bug #767394
"""
ques = question(title=u"audio", save=True)
ques.tags.add(u"desktop")
ans = answer(question=ques, content=u"volume", save=True)
answervote(answer=ans, helpful=True, save=True)
doc = document(title=u"audio", locale=u"en-US", category=10, save=True)
doc.products.add(product(slug=u"desktop", save=True))
revision(document=doc, is_approved=True, save=True)
thread1 = thread(title=u"audio", save=True)
post(thread=thread1, save=True)
self.refresh()
response = self.client.get(
reverse("search"), {"q_tags": "desktop", "product": "desktop", "q": "audio", "format": "json"}
)
eq_(200, response.status_code)
content = json.loads(response.content)
eq_(content["total"], 2)
开发者ID:Apokalyptica79,项目名称:kitsune,代码行数:32,代码来源:test_es.py
示例12: test_suggestions
def test_suggestions(self, get_current):
"""Suggestions API is well-formatted."""
get_current.return_value.domain = 'testserver'
doc = document(title=u'doc1 audio', locale=u'en-US',
is_archived=False, save=True)
revision(document=doc, summary=u'audio', content=u'audio',
is_approved=True, save=True)
ques = question(title=u'q1 audio', save=True)
ques.tags.add(u'desktop')
ans = answer(question=ques, save=True)
answervote(answer=ans, helpful=True, save=True)
self.refresh()
response = self.client.get(reverse('search.suggestions',
locale='en-US'),
{'q': 'audio'})
eq_(200, response.status_code)
eq_('application/x-suggestions+json', response['content-type'])
results = json.loads(response.content)
eq_('audio', results[0])
eq_(2, len(results[1]))
eq_(0, len(results[2]))
eq_(2, len(results[3]))
开发者ID:LASarkar,项目名称:kitsune,代码行数:27,代码来源:test_es.py
示例13: test_asked_by
def test_asked_by(self):
"""Check several author values, including test for (anon)"""
author_vals = (
('DoesNotExist', 0),
('jsocol', 2),
('pcraciunoiu', 2),
)
# Set up all the question data---creats users, creates the
# questions, shove it all in the index, then query it and see
# what happens.
for name, number in author_vals:
u = user(username=name, save=True)
for i in range(number):
ques = question(title=u'audio', creator=u, save=True)
ques.tags.add(u'desktop')
ans = answer(question=ques, save=True)
answervote(answer=ans, helpful=True, save=True)
self.refresh()
qs = {'a': 1, 'w': 2, 'format': 'json'}
for author, total in author_vals:
qs.update({'asked_by': author})
response = self.client.get(reverse('search'), qs)
eq_(total, json.loads(response.content)['total'])
开发者ID:LASarkar,项目名称:kitsune,代码行数:27,代码来源:test_es.py
示例14: test_added
def test_added(self):
search = QuestionMappingType.search()
# Create a question--that adds one document to the index.
q = question(title=u'Does this test work?', save=True)
self.refresh()
query = dict(('%s__text' % field, 'test')
for field in QuestionMappingType.get_query_fields())
eq_(search.query(should=True, **query).count(), 1)
# Create an answer for the question. It shouldn't be searchable
# until the answer is saved.
a = answer(content=u'There\'s only one way to find out!',
question=q)
self.refresh()
query = dict(('%s__text' % field, 'only')
for field in QuestionMappingType.get_query_fields())
eq_(search.query(should=True, **query).count(), 0)
a.save()
self.refresh()
query = dict(('%s__text' % field, 'only')
for field in QuestionMappingType.get_query_fields())
eq_(search.query(should=True, **query).count(), 1)
# Make sure that there's only one question document in the
# index--creating an answer should have updated the existing
# one.
eq_(search.count(), 1)
开发者ID:DWDRAEGER,项目名称:kitsune,代码行数:29,代码来源:test_es.py
示例15: test_default_only_shows_wiki_and_questions
def test_default_only_shows_wiki_and_questions(self):
"""Tests that the default search doesn't show forums
This verifies that we're only showing documents of the type
that should be shown and that the filters on model are working
correctly.
Bug #767394
"""
p = product(slug=u'desktop', save=True)
ques = question(title=u'audio', save=True)
ques.products.add(p)
ans = answer(question=ques, content=u'volume', save=True)
answervote(answer=ans, helpful=True, save=True)
doc = document(title=u'audio', locale=u'en-US', category=10, save=True)
doc.products.add(p)
revision(document=doc, is_approved=True, save=True)
thread1 = thread(title=u'audio', save=True)
post(thread=thread1, save=True)
self.refresh()
response = self.client.get(reverse('search'), {
'q': 'audio', 'format': 'json'})
eq_(200, response.status_code)
content = json.loads(response.content)
eq_(content['total'], 2)
开发者ID:LASarkar,项目名称:kitsune,代码行数:32,代码来源:test_es.py
示例16: test_fast_response
def test_fast_response(self):
"""Test fast response API call."""
a = answer(save=True)
a.question.solution = a
a.question.save()
a = answer(save=True)
a.question.save()
url = reverse('api_dispatch_list',
kwargs={'resource_name': 'kpi_fast_response',
'api_name': 'v1'})
response = self.client.get(url + '?format=json')
eq_(200, response.status_code)
r = json.loads(response.content)
eq_(r['objects'][0]['responded'], 2)
eq_(r['objects'][0]['questions'], 2)
开发者ID:trinaldi,项目名称:kitsune,代码行数:17,代码来源:test_api.py
示例17: test_case_insensitive_search
def test_case_insensitive_search(self):
"""Ensure the default searcher is case insensitive."""
answervote(
answer=answer(question=question(title="lolrus", content="I am the lolrus.", save=True), save=True),
helpful=True,
).save()
self.refresh()
result = Question.search().query("LOLRUS")
assert len(result) > 0
开发者ID:tgavankar,项目名称:kitsune,代码行数:9,代码来源:test_es.py
示例18: test_front_page_search_for_questions
def test_front_page_search_for_questions(self):
"""This tests whether doing a search from the front page returns
question results.
Bug #709202.
"""
# Create a question with an answer with an answervote that
# marks the answer as helpful. The question should have the
# "desktop" tag.
ques = question(
title=u'audio fails',
content=u'my audio dont work.')
ques.save()
ques.tags.add(u'desktop')
ans = answer(
question=ques,
content=u'You need to turn your volume up.')
ans.save()
ansvote = answer_vote(
answer=ans,
helpful=True)
ansvote.save()
self.refresh()
# This is the search that you get when you start on the sumo
# homepage and do a search from the box with two differences:
# first, we do it in json since it's easier to deal with
# testing-wise and second, we search for 'audio' since we have
# data for that.
response = self.localizing_client.get(reverse('search'), {
'q_tags': 'desktop', 'product': 'desktop', 'q': 'audio',
'format': 'json'
})
eq_(200, response.status_code)
content = json.loads(response.content)
eq_(content['total'], 1)
# This is another search that picks up results based on the
# answer_content. answer_content is in a string array, so
# this makes sure that works.
response = self.localizing_client.get(reverse('search'), {
'q_tags': 'desktop', 'product': 'desktop', 'q': 'volume',
'format': 'json'
})
eq_(200, response.status_code)
content = json.loads(response.content)
eq_(content['total'], 1)
开发者ID:readevalprint,项目名称:kitsune,代码行数:56,代码来源:test_es.py
示例19: test_user_num_solutions
def test_user_num_solutions(self):
u = user(save=True)
q1 = question(save=True)
q2 = question(save=True)
a1 = answer(creator=u, question=q1, save=True)
a2 = answer(creator=u, question=q2, save=True)
eq_(user_num_solutions(u), 0)
q1.solution = a1
q1.save()
eq_(user_num_solutions(u), 1)
q2.solution = a2
q2.save()
eq_(user_num_solutions(u), 2)
q1.solution = None
q1.save()
eq_(user_num_solutions(u), 1)
a2.delete()
eq_(user_num_solutions(u), 0)
开发者ID:Apokalyptica79,项目名称:kitsune,代码行数:19,代码来源:test_models.py
示例20: setUp
def setUp(self):
super(TestQuestionUpdates, self).setUp()
self.u = user(is_superuser=True, save=True)
self.client.login(username=self.u.username, password='testpass')
self.q = question(updated=datetime(2012, 7, 9, 9, 0, 0), save=True)
self.a = answer(question=self.q, save=True)
# Get the question from the database so we have a consistent level of
# precision during the test.
self.q = Question.objects.get(pk=self.q.id)
开发者ID:bajubullet,项目名称:kitsune,代码行数:11,代码来源:test_views.py
注:本文中的questions.tests.answer函数示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论