a
    khd                     @   sl   d dl mZ d dlZd dlmZmZmZ d dlmZ d dlm	Z	m
Z
 d dlmZ dd Zd	d
 Zdd ZdS )    )raisesN)DaggerAntiCommutatorqapply)	FermionOp)FermionFockKetFermionFockBra)Symbolc                  C   s   t d} t d}t| t sJ tt| t s0J | js:J t| jrHJ t dt ddks^J t dt dksrJ t ddt ddksJ t| t|  dksJ t| t| | t| t||   ksJ d S )NcdTF   )r   
isinstancer   Zis_annihilationr   doit)r
   r    r   V/var/www/auris/lib/python3.9/site-packages/sympy/physics/quantum/tests/test_fermion.pytest_fermionoperator
   s    
r   c                  C   s   t d} tdtd  dks$J tdtd  dks@J t| td tdks\J t| td dkstJ tt| td tdksJ tt| td dksJ d S )Nr
   r   r   )r   r   r   r   r   r   r
   r   r   r   test_fermion_states   s     r   c                  C   sF  t d} | d dksJ | d | ks(J | d dks8J | d dksHJ t| d t| ks`J t| d dkstJ | td jtjjjksJ | td j| tdfksJ t	t
 | d  W d    n1 s0    Y  t	t
 | d  W d    n1 s0    Y  t	t | d	  W d    n1 s80    Y  d S )
Nr
   r   r         ag	@y              ?)r   r   r	   funcsympycorepowerPowargsr   
ValueError	TypeErrorr   r   r   r   
test_power+   s    
&
(
r    )Zpytestr   r   Zsympy.physics.quantumr   r   r   Zsympy.physics.quantum.fermionr   r   r   r	   r   r   r    r   r   r   r   <module>   s   