Your IP : 216.73.216.213


Current Path : /opt/alt/python34/lib64/python3.4/test/test_json/__pycache__/
Upload File :
Current File : //opt/alt/python34/lib64/python3.4/test/test_json/__pycache__/test_fail.cpython-34.pyo

�
g f��"@s�ddlmZmZddlZddddddd	d
ddd
ddddddddddddddddddd d!d"d#d$g"Zid%d&6d'd(6ZGd)d*�d*�ZGd+d,�d,ee�ZGd-d.�d.ee�ZdS)/�)�PyTest�CTestNz<"A JSON payload should be an object or array, not a string."z["Unclosed array"z%{unquoted_key: "keys must be quoted"}z["extra comma",]z["double extra comma",,]z[   , "<-- missing value"]z["Comma after the close"],z["Extra close"]]z{"Extra comma": true,}z:{"Extra value after close": true} "misplaced quoted value"z{"Illegal expression": 1 + 2}z{"Illegal invocation": alert()}z+{"Numbers cannot have leading zeroes": 013}z{"Numbers cannot be hex": 0x14}z"["Illegal backslash escape: \x15"]z[\naked]z"["Illegal backslash escape: \017"]z2[[[[[[[[[[[[[[[[[[[["Too deep"]]]]]]]]]]]]]]]]]]]]z{"Missing colon" null}z{"Double colon":: null}z {"Comma instead of colon", null}z!["Colon instead of comma": false]z["Bad value", truth]z['single quote']z["	tab	character	in	string	"]z&["tab\   character\   in\  string\  "]z["line
break"]z["line\
break"]z[0e]z[0e+]z[0e+-1]z({"Comma instead if closing brace": true,z["mismatch"}z$["AZ control characters in string"]zwhy not have a string payload?�z,spec doesn't specify any nesting limitations�c@sXeZdZdd�Zdd�Zdd�Zdd�Zd	d
�Zdd�Zd
S)�TestFailc
Cs�x�tt�D]t\}}|d}|tkrB|j|�q
ny|j|�Wntk
rgYq
X|jdj||��q
WdS)Nrz(Expected failure for fail{0}.json: {1!r})�	enumerate�JSONDOCS�SKIPS�loads�
ValueErrorZfail�format)�self�idx�doc�r�=/opt/alt/python34/lib64/python3.4/test/test_json/test_fail.py�
test_failuresRs


zTestFail.test_failurescCsJidd6dd6}|jt|j|�|jt|j|dd�dS)Nr�a��indentT)rr)ZassertRaises�	TypeError�dumps)r
�datarrr�test_non_string_keys_dict_sz"TestFail.test_non_string_keys_dictcCs�d d!d"d#d$d%d&d'd(d)d*d+d,d-d.g}|d/d0g7}xL|D]D\}}}|jtdjtj|�|d|�|j|�qJWdS)1N��Expecting valuer�[r�[42�Expecting ',' delimiter��[42,��["�Unterminated string starting at�["spam�["spam"��["spam",��{�1Expecting property name enclosed in double quotes�{"�{"spam�{"spam"�Expecting ':' delimiter�{"spam":�
{"spam":42�
�{"spam":42,��"�"spamz$^{0}: line 1 column {1} \(char {2}\))rrr)rrr)rrr)r rr!)r"r#r)r$r#r)r%rr&)r'rr()r)r*r)r+r#r)r,r#r)r-r.r&)r/rr()r0rr1)r2r*r3)r4r#r)r5r#r)�assertRaisesRegexrr�re�escaper
)r
�
test_casesr�msgrrrr�test_truncated_inpuths.	
	zTestFail.test_truncated_inputcCs�d$d%d&d'd(d)d*d+d,d-d.d/d0d1d2d3d4d5d6d7d8g}xL|D]D\}}}|jtd#jtj|�|d|�|j|�qLWdS)9N�[,�Expecting valuer�
{"spam":[}�	�[42:�Expecting ',' delimiterr�
[42 "spam"r!�[42,]�{"spam":[42}r3�["]�Unterminated string starting at�["spam":r&�	["spam",]r(�{:�1Expecting property name enclosed in double quotes�{,�{42�[{]r�{"spam",�Expecting ':' delimiter�{"spam"}�	[{"spam"]�	{"spam":}�
[{"spam":]�{"spam":42 "ham"�[{"spam":42]�{"spam":42,}z$^{0}: line 1 column {1} \(char {2}\))r<r=r)r>r=r?)r@rAr)rBrAr!)rCr=r!)rDrAr3)rErFr)rGrAr&)rHr=r()rIrJr)rKrJr)rLrJr)rMrJr)rNrOr&)rPrOr&)rQrOr()rRr=r()rSr=r?)rTrAr3)rUrAr3)rVrJr3)r6rrr7r8r
)r
r9rr:rrrr�test_unexpected_data�s4		zTestFail.test_unexpected_datac
Cs�dd
ddg}|ddg7}xb|D]Z\}}}|jtd
jtj|�|dt|�d|t|��|j|�q)WdS)N�[]]�
Extra datar�{}}�[],[]�{},{}�	42,"spam"�	"spam",42�z>^{0}: line 1 column {1} - line 1 column {2} \(char {3} - {4}\)r)rXrYr)rZrYr)r[rYr)r\rYr)r]rYr)r^rYr_)r6rrr7r8�lenr
)r
r9rr:rrrr�test_extra_data�s	
	/zTestFail.test_extra_datacCs[dd
ddg}xB|D]:\}}}}|jtdj|||�|j|�qWdS)N�!rr� !r�
!�
  

     !r!r_r1z3^Expecting value: line {0} column {1} \(char {2}\)$)rbrrr)rcrrr)rdrrr)rer!r_r1)r6rrr
)r
r9r�line�colrrrr�test_linecol�s		zTestFail.test_linecolN)	�__name__�
__module__�__qualname__rrr;rWrarhrrrrrQs
	rc@seZdZdS)�
TestPyFailN)rirjrkrrrrrl�srlc@seZdZdS)�	TestCFailN)rirjrkrrrrrm�srm)	Ztest.test_jsonrrr7rr	rrlrmrrrr�<module>sR	
p