本文整理汇总了Python中pulp_puppet.common.model.Module.update_from_dict方法的典型用法代码示例。如果您正苦于以下问题:Python Module.update_from_dict方法的具体用法?Python Module.update_from_dict怎么用?Python Module.update_from_dict使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类pulp_puppet.common.model.Module
的用法示例。
在下文中一共展示了Module.update_from_dict方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: SuccessfulMetadataTests
# 需要导入模块: from pulp_puppet.common.model import Module [as 别名]
# 或者: from pulp_puppet.common.model.Module import update_from_dict [as 别名]
class SuccessfulMetadataTests(unittest.TestCase):
def setUp(self):
self.author = 'jdob'
self.name = 'valid'
self.version = '1.0.0'
self.module = Module(self.name, self.version, self.author)
self.module_dir = os.path.join(DATA_DIR, 'good-modules', 'jdob-valid', 'pkg')
self.tmp_dir = tempfile.mkdtemp(prefix='puppet-metadata-tests')
def tearDown(self):
if os.path.exists(self.tmp_dir):
shutil.rmtree(self.tmp_dir)
def test_extract_metadata(self):
# Setup
filename = os.path.join(self.module_dir, self.module.filename())
# Test
metadata_json = metadata.extract_metadata(filename, self.tmp_dir)
self.module = Module.from_json(metadata_json)
# Verify
self.assertEqual(self.module.name, 'valid')
self.assertEqual(self.module.version, '1.0.0')
self.assertEqual(self.module.author, 'jdob')
self._assert_test_module_metadata()
@patch("tempfile.mkdtemp")
def test_extract_metadata_non_standard_packaging(self, mkdtemp):
# Setup
self.module = Module('misnamed', '1.0.0', 'ldob')
self.module_dir = os.path.join(DATA_DIR, 'bad-modules')
filename = os.path.join(self.module_dir, self.module.filename())
extraction_dir = os.path.join(self.tmp_dir, "test")
mkdtemp.return_value = extraction_dir
# Test
metadata_json = metadata.extract_metadata(filename, self.tmp_dir)
self.module.update_from_dict(metadata_json)
# Verify - contains the same module as jdob-valid-1.0.0, so this is safe
self.assertEqual(self.module.name, 'misnamed')
self.assertEqual(self.module.version, '1.0.0')
self.assertEqual(self.module.author, 'ldob')
self._assert_test_module_metadata()
self.assertTrue(not os.path.exists(extraction_dir))
@patch("tempfile.mkdtemp")
def test_extract_metadata_no_module(self, mkdtemp):
# Setup
filename = os.path.join(self.module_dir, self.module.filename())
extraction_dir = os.path.join(self.tmp_dir, "1234")
mkdtemp.return_value = extraction_dir
metadata_json = metadata.extract_metadata(filename, self.tmp_dir)
self.module = Module.from_json(metadata_json)
# Verify
self.assertEqual(self.module.name, 'valid')
self.assertEqual(self.module.version, '1.0.0')
self.assertEqual(self.module.author, 'jdob')
self._assert_test_module_metadata()
self.assertTrue(not os.path.exists(extraction_dir))
def _assert_test_module_metadata(self):
# Assumes the content in jdob-valid-1.0.0
self.assertEqual(self.module.source, 'http://example.org/jdob-valid/source')
self.assertEqual(self.module.license, 'Apache License, Version 2.0')
self.assertEqual(self.module.summary, 'Valid Module Summary')
self.assertEqual(self.module.description, 'Valid Module Description')
self.assertEqual(self.module.project_page, 'http://example.org/jdob-valid')
self.assertEqual(2, len(self.module.dependencies))
sorted_deps = sorted(self.module.dependencies, key=lambda x :x['name'])
self.assertEqual(sorted_deps[0]['name'], 'jdob/dep-alpha')
self.assertEqual(sorted_deps[0]['version_requirement'], '>= 1.0.0')
self.assertEqual(sorted_deps[1]['name'], 'ldob/dep-beta')
self.assertEqual(sorted_deps[1]['version_requirement'], '>= 2.0.0')
self.assertEqual(self.module.types, [])
expected_checksums = {
'Modulefile': '704cecf2957448dcf7fa20cffa2cf7c1',
'README': '11edd8578497566d8054684a8c89c6cb',
'manifests/init.pp': '1d1fb26825825b4d64d37d377016869e',
'spec/spec_helper.rb': 'a55d1e6483344f8ec6963fcb2c220372',
'tests/init.pp': '7043c7ef0c4b0ac52b4ec6bb76008ebd'
}
self.assertEqual(self.module.checksums, expected_checksums)
#.........这里部分代码省略.........