
    g                    L    d dl mZ d dlmZ d dlmZ d dlmZ edd       Zd Z	y)	    )annotations)contextmanager)Any)configc              #     K   ddl m} t        |       }|j                  t        d|      5  d ddd       y# 1 sw Y   yxY ww)a  A context manager that overrides config options. It can
    also be used as a function decorator.

    Examples:
    >>> with patch_config_options({"server.headless": True}):
    ...     assert config.get_option("server.headless") is True
    ...     # Other test code that relies on these options

    >>> @patch_config_options({"server.headless": True})
    ... def test_my_thing():
    ...     assert config.get_option("server.headless") is True
    r   )patch
get_option)newN)unittest.mockr   build_mock_config_get_optionobjectr   )config_overridesr   mock_get_options      N/var/www/openai/venv/lib/python3.12/site-packages/streamlit/testing/v1/util.pypatch_config_optionsr      s7      $23CDO	fl	@ 
A	@	@s   *A:	AAAc                6     t         j                   fd}|S )Nc                &    | v r|    S  |       S )N )nameorig_get_optionoverrides_dicts    r   mock_config_get_optionz<build_mock_config_get_option.<locals>.mock_config_get_option0   s!    >!!$''t$$    )r   r	   )r   r   r   s   ` @r   r   r   -   s    ''O%
 "!r   N)r   zdict[str, Any])

__future__r   
contextlibr   typingr   	streamlitr   r   r   r   r   r   <module>r      s,    # %    *"r   