← Back
Editing: testing.cpython-311.pyc
� �j�bd) � �( � d dl Zd dlmZ d dlmZ d dlmZ d dlmZ d dlZ d dl mZ d dlmZ d dl mZ d d lmZ d dlmZ d dlmZ d d lmZ ej rd dlmZ d dlmZ G d� de j j � � Z G d� de� � Z G d� de� � ZdS )� N)�contextmanager)� ExitStack)�copy)� TracebackType)� CliRunner)�Client)� url_parse)�Request� )� ScriptInfo)�_cv_request)�SessionMixin)�TestResponse)�Flaskc �� � � e Zd ZdZ ddddedej e dej e d ej e d ej dej ddf� fd � Zdej dej defd�Z � xZ S )�EnvironBuildera� An :class:`~werkzeug.test.EnvironBuilder`, that takes defaults from the application. :param app: The Flask application to configure the environment from. :param path: URL path being requested. :param base_url: Base URL where the app is being served, which ``path`` is relative to. If not given, built from :data:`PREFERRED_URL_SCHEME`, ``subdomain``, :data:`SERVER_NAME`, and :data:`APPLICATION_ROOT`. :param subdomain: Subdomain name to append to :data:`SERVER_NAME`. :param url_scheme: Scheme to use instead of :data:`PREFERRED_URL_SCHEME`. :param json: If given, this is serialized as JSON and passed as ``data``. Also defaults ``content_type`` to ``application/json``. :param args: other positional arguments passed to :class:`~werkzeug.test.EnvironBuilder`. :param kwargs: other keyword arguments passed to :class:`~werkzeug.test.EnvironBuilder`. �/N�appr �path�base_url� subdomain� url_scheme�args�kwargs�returnc � �� |s|s|r!|d ut |p|� � k s J d� � �|��|j � d� � pd}|j d } |r|� d|� �}|� |j d }t |� � } | j p|� d| j p|� d| � d� � � �}| j }| j r+t | j t � � rd nd }||| j z z }|| _ t � � j ||g|�R i |�� d S )Nz8Cannot pass "subdomain" or "url_scheme" with "base_url".�SERVER_NAME� localhost�APPLICATION_ROOT�.�PREFERRED_URL_SCHEMEz://r � ?�?)�bool�config�getr �scheme�netloc�lstripr �query� isinstance�bytesr �super�__init__) �selfr r r r r r r � http_host�app_root�url�sep� __class__s ��//usr/lib/python3/dist-packages/flask/testing.pyr. zEnvironBuilder.__init__- s} �� � � F� � F�Z� F��D� � ��#�� � �= � = � = � F� = � = � = � ��� ���}�5�5�D��I��z�"4�5�H�� 7�(�6�6�9�6�6� ��!� �Z�(>�?� ��D�/�/�C��:�+�� +� +�� �0G�i� +� +��O�O�C�(�(�+� +� � �8�D��y� (�(���E�:�:�C�d�d�����c�i��'�����������x�9�$�9�9�9�&�9�9�9�9�9� �objc �2 � | j j j |fi |��S )z�Serialize ``obj`` to a JSON-formatted string. The serialization will be configured according to the config associated with this EnvironBuilder's ``app``. )r �json�dumps)r/ r7 r s r5 � json_dumpszEnvironBuilder.json_dumpsU s# � � #�t�x�}�"�3�1�1�&�1�1�1r6 )r NNN)�__name__� __module__�__qualname__�__doc__�str�t�Optional�Anyr. r; � __classcell__�r4 s @r5 r r s� �� � � � � �� �0 �$(�%)�&*� &:� &:� �&:� �&:� �*�S�/� &:� �:�c�?�&:� �J�s�O� &:� �u�&:� �%�&:� �&:� &:� &:� &:� &:� &:�P2�a�e� 2�q�u� 2�� 2� 2� 2� 2� 2� 2� 2� 2r6 r c �N � � e Zd ZU dZded<