本文整理汇总了Python中awscli.topictags.TopicTagDB.scan方法的典型用法代码示例。如果您正苦于以下问题:Python TopicTagDB.scan方法的具体用法?Python TopicTagDB.scan怎么用?Python TopicTagDB.scan使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类awscli.topictags.TopicTagDB
的用法示例。
在下文中一共展示了TopicTagDB.scan方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: TestTopicDBScan
# 需要导入模块: from awscli.topictags import TopicTagDB [as 别名]
# 或者: from awscli.topictags.TopicTagDB import scan [as 别名]
class TestTopicDBScan(TestTopicTagDB):
def create_topic_src_file(self, topic_name, tags):
"""Create a topic source file from a list of tags and topic name"""
content = '\n'.join(tags)
topic_name = topic_name + '.rst'
topic_filepath = self.file_creator.create_file(topic_name, content)
return topic_filepath
def assert_json_index(self, file_paths, reference_tag_dict):
"""Asserts the scanned tags by checking the saved JSON index"""
json_index = self.file_creator.create_file('index.json', '')
self.topic_tag_db = TopicTagDB(index_file=json_index)
self.topic_tag_db.scan(file_paths)
self.topic_tag_db.save_to_json_index()
with open(json_index, 'r') as f:
saved_index = json.loads(f.read())
self.assertEqual(saved_index, reference_tag_dict)
def test_scan_all_valid_tags(self):
tags = [
':description: This is a description',
':title: Title',
':category: Foo',
':related topic: Bar',
':related command: ec2'
]
topic_name = 'my-topic'
reference_tag_dict = {
topic_name: {
'description': ['This is a description'],
'title': ['Title'],
'category': ['Foo'],
'related topic': ['Bar'],
'related command': ['ec2']
}
}
topic_filepath = self.create_topic_src_file(topic_name, tags)
self.assert_json_index([topic_filepath], reference_tag_dict)
def test_scan_invalid_tag(self):
tags = [
':description: This is a description',
':title: Title',
':category: Foo',
':related_topic: Bar',
]
topic_name = 'my-topic'
topic_filepath = self.create_topic_src_file(topic_name, tags)
with self.assertRaises(ValueError):
self.topic_tag_db.scan([topic_filepath])
def test_scan_no_tags(self):
tags = []
topic_name = 'my-topic'
reference_tag_dict = {
topic_name: {}
}
topic_filepath = self.create_topic_src_file(topic_name, tags)
self.assert_json_index([topic_filepath], reference_tag_dict)
def test_scan_tags_with_multi_values(self):
tags = [
':category: Foo, Bar',
]
topic_name = 'my-topic'
reference_tag_dict = {
topic_name: {
'category': ['Foo', 'Bar'],
}
}
topic_filepath = self.create_topic_src_file(topic_name, tags)
self.assert_json_index([topic_filepath], reference_tag_dict)
def test_scan_tags_with_single_and_multi_values(self):
tags = [
':title: Title',
':category: Foo, Bar',
]
topic_name = 'my-topic'
reference_tag_dict = {
topic_name: {
'title': ['Title'],
'category': ['Foo', 'Bar'],
}
}
topic_filepath = self.create_topic_src_file(topic_name, tags)
self.assert_json_index([topic_filepath], reference_tag_dict)
def test_scan_tags_with_multi_duplicate_values(self):
tags = [
':category: Foo, Foo, Bar'
]
topic_name = 'my-topic'
reference_tag_dict = {
#.........这里部分代码省略.........