
    <e                         d dl Z d dlZd dlZd dlZd dlT  G d dej                  Z G d dej                  Ze	dk    r ej
                     dS dS )    N)*c                   *    e Zd ZdZd Zd Zd Zd ZdS )EmptyNodeListTestCasez"Tests for the EmptyNodeList class.c                    t                      }|                     |                    d                     |                     |                    d                     |                     t                    5  |d          d d d            n# 1 swxY w Y   |                     t                    5  |d          d d d            d S # 1 swxY w Y   d S )Nr   )EmptyNodeListassertIsNoneitemassertRaises
IndexErrorself	node_lists     3/usr/lib/python3.11/test/test_xml_dom_minicompat.pytest_emptynodelist_itemz-EmptyNodeListTestCase.test_emptynodelist_item   s>   !OO	)..++,,,)..,,---z** 	 	aLL	 	 	 	 	 	 	 	 	 	 	 	 	 	 	z** 	 	bMM	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	s$   9	BBB3	C		CCc                     t                      }|                     |j        d           |                     t          j        j                  5  d|_        d d d            d S # 1 swxY w Y   d S )Nr   o   )r   assertEquallengthr   xmldomNoModificationAllowedErrr   s     r   test_emptynodelist_lengthz/EmptyNodeListTestCase.test_emptynodelist_length   s    !OO	)1---sw?@@ 	# 	#"I	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	#s   A##A'*A'c                     t                      t                      z   }|                     |t                                 d S )N)r   NodeListr   r   s     r   test_emptynodelist___add__z0EmptyNodeListTestCase.test_emptynodelist___add__"   s4    !OOhjj0	HJJ/////    c                 \    ddgt                      z   }|                     |ddg           d S N      )r   r   r   s     r   test_emptynodelist___radd__z1EmptyNodeListTestCase.test_emptynodelist___radd__&   s4    qEMOO+	QqE*****r   N)__name__
__module____qualname____doc__r   r   r   r"    r   r   r   r      sV        ,,
 
 
# # #0 0 0+ + + + +r   r   c                   <    e Zd ZdZd Zd Zd Zd Zd Zd Z	d Z
d	S )
NodeListTestCasezTests for the NodeList class.c                    t                      }|                     |                    d                     |                     |                    d                     |                     t                    5  |d          d d d            n# 1 swxY w Y   |                     t                    5  |d          d d d            n# 1 swxY w Y   |                    d           |                    d           |                     |                    d          d           |                     |                    d                     |                     |d         d           |                     |d         d           d S )Nr   r   r   i  )r   r	   r
   r   r   appendr   r   s     r   test_nodelist_itemz#NodeListTestCase.test_nodelist_item.   s    JJ	)..++,,,)..,,---z** 	 	aLL	 	 	 	 	 	 	 	 	 	 	 	 	 	 	z** 	 	bMM	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	**C000)..,,---1s+++2,,,,,s$   9	BBB3	CCCc                     t          ddg          }|                     |j        d           |                     t          j        j                  5  d|_        d d d            d S # 1 swxY w Y   d S )Nr    r!   r   )r   r   r   r   r   r   r   r   s     r   test_nodelist_lengthz%NodeListTestCase.test_nodelist_lengthE   s    aV$$	)1---sw?@@ 	# 	#"I	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	#s   A&&A*-A*c                 |    t          ddg          ddgz   }|                     |t          g d                     d S )N      r    r!   )r0   r1   r    r!   r   r   r   s     r   test_nodelist___add__z&NodeListTestCase.test_nodelist___add__M   sD    aV$$1v-	H\\\$:$:;;;;;r   c                 |    ddgt          ddg          z   }|                     |t          g d                     d S )Nr    r!   r0   r1   )r    r!   r0   r1   r2   r   s     r   test_nodelist___radd__z'NodeListTestCase.test_nodelist___radd__Q   sD    FXq!f---	H\\\$:$:;;;;;r   c                    t          t          j        dz             D ]}t                      }t          j        ||          }t          j        |          }|                     ||           |                     ||           |                    d           |                    d           t          j        ||          }t          j        |          }|                     ||           |                     ||           d S r   )	rangepickleHIGHEST_PROTOCOLr   dumpsloadsassertIsNotr   r+   )r   protor   pickled	unpickleds        r   test_nodelist_pickle_roundtripz/NodeListTestCase.test_nodelist_pickle_roundtripU   s     62Q677 	3 	3E 

Il9e44GW--IY	222Y	222 QQl9e44GW--IY	222Y	2222	3 	3r   c                    t                      }t          j        |          }|                     ||           |                     ||           |                    dg           |                    dg           t          j        |          }|                     ||           |                     ||           t          ||          D ]\  }}|                     ||           d S r   )r   copyr<   r   r+   zipassertIsr   r   copiedxys        r   test_nodelist_copyz#NodeListTestCase.test_nodelist_copyh   s    JJ	9%%++++++ 	!!9%%++++++	** 	  	 DAqMM!Q	  	 r   c                    t                      }t          j        |          }|                     ||           |                     ||           |                    dg           |                    dg           t          j        |          }|                     ||           |                     ||           t          ||          D ]1\  }}|                     ||           |                     ||           2d S r   )r   rB   deepcopyr<   r   r+   rC   rE   s        r   test_nodelist_deepcopyz'NodeListTestCase.test_nodelist_deepcopyx   s   JJ	y))++++++ 	!!y))++++++	** 	# 	#DAqQ"""Q""""	# 	#r   N)r#   r$   r%   r&   r,   r.   r3   r5   r@   rI   rL   r'   r   r   r)   r)   +   s        ''- - -.# # #< < << < <3 3 3&      # # # # #r   r)   __main__)rB   r8   unittestxml.domr   xml.dom.minicompatTestCaser   r)   r#   mainr'   r   r   <module>rS      s               + + + + +H- + + +@\# \# \# \# \#x( \# \# \#| zHMOOOOO r   