<s> """<STR_LIT>""" <EOL> import unittest <EOL> from bacpypes . debugging import bacpypes_debugging , ModuleLogger , xtob <EOL> from bacpypes . errors import InvalidTag <EOL> from bacpypes . primitivedata import Integer , Tag <EOL> _debug = <NUM_LIT:0> <EOL> _log = ModuleLogger ( globals ( ) ) <EOL> @ bacpypes_debugging <EOL> def integer_tag ( x ) : <EOL> """<STR_LIT>""" <EOL> if _debug : integer_tag . _debug ( "<STR_LIT>" , x ) <EOL> b = xtob ( x ) <EOL> tag = Tag ( Tag . applicationTagClass , Tag . integerAppTag , len ( b ) , b ) <EOL> if _debug : integer_endec . _debug ( "<STR_LIT>" , tag ) <EOL> return tag <EOL> @ bacpypes_debugging <EOL> def integer_encode ( obj ) : <EOL> """<STR_LIT>""" <EOL> if _debug : integer_encode . _debug ( "<STR_LIT>" , obj ) <EOL> tag = Tag ( ) <EOL> obj . encode ( tag ) <EOL> if _debug : integer_endec . _debug ( "<STR_LIT>" , tag ) <EOL> return tag <EOL> @ bacpypes_debugging <EOL> def integer_decode ( tag ) : <EOL> """<STR_LIT>""" <EOL> if _debug : integer_decode . _debug ( "<STR_LIT>" , tag ) <EOL> obj = Integer ( tag ) <EOL> if _debug : integer_decode . _debug ( "<STR_LIT>" , obj ) <EOL> return obj <EOL> @ bacpypes_debugging <EOL> def integer_endec ( v , x ) : <EOL> """<STR_LIT>""" <EOL> if _debug : integer_endec . _debug ( "<STR_LIT>" , v , x ) <EOL> tag = integer_tag ( x ) <EOL> if _debug : integer_endec . _debug ( "<STR_LIT>" , tag , tag . tagData ) <EOL> obj = Integer ( v ) <EOL> if _debug : integer_endec . _debug ( "<STR_LIT>" , obj , obj . value ) <EOL> assert integer_encode ( obj ) == tag <EOL> assert integer_decode ( tag ) == obj <EOL> @ bacpypes_debugging <EOL> class TestInteger ( unittest . TestCase ) : <EOL> def test_integer ( self ) : <EOL> if _debug : TestInteger . _debug ( "<STR_LIT>" ) <EOL> obj = Integer ( ) <EOL> assert obj . value == <NUM_LIT:0> <EOL> with self . assertRaises ( TypeError ) : <EOL> Integer ( "<STR_LIT>" ) <EOL> with self . assertRaises ( TypeError ) : <EOL> Integer ( <NUM_LIT:1.0> ) <EOL> def test_integer_int ( self ) : <EOL> if _debug : TestInteger . _debug ( "<STR_LIT>" ) <EOL> obj = Integer ( <NUM_LIT:1> ) <EOL> assert obj . value == <NUM_LIT:1> <EOL> assert str ( obj ) == "<STR_LIT>" <EOL> obj = Integer ( - <NUM_LIT:1> ) <EOL> assert obj . value == - <NUM_LIT:1> <EOL> assert str ( obj ) == "<STR_LIT>" <EOL> def test_integer_tag ( self ) : <EOL> if _debug : TestInteger . _debug ( "<STR_LIT>" ) <EOL> tag = Tag ( Tag . applicationTagClass , Tag . integerAppTag , <NUM_LIT:1> , xtob ( '<STR_LIT>' ) ) <EOL> obj = Integer ( tag ) <EOL> assert obj . value == <NUM_LIT:1> <EOL> tag = Tag ( Tag . applicationTagClass , Tag . booleanAppTag , <NUM_LIT:0> , xtob ( '<STR_LIT>' ) ) <EOL> with self . assertRaises ( InvalidTag ) : <EOL> Integer ( tag ) <EOL> tag = Tag ( Tag . contextTagClass , <NUM_LIT:0> , <NUM_LIT:1> , xtob ( '<STR_LIT>' ) ) <EOL> with self . assertRaises ( InvalidTag ) : <EOL> Integer ( tag ) <EOL> tag = Tag ( Tag . openingTagClass , <NUM_LIT:0> ) <EOL> with self . assertRaises ( InvalidTag ) : <EOL> Integer ( tag ) <EOL> def test_integer_copy ( self ) : <EOL> if _debug : TestInteger . _debug ( "<STR_LIT>" ) <EOL> obj1 = Integer ( <NUM_LIT:12> ) <EOL> obj2 = Integer ( obj1 ) <EOL> assert obj2 . value == <NUM_LIT:12> <EOL> def test_integer_endec ( self ) : <EOL> if _debug : TestInteger . _debug ( "<STR_LIT>" ) <EOL> with self . assertRaises ( InvalidTag ) : <EOL> obj = Integer ( integer_tag ( '<STR_LIT>' ) ) <EOL> integer_endec ( <NUM_LIT:0> , '<STR_LIT>' ) <EOL> integer_endec ( <NUM_LIT:1> , '<STR_LIT>' ) <EOL> integer_endec ( <NUM_LIT> , '<STR_LIT>' ) <EOL> integer_endec ( - <NUM_LIT> , '<STR_LIT>' ) <EOL> integer_endec ( - <NUM_LIT:1> , '<STR_LIT>' ) <EOL> integer_endec ( <NUM_LIT> , '<STR_LIT>' ) <EOL> integer_endec ( - <NUM_LIT> , '<STR_LIT>' ) <EOL> integer_endec ( <NUM_LIT> , '<STR_LIT>' ) <EOL> integer_endec ( - <NUM_LIT> , '<STR_LIT>' ) <EOL> integer_endec ( <NUM_LIT> , '<STR_LIT>' ) <EOL> integer_endec ( - <NUM_LIT> , '<STR_LIT>' ) </s>
