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")
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")
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)
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)
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)
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)
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)
def test_default_allowed_injected_files(self): FLAGS.quota_max_injected_files = 55 self.assertEqual(quota.allowed_injected_files(self.context, 100), 55)
def test_default_allowed_injected_files(self): self.flags(quota_injected_files=55) self.assertEqual(quota.allowed_injected_files(self.context, 100), 55)
def test_allowed_injected_files(self): self.assertEqual(quota.allowed_injected_files(self.context), FLAGS.quota_max_injected_files)
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)
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)