示例#1
0
文件: api.py 项目: ed-/reddwarf
    def _check_injected_file_quota(self, context, injected_files):
        """Enforce quota limits on injected files.

        Raises a QuotaError if any limit is exceeded.

        """
        if injected_files is None:
            return
        limit = quota.allowed_injected_files(context, len(injected_files))
        if len(injected_files) > limit:
            raise quota.QuotaError(code="OnsetFileLimitExceeded")
        path_limit = quota.allowed_injected_file_path_bytes(context)
        for path, content in injected_files:
            if len(path) > path_limit:
                raise quota.QuotaError(code="OnsetFilePathLimitExceeded")
            content_limit = quota.allowed_injected_file_content_bytes(context, len(content))
            if len(content) > content_limit:
                raise quota.QuotaError(code="OnsetFileContentLimitExceeded")
示例#2
0
    def _check_injected_file_quota(self, context, injected_files):
        """Enforce quota limits on injected files.

        Raises a QuotaError if any limit is exceeded.

        """
        if injected_files is None:
            return
        limit = quota.allowed_injected_files(context)
        if len(injected_files) > limit:
            raise quota.QuotaError(code="OnsetFileLimitExceeded")
        path_limit = quota.allowed_injected_file_path_bytes(context)
        content_limit = quota.allowed_injected_file_content_bytes(context)
        for path, content in injected_files:
            if len(path) > path_limit:
                raise quota.QuotaError(code="OnsetFilePathLimitExceeded")
            if len(content) > content_limit:
                raise quota.QuotaError(code="OnsetFileContentLimitExceeded")
示例#3
0
 def test_unlimited_db_allowed_injected_files(self):
     self.flags(quota_max_injected_files=5)
     db.quota_create(self.context, self.project_id, "injected_files", None)
     self.assertEqual(quota.allowed_injected_files(self.context, 100), 100)
示例#4
0
 def test_unlimited_default_allowed_injected_files(self):
     self.flags(quota_max_injected_files=-1)
     self.assertEqual(quota.allowed_injected_files(self.context, 100), 100)
示例#5
0
 def test_overridden_allowed_injected_files(self):
     self.flags(quota_max_injected_files=5)
     db.quota_create(self.context, self.project_id, "injected_files", 77)
     self.assertEqual(quota.allowed_injected_files(self.context, 100), 77)
示例#6
0
 def test_unlimited_db_allowed_injected_files(self):
     FLAGS.quota_max_injected_files = 5
     db.quota_create(self.context, self.project_id, 'injected_files', None)
     self.assertEqual(quota.allowed_injected_files(self.context, 100), 100)
示例#7
0
 def test_overridden_allowed_injected_files(self):
     FLAGS.quota_max_injected_files = 5
     db.quota_create(self.context, self.project_id, 'injected_files', 77)
     self.assertEqual(quota.allowed_injected_files(self.context, 100), 77)
示例#8
0
 def test_default_allowed_injected_files(self):
     FLAGS.quota_max_injected_files = 55
     self.assertEqual(quota.allowed_injected_files(self.context, 100), 55)
示例#9
0
 def test_default_allowed_injected_files(self):
     self.flags(quota_injected_files=55)
     self.assertEqual(quota.allowed_injected_files(self.context, 100), 55)
示例#10
0
 def test_allowed_injected_files(self):
     self.assertEqual(quota.allowed_injected_files(self.context),
                      FLAGS.quota_max_injected_files)
示例#11
0
 def test_unlimited_db_allowed_injected_files(self):
     self.flags(quota_max_injected_files=5)
     db.quota_create(self.context, self.project_id, 'injected_files', None)
     self.assertEqual(quota.allowed_injected_files(self.context, 100), 100)
示例#12
0
 def test_unlimited_default_allowed_injected_files(self):
     self.flags(quota_max_injected_files=-1)
     self.assertEqual(quota.allowed_injected_files(self.context, 100), 100)
示例#13
0
 def test_overridden_allowed_injected_files(self):
     self.flags(quota_max_injected_files=5)
     db.quota_create(self.context, self.project_id, 'injected_files', 77)
     self.assertEqual(quota.allowed_injected_files(self.context, 100), 77)
示例#14
0
 def test_allowed_injected_files(self):
     self.assertEqual(quota.allowed_injected_files(self.context), FLAGS.quota_max_injected_files)
示例#15
0
 def test_default_allowed_injected_files(self):
     FLAGS.quota_max_injected_files = 55
     self.assertEqual(quota.allowed_injected_files(self.context, 100), 55)
示例#16
0
 def test_default_allowed_injected_files(self):
     self.flags(quota_injected_files=55)
     self.assertEqual(quota.allowed_injected_files(self.context, 100), 55)