
    ]j                     D    d dl Z d dlZd dlT  G d dej                  ZdS )    N)*c                   &    e Zd Zd Zd Zd Zd ZdS )TestElementGroupc                    t          j        d          }t                              |dd          }|dz  }|                    d           D ]n}|                     |j        d           |                     |j        d           |                     |j        d           |                     |j	        d           o|                     |j        d	           |                     |j	        d	           d S )
N  <?xml version="1.0" encoding="utf-8" ?>
                        <svg viewBox="0, 0, 100, 100" height="200" width="200">
                        <g>
                        <rect x="0" y="20" width="50" height="50"/>
                        </g>
                        </svg>  )widthheightscale(2)c                 ,    t          | t                    S N
isinstanceRectes    J/home/agentuser/manim-venv/lib/python3.11/site-packages/test/test_group.py<lambda>z2TestElementGroup.test_group_bbox.<locals>.<lambda>   s    Jq$$7$7     r   (   d      )
ioStringIOSVGparseselectassertEqualxyr	   r
   )selfqmr   s       r   test_group_bboxz TestElementGroup.test_group_bbox	   s    K " # # IIas3I//	Z7788 	, 	,AQS!$$$QS"%%%QWc***QXs++++#&&&3'''''r   c                    t          j        d          }t                              |ddd          }|dz  }t	          |                    d                     }|d         }|                     |j        d           |                     |j        d           |                     |j	        d	           |                     |j
        d	           |                     |j        d	           |                     |j        d	           |                     |                                d
           |                                 |                     |j	        d           |                     |j
        d           |d         }|                     |j        d           |                     |j        d           |                     |j	        d	           |                     |j
        d	           t!          |                                           d S )Nam  <?xml version="1.0" encoding="utf-8" ?>
                        <svg viewBox="0, 0, 100, 100" height="200" width="200">
                        <g>
                        <rect x="0" y="20" width="50" height="50"/>
                        <rect x="0" y="0" width="50" height="50" transform="rotate(45)"/>
                        </g>
                        </svg>r   F)r	   r
   reifyr   c                 ,    t          | t                    S r   r   r   s    r   r   z3TestElementGroup.test_group_2rect.<locals>.<lambda>$   s    
1d(;(; r   r   P   r   )g        g      T@g      i@g     q@i     )r   r   r   r   listr   r   
implicit_x
implicit_yimplicit_widthimplicit_heightr	   r
   bboxr&   assertAlmostEqualprint)r!   r"   r#   rectsr0r1s         r   test_group_2rectz!TestElementGroup.test_group_2rect   s   K " # # IIas3eI<<	ZQXX;;<<==1X***+++*C000+S111#&&&3'''$=>>>				)3///*C0001X******r0#666r13777bggiir   c                 F   t          j        d          }t                              |          }|dz  }|dz  }|                     |d         d         j        t          d                     |                     |d         d         j        t          d                     dS )z
        Tests issue 107 inability to multiple group matrix objects while creating new group objects.

        https://github.com/meerk40t/svgelements/issues/107
        r   ztranslate(100,100)r   r   zmatrix(2,0,0,2,200,200)zmatrix(1,0,0,1,100,100)N)r   r   r   r   r   	transformMatrix)r!   r"   r#   ns       r   test_issue_107zTestElementGroup.test_issue_1077   s     K " # # IIaLL	!!
N1a*F3L,M,MNNN1a*F3L,M,MNNNNNr   c                     t          j        d          }t          t                              |                                                    }|                     t          |          d           dS )z
        Tests issue 152, closed text objects within a group with style:display=None
        This should have the SVG element and nothing else.

        https://github.com/meerk40t/svgelements/issues/152
        z<?xml version="1.0" encoding="UTF-8" standalone="no"?><svg>
        <g style="display:none">
            <text><textPath><tspan>Issue 152</tspan></textPath></text>
        </g>
        </svg>r)   N)r   r   r*   r   r   elementsr   len)r!   r"   r<   s      r   test_issue_152zTestElementGroup.test_issue_152I   sa     K   
 		!--//00X*****r   N)__name__
__module____qualname__r$   r5   r:   r>    r   r   r   r      sS        ( ( ("  :O O O$+ + + + +r   r   )r   unittestsvgelementsTestCaser   rB   r   r   <module>rF      sd    				     O+ O+ O+ O+ O+x( O+ O+ O+ O+ O+r   