本文整理汇总了Python中cms.db.filecacher.FileCacher.put_file_content方法的典型用法代码示例。如果您正苦于以下问题:Python FileCacher.put_file_content方法的具体用法?Python FileCacher.put_file_content怎么用?Python FileCacher.put_file_content使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类cms.db.filecacher.FileCacher
的用法示例。
在下文中一共展示了FileCacher.put_file_content方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: TestFileCacher
# 需要导入模块: from cms.db.filecacher import FileCacher [as 别名]
# 或者: from cms.db.filecacher.FileCacher import put_file_content [as 别名]
#.........这里部分代码省略.........
try:
self.file_cacher.get_file(self.digest)
except Exception as error:
self.test_end(True, "Correctly received an error: %r." % error)
else:
self.test_end(False, "Did not receive error.")
### TEST 005 ###
def test_005(self):
"""Get unexisting file from FileCacher.
"""
logger.info(" I am retrieving an unexisting file from FileCacher.")
try:
self.file_cacher.get_file(self.digest)
except Exception as error:
self.test_end(True, "Correctly received an error: %r." % error)
else:
self.test_end(False, "Did not receive error.")
### TEST 006 ###
def test_006(self):
"""Send a ~100B random binary file to the storage through
FileCacher as a string. FC should cache the content locally.
"""
self.content = "".join(chr(random.randint(0, 255))
for unused_i in xrange(100))
logger.info(" I am sending the ~100B binary file to FileCacher")
try:
data = self.file_cacher.put_file_content(self.content,
u"Test #005")
except Exception as error:
self.test_end(False, "Error received: %r." % error)
return
if not os.path.exists(os.path.join(self.cache_base_path, data)):
self.test_end(False, "File not stored in local cache.")
elif open(os.path.join(self.cache_base_path, data),
"rb").read() != self.content:
self.test_end(False, "Local cache's content differ "
"from original file.")
else:
self.cache_path = os.path.join(self.cache_base_path, data)
self.digest = data
self.test_end(True, "Data sent and cached without error.")
### TEST 007 ###
def test_007(self):
"""Retrieve the file as a string.
"""
logger.info(" I am retrieving the ~100B binary file from FileCacher "
"using get_file_to_string()")
self.fake_content = "Fake content.\n"
with open(self.cache_path, "wb") as cached_file:
cached_file.write(self.fake_content)
try:
data = self.file_cacher.get_file_content(self.digest)
except Exception as error:
self.test_end(False, "Error received: %r." % error)
return
示例2: TestFileCacher
# 需要导入模块: from cms.db.filecacher import FileCacher [as 别名]
# 或者: from cms.db.filecacher.FileCacher import put_file_content [as 别名]
#.........这里部分代码省略.........
self.fail("Local cache's content differ " +
"from original file.")
# Delete the file through FS and tries to get it again through
# FC.
try:
self.file_cacher.delete(digest=self.digest)
except Exception as error:
self.fail("Error received: %s." % error)
return
else:
with self.assertRaises(Exception):
self.file_cacher.get_file(self.digest)
def test_fetch_missing_file(self):
"""Get unexisting file from FileCacher.
"""
with self.assertRaises(Exception):
self.file_cacher.get_file(self.digest)
def test_file_as_content(self):
"""Send a ~100B random binary file to the storage through
FileCacher as a string. FC should cache the content locally.
Then retrieve it as a string.
"""
self.content = b"".join(chr(random.randint(0, 255))
for unused_i in xrange(100))
try:
data = self.file_cacher.put_file_content(self.content,
u"Test #005")
except Exception as error:
self.fail("Error received: %r." % error)
return
if not os.path.exists(os.path.join(self.cache_base_path, data)):
self.fail("File not stored in local cache.")
elif io.open(os.path.join(self.cache_base_path, data),
"rb").read() != self.content:
self.fail("Local cache's content differ "
"from original file.")
else:
self.cache_path = os.path.join(self.cache_base_path, data)
self.digest = data
# Retrieve the file as a string.
self.fake_content = "Fake content.\n"
with io.open(self.cache_path, "wb") as cached_file:
cached_file.write(self.fake_content)
try:
data = self.file_cacher.get_file_content(self.digest)
except Exception as error:
self.fail("Error received: %r." % error)
return
if data != self.fake_content:
if data == self.content:
self.fail("Did not use the cache even if it could.")
else:
self.fail("Content differ.")
def test_big_file(self):