3
 (ƒh@  ã               @   s6   d dl Z d dlmZ d dlmZ G dd„ dejƒZdS )é    N)Úbase)Úutilc                   sJ   e Zd Z‡ fdd„Zdd„ Zdd„ Zdd„ Zejd	d
„ ƒZ	dd„ Z
‡  ZS )ÚTestNextsetc                s   t t| ƒjƒ  | jd | _d S )Nr   )Úsuperr   ÚsetUpÚconnectionsÚcon)Úself)Ú	__class__© ú?/tmp/pip-install-q3hcpn_q/PyMySQL/pymysql/tests/test_nextset.pyr   	   s    zTestNextset.setUpc             C   s\   | j jƒ }|jdƒ | jdgt|ƒƒ |jƒ }| j|ƒ | jdgt|ƒƒ | j|jƒ ƒ d S )NzSELECT 1; SELECT 2;é   é   )r   )r   )r   ÚcursorÚexecuteÚassertEqualÚlistÚnextsetÚ
assertTrueÚassertIsNone)r	   ÚcurÚrr   r   r   Útest_nextset   s    


zTestNextset.test_nextsetc             C   sF   | j jƒ }|jdƒ | jdgt|ƒƒ |jdƒ | jdgt|ƒƒ d S )NzSELECT 1; SELECT 2;r   z	SELECT 42é*   )r   )r   )r   r   r   r   r   )r	   r   r   r   r   Útest_skip_nextset   s
    


zTestNextset.test_skip_nextsetc             C   sj   | j jƒ }|jdƒ | jdgt|ƒƒ | j|jƒ ƒ | j|jƒ ƒ | jdgt|ƒƒ | jt|jƒ ƒƒ d S )NzSELECT 1; commit; SELECT 2;r   r   )r   )r   )	r   r   r   r   r   r   r   ZassertFalseÚbool)r	   r   r   r   r   Útest_ok_and_next    s    

zTestNextset.test_ok_and_nextc             C   s‚   | j jƒ }| j jƒ }|jdƒ |jdƒ | jdgt|ƒƒ | jdgt|ƒƒ |jƒ }| j|ƒ | jdgt|ƒƒ | j|jƒ ƒ d S )	NzSELECT 1; SELECT 2;z	SELECT 42r   r   r   )r   )r   )r   )r   r   r   r   r   r   r   r   )r	   Zcur1Zcur2r   r   r   r   Útest_multi_cursor)   s    




zTestNextset.test_multi_cursorc             C   s:   | j jƒ }y|jdƒ W n tk
r4   | jƒ  Y nX d S )Nz/DROP TABLE IF EXISTS a; DROP TABLE IF EXISTS b;)r   r   r   Ú	TypeErrorÚfail)r	   r   r   r   r   Útest_multi_statement_warnings:   s
    
z)TestNextset.test_multi_statement_warnings)Ú__name__Ú
__module__Ú__qualname__r   r   r   r   Ú	unittest2ZexpectedFailurer   r    Ú__classcell__r   r   )r
   r   r      s   	r   )r$   Zpymysql.testsr   Zpymysqlr   ZPyMySQLTestCaser   r   r   r   r   Ú<module>   s   