docstr: warn_deprecated_limited() and warn_limited() use
  _hash_limit_string
  
  actually just verifying that _hash_limit_string works as expected
docstr_tok: ["warn_deprecated_limited","(",")","and","warn_limited","(",")","use","_hash_limit_string","actually","just","verifying","that","_hash_limit_string","works","as","expected"]
code: def test_warn_deprecated_limited_cap(self):
      """warn_deprecated_limited() and warn_limited() use
      _hash_limit_string
  
      actually just verifying that _hash_limit_string works as expected
      """
      occurrences = 500
      cap = 10
  
      printouts = set()
      messages = set()
      for i in range(occurrences):
          message = _hash_limit_string(
              "this is a unique message: %d", cap, (i,)
          )
          printouts.add(str(message))
          messages.add(message)
  
      eq_(len(printouts), occurrences)
      eq_(len(messages), cap)
  
file_path: sqlalchemy/test/base/test_warnings.py
imports: from sqlalchemy import testing
  from sqlalchemy.exc import SADeprecationWarning
  from sqlalchemy.testing import eq_
  from sqlalchemy.testing import expect_deprecated
  from sqlalchemy.testing import fixtures
  from sqlalchemy.util.deprecations import _decorate_cls_with_warning
  from sqlalchemy.util.deprecations import warn_deprecated_limited
  from sqlalchemy.util.langhelpers import _hash_limit_string
label_desc: Use image node_id 2 for calling the WarnDeprecatedLimitedTest obj's underlying member method code with example usage: obj.test_warn_deprecated_limited_cap() without return types