code: def test_payload_unsigned(self):
      token = generate_jwt_token(
          generate_session_id(),
          signed=False,
          extra_payload=dict(foo=10),
      )
      assert "." not in token
      assert _TOKEN_ZLIB_KEY in json.loads(_b64_to_utf8(token))
      payload = get_token_payload(token)
      assert _TOKEN_ZLIB_KEY not in payload
      assert payload["foo"] == 10
  
imports: from __future__ import annotations
  import pytest
  import calendar
  import codecs
  import datetime
  import json
  import random
  from unittest.mock import MagicMock, Mock, patch
  from bokeh.util.token import _TOKEN_ZLIB_KEY, _base64_decode, _base64_encode, _get_sysrandom, _reseed_if_needed, _signature, check_token_signature, generate_jwt_token, generate_secret_key, generate_session_id, get_session_id, get_token_payload
  from tests.support.util.env import envset
  import bokeh.util.token
label_desc: Use image node_id 5 for calling the TestSessionId obj's underlying member method code with example usage: obj.test_payload_unsigned() without return types