本文整理汇总了Python中awscli.topictags.TopicTagDB.query方法的典型用法代码示例。如果您正苦于以下问题:Python TopicTagDB.query方法的具体用法?Python TopicTagDB.query怎么用?Python TopicTagDB.query使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类awscli.topictags.TopicTagDB
的用法示例。
在下文中一共展示了TopicTagDB.query方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: TopicListerDocumentEventHandler
# 需要导入模块: from awscli.topictags import TopicTagDB [as 别名]
# 或者: from awscli.topictags.TopicTagDB import query [as 别名]
class TopicListerDocumentEventHandler(CLIDocumentEventHandler):
DESCRIPTION = (
'This is the AWS CLI Topic Guide. It gives access to a set '
'of topics that provide a deeper understanding of the CLI. To access '
'the list of topics from the command line, run ``aws help topics``. '
'To access a specific topic from the command line, run '
'``aws help [topicname]``, where ``topicname`` is the name of the '
'topic as it appears in the output from ``aws help topics``.')
def __init__(self, help_command):
self.help_command = help_command
self.register(help_command.session, help_command.event_class)
self.help_command.doc.translation_map = self.build_translation_map()
self._topic_tag_db = TopicTagDB()
self._topic_tag_db.load_json_index()
def doc_breadcrumbs(self, help_command, **kwargs):
doc = help_command.doc
if doc.target != 'man':
doc.write('[ ')
doc.style.sphinx_reference_label(label='cli:aws', text='aws')
doc.write(' ]')
def doc_title(self, help_command, **kwargs):
doc = help_command.doc
doc.style.new_paragraph()
doc.style.link_target_definition(
refname='cli:aws help %s' % self.help_command.name,
link='')
doc.style.h1('AWS CLI Topic Guide')
def doc_description(self, help_command, **kwargs):
doc = help_command.doc
doc.style.h2('Description')
doc.include_doc_string(self.DESCRIPTION)
doc.style.new_paragraph()
def doc_synopsis_start(self, help_command, **kwargs):
pass
def doc_synopsis_end(self, help_command, **kwargs):
pass
def doc_options_start(self, help_command, **kwargs):
pass
def doc_options_end(self, help_command, **kwargs):
pass
def doc_subitems_start(self, help_command, **kwargs):
doc = help_command.doc
doc.style.h2('Available Topics')
categories = self._topic_tag_db.query('category')
topic_names = self._topic_tag_db.get_all_topic_names()
# Sort the categories
category_names = sorted(categories.keys())
for category_name in category_names:
doc.style.h3(category_name)
doc.style.new_paragraph()
# Write out the topic and a description for each topic under
# each category.
for topic_name in sorted(categories[category_name]):
description = self._topic_tag_db.get_tag_single_value(
topic_name, 'description')
doc.write('* ')
doc.style.sphinx_reference_label(
label='cli:aws help %s' % topic_name,
text=topic_name
)
doc.write(': %s\n' % description)
# Add a hidden toctree to make sure everything is connected in
# the document.
doc.style.hidden_toctree()
for topic_name in topic_names:
doc.style.hidden_tocitem(topic_name)
示例2: TestTopicTagDBQuery
# 需要导入模块: from awscli.topictags import TopicTagDB [as 别名]
# 或者: from awscli.topictags.TopicTagDB import query [as 别名]
class TestTopicTagDBQuery(TestTopicTagDB):
def test_query_all_tags_single_topic(self):
tag_dict = {
'topic-name-1': {
'title': ['My First Topic Title'],
'description': ['This describes my first topic'],
'category': ['General Topics'],
'related command': ['aws s3'],
'related topic': ['topic-name-2']
}
}
self.topic_tag_db = TopicTagDB(tag_dict)
# Check title query
query_dict = self.topic_tag_db.query('title')
self.assertEqual(query_dict,
{'My First Topic Title': ['topic-name-1']})
# Check the description query
query_dict = self.topic_tag_db.query('description')
self.assertEqual(query_dict,
{'This describes my first topic': ['topic-name-1']})
# Check the category query
query_dict = self.topic_tag_db.query('category')
self.assertEqual(query_dict,
{'General Topics': ['topic-name-1']})
# Check the related command query
query_dict = self.topic_tag_db.query('related command')
self.assertEqual(query_dict,
{'aws s3': ['topic-name-1']})
# Check the description query
query_dict = self.topic_tag_db.query('related topic')
self.assertEqual(query_dict,
{'topic-name-2': ['topic-name-1']})
def test_query_tag_multi_values(self):
tag_dict = {
'topic-name-1': {
'related topic': ['foo', 'bar']
}
}
self.topic_tag_db = TopicTagDB(tag_dict)
query_dict = self.topic_tag_db.query('related topic')
self.assertEqual(query_dict,
{'foo': ['topic-name-1'], 'bar': ['topic-name-1']})
def test_query_tag_multi_values(self):
tag_dict = {
'topic-name-1': {
'related topic': ['foo', 'bar']
}
}
self.topic_tag_db = TopicTagDB(tag_dict)
query_dict = self.topic_tag_db.query('related topic')
self.assertEqual(query_dict,
{'foo': ['topic-name-1'], 'bar': ['topic-name-1']})
def test_query_multiple_topics(self):
tag_dict = {
'topic-name-1': {
'category': ['foo']
},
'topic-name-2': {
'category': ['bar']
}
}
self.topic_tag_db = TopicTagDB(tag_dict)
query_dict = self.topic_tag_db.query('category')
self.assertEqual(query_dict,
{'foo': ['topic-name-1'], 'bar': ['topic-name-2']})
def test_query_multiple_topics_with_multi_values(self):
tag_dict = {
'topic-name-1': {
'category': ['foo', 'bar']
},
'topic-name-2': {
'category': ['baz', 'biz']
}
}
self.topic_tag_db = TopicTagDB(tag_dict)
query_dict = self.topic_tag_db.query('category')
self.assertEqual(query_dict,
{'foo': ['topic-name-1'], 'bar': ['topic-name-1'],
'baz': ['topic-name-2'], 'biz': ['topic-name-2']})
def test_query_multiple_topics_with_overlap_values(self):
tag_dict = {
'topic-name-1': {
'category': ['foo', 'bar']
},
'topic-name-2': {
'category': ['bar', 'biz']
}
}
self.topic_tag_db = TopicTagDB(tag_dict)
query_dict = self.topic_tag_db.query('category')
#.........这里部分代码省略.........