
    ZTh                     0    d dl Z d dlmZ d dlmZ d Zd Zy)    N)YamlConfigError)rulec                  
   t        j                  ddi       t        j                  ddi       t        j                  t        d      5  t        j                  ddi       d d d        t        j                  t        d      5  t        j                  ddi       d d d        t        j                  t        d      5  t        j                  ddi       d d d        y # 1 sw Y   xY w# 1 sw Y   QxY w# 1 sw Y   y xY w)	Nz$mass
   z$mInvalid sub-expression keymatchmassz$!massz$$mass)r   _validate_sub_expressionpytestraisesr        \/home/www/backend.miabetepe.com/venv/lib/python3.12/site-packages/sift_py/yaml/_rule_test.pytest__validate_sub_expressionr      s    !!7B-0!!4*-	.J	K 4%%vrl34 
.J	K 6%%xn56 
.J	K 6%%xn56 64 46 66 6s$   
C!C- C9!C*-C69Dc                  &   t        j                  dddddddgdd	d
diddd
digdd       t        j                  dddddddgdd	d
diddd
digdgdgdd
       t        j                  t        d      5  t        j                  dddddddgdd	d
diddd
digd       d d d        t        j                  t        d      5  t        j                  dddddddgdd	d
diddd
digd       d d d        t        j                  t        d      5  t        j                  dddddddgdd	d
diddd
digd       d d d        t        j                  t        d      5  t        j                  dddddddgdd	d
diddd
digd       d d d        t        j                  t        d      5  t        j                  dddddddd	d
diddd
digd       d d d        t        j                  t        d      5  t        j                  dddddd d	d
diddd
digd!       d d d        t        j                  t        d"      5  t        j                  ddd#d$idddd%d
digd&d igd'       d d d        t        j                  t        d(      5  t        j                  dddddddgdd	d
diddd
digddd)	       d d d        t        j                  t        d*      5  t        j                  dddddddgdd	d
diddd
digddd+	       d d d        y # 1 sw Y   xY w# 1 sw Y   =xY w# 1 sw Y   xY w# 1 sw Y   xY w# 1 sw Y   yxY w# 1 sw Y   :xY w# 1 sw Y   xY w# 1 sw Y   xY w# 1 sw Y   y xY w),Noverheat_rulesome_descriptionz$1 > 10 && $2 > 10reviewzhomer@example.comfoobarz$1voltagedouble)name	data_typez$2vehicle_stateoverheat_rule_key)r   description
expressiontypeassigneetagschannel_referencesrule_client_keyNostromoLV426vehicle)
r   r   r   r    r!   r"   r#   asset_names	tag_namesr$   z+Expected 'name' to be <str> but it is <int>r   r   )r   r   r   r    r!   r"   r#   z2Expected 'description' to be <str> but it is <int>z<Expected 'expression' to be <<class 'str'> | <class 'dict'>>{   z6Expected 'type' to be <review | phase> but it is <str>foobarnot_valid_typezExpected 'tags' to bephasezInvalid channel reference keyz$foo)r   r   r   r    r!   r#   r   r   kinetic_energy_gtvelocityr
   )r   r   r   r    r!   r#   sub_expressionszExpected 'asset_names' to be)	r   r   r   r    r!   r"   r#   r$   r'   zExpected 'tag_names' to be)	r   r   r   r    r!   r"   r#   r$   r(   )r   _validate_ruler   r   r   r   r   r   test__validate_ruler1      s   #-.+EN	ABhGH#  3	
" 	#-.+EN	ABhGH# ,,#2	
$ 
.[	\ 
12 /IHEFO(KL'	

  
.b	c 
' 2 /IHEFO(KL'	

  
]
 
 	'1! /IHEFO(KL'	

$ 
W
 
 	''2(/IHEFO(KL'	

$ 
.E	F 
''2/IHEFO(KL'	

  
.M	N 
''2/ihGHO(KL'
	

 
.J	K 
''%':;/JXFG' TN$	

" 
.L	M 
'12 /IHEFO(KL' $7"	

$ 
.J	K 
'12 /IHEFO(KL' $7 	

 
M
 
 
 
 
 
$
 
$
 
 
 

 
"
 
$
 
sl   8,L!,L.,L;%,M4*M)M")M/.M;*.N!L+.L8;MMM"M,/M8;NN)r   #sift_py.ingestion.config.yaml.errorr   sift_py.yamlr   r   r1   r   r   r   <module>r4      s     ? 6z
r   