<s> import sys <EOL> import os <EOL> import unittest <EOL> sys . path . append ( os . path . join ( os . path . dirname ( __file__ ) , '<STR_LIT>' ) ) <EOL> from testlib import get_fixture , function <EOL> from testlib import EapiConfigUnitTest <EOL> import pyeapi . api . bgp <EOL> class TestApiBgp ( EapiConfigUnitTest ) : <EOL> def __init__ ( self , * args , ** kwargs ) : <EOL> super ( TestApiBgp , self ) . __init__ ( * args , ** kwargs ) <EOL> self . instance = pyeapi . api . bgp . instance ( None ) <EOL> self . config = open ( get_fixture ( '<STR_LIT>' ) ) . read ( ) <EOL> def test_get ( self ) : <EOL> result = self . instance . get ( ) <EOL> keys = [ '<STR_LIT>' , '<STR_LIT>' , '<STR_LIT>' , '<STR_LIT>' , <EOL> '<STR_LIT>' , '<STR_LIT>' , '<STR_LIT>' ] <EOL> self . assertEqual ( sorted ( keys ) , sorted ( result . keys ( ) ) ) <EOL> def test_create ( self ) : <EOL> for bgpas in [ '<STR_LIT>' , <NUM_LIT> ] : <EOL> func = function ( '<STR_LIT>' , bgpas ) <EOL> cmds = '<STR_LIT>' . format ( bgpas ) <EOL> self . eapi_positive_config_test ( func , cmds ) <EOL> def test_create_invalid_as ( self ) : <EOL> for bgpas in [ '<STR_LIT>' , <NUM_LIT> ] : <EOL> with self . assertRaises ( ValueError ) : <EOL> self . instance . create ( bgpas ) <EOL> def test_delete ( self ) : <EOL> func = function ( '<STR_LIT>' ) <EOL> cmds = '<STR_LIT>' <EOL> self . eapi_positive_config_test ( func , cmds ) <EOL> def test_default ( self ) : <EOL> func = function ( '<STR_LIT:default>' ) <EOL> cmds = '<STR_LIT>' <EOL> self . eapi_positive_config_test ( func , cmds ) <EOL> def test_add_network ( self ) : <EOL> func = function ( '<STR_LIT>' , '<STR_LIT>' , '<STR_LIT>' , '<STR_LIT:test>' ) <EOL> cmds = [ '<STR_LIT>' , '<STR_LIT>' ] <EOL> self . eapi_positive_config_test ( func , cmds ) <EOL> func = function ( '<STR_LIT>' , '<STR_LIT>' , '<STR_LIT>' , '<STR_LIT:test>' ) <EOL> self . eapi_exception_config_test ( func , ValueError ) <EOL> func = function ( '<STR_LIT>' , '<STR_LIT>' , '<STR_LIT>' , '<STR_LIT:test>' ) <EOL> self . eapi_exception_config_test ( func , ValueError ) <EOL> def test_remove_network ( self ) : <EOL> func = function ( '<STR_LIT>' , '<STR_LIT>' , '<STR_LIT>' , '<STR_LIT:test>' ) <EOL> cmds = [ '<STR_LIT>' , '<STR_LIT>' ] <EOL> self . eapi_positive_config_test ( func , cmds ) <EOL> func = function ( '<STR_LIT>' , '<STR_LIT>' , '<STR_LIT>' , '<STR_LIT:test>' ) <EOL> self . eapi_exception_config_test ( func , ValueError ) <EOL> func = function ( '<STR_LIT>' , '<STR_LIT>' , '<STR_LIT>' , '<STR_LIT:test>' ) <EOL> self . eapi_exception_config_test ( func , ValueError ) <EOL> def test_set_router_id ( self ) : <EOL> for state in [ '<STR_LIT>' , '<STR_LIT>' , '<STR_LIT:default>' ] : <EOL> rid = '<STR_LIT>' <EOL> if state == '<STR_LIT>' : <EOL> cmds = [ '<STR_LIT>' , '<STR_LIT>' ] <EOL> func = function ( '<STR_LIT>' , rid ) <EOL> elif state == '<STR_LIT>' : <EOL> cmds = [ '<STR_LIT>' , '<STR_LIT>' ] <EOL> func = function ( '<STR_LIT>' , None , False , True ) <EOL> elif state == '<STR_LIT:default>' : <EOL> cmds = [ '<STR_LIT>' , '<STR_LIT>' ] <EOL> func = function ( '<STR_LIT>' , rid , True ) <EOL> self . eapi_positive_config_test ( func , cmds ) <EOL> cmds = [ '<STR_LIT>' , '<STR_LIT>' ] <EOL> func = function ( '<STR_LIT>' , None ) <EOL> self . eapi_positive_config_test ( func , cmds ) <EOL> def test_maximum_paths_just_max_path ( self ) : <EOL> for state in [ '<STR_LIT>' , '<STR_LIT>' , '<STR_LIT:default>' ] : <EOL> max_paths = <NUM_LIT:20> <EOL> if state == '<STR_LIT>' : <EOL> cmds = [ '<STR_LIT>' , '<STR_LIT>' ] <EOL> func = function ( '<STR_LIT>' , max_paths ) <EOL> elif state == '<STR_LIT>' : <EOL> cmds = [ '<STR_LIT>' , '<STR_LIT>' ] <EOL> func = function ( '<STR_LIT>' , disable = True ) <EOL> elif state == '<STR_LIT:default>' : <EOL> cmds = [ '<STR_LIT>' , '<STR_LIT>' ] <EOL> func = function ( '<STR_LIT>' , default = True ) <EOL> self . eapi_positive_config_test ( func , cmds ) <EOL> cmds = [ '<STR_LIT>' , '<STR_LIT>' ] <EOL> func = function ( '<STR_LIT>' , None ) <EOL> self . eapi_positive_config_test ( func , cmds ) <EOL> def test_maximum_paths_max_path_and_ecmp ( self ) : <EOL> for state in [ '<STR_LIT>' , '<STR_LIT>' , '<STR_LIT:default>' ] : <EOL> max_paths = <NUM_LIT:20> <EOL> max_ecmp_path = <NUM_LIT:20> <EOL> if state == '<STR_LIT>' : <EOL> cmds = [ '<STR_LIT>' , '<STR_LIT>' ] <EOL> func = function ( '<STR_LIT>' , max_paths , max_ecmp_path ) <EOL> elif state == '<STR_LIT>' : <EOL> cmds = [ '<STR_LIT>' , '<STR_LIT>' ] <EOL> func = function ( '<STR_LIT>' , disable = True ) <EOL> elif state == '<STR_LIT:default>' : <EOL> cmds = [ '<STR_LIT>' , '<STR_LIT>' ] <EOL> func = function ( '<STR_LIT>' , default = True ) <EOL> self . eapi_positive_config_test ( func , cmds ) <EOL> func = function ( '<STR_LIT>' , max_path = None , max_ecmp_path = <NUM_LIT:20> , <EOL> default = False , disable = False ) <EOL> self . eapi_exception_config_test ( func , TypeError ) <EOL> def test_set_shutdown ( self ) : <EOL> for state in [ '<STR_LIT>' , '<STR_LIT>' , '<STR_LIT:default>' ] : <EOL> if state == '<STR_LIT>' : <EOL> cmds = [ '<STR_LIT>' , '<STR_LIT>' ] <EOL> func = function ( '<STR_LIT>' , default = False , disable = False ) <EOL> elif state == '<STR_LIT>' : <EOL> cmds = [ '<STR_LIT>' , '<STR_LIT>' ] <EOL> func = function ( '<STR_LIT>' , disable = True ) <EOL> elif state == '<STR_LIT:default>' : <EOL> cmds = [ '<STR_LIT>' , '<STR_LIT>' ] <EOL> func = function ( '<STR_LIT>' , default = True ) <EOL> self . eapi_positive_config_test ( func , cmds ) <EOL> class TestApiBgpNeighbor ( EapiConfigUnitTest ) : <EOL> def __init__ ( self , * args , ** kwargs ) : <EOL> super ( TestApiBgpNeighbor , self ) . __init__ ( * args , ** kwargs ) <EOL> self . instance = pyeapi . api . bgp . BgpNeighbors ( None ) <EOL> self . config = open ( get_fixture ( '<STR_LIT>' ) ) . read ( ) <EOL> def test_getall ( self ) : <EOL> result = self . instance . getall ( ) <EOL> self . assertIsInstance ( result , dict ) <EOL> self . assertEqual ( len ( result ) , <NUM_LIT:3> ) <EOL> def test_get ( self ) : <EOL> result = self . instance . get ( '<STR_LIT:test>' ) <EOL> keys = [ '<STR_LIT:name>' , '<STR_LIT>' , '<STR_LIT>' , '<STR_LIT:description>' , <EOL> '<STR_LIT>' , '<STR_LIT>' , '<STR_LIT>' , '<STR_LIT>' , <EOL> '<STR_LIT>' ] <EOL> self . assertEqual ( sorted ( keys ) , sorted ( result . keys ( ) ) ) <EOL> def test_delete ( self ) : <EOL> cmds = [ '<STR_LIT>' , '<STR_LIT>' ] <EOL> func = function ( '<STR_LIT>' , '<STR_LIT:test>' ) <EOL> self . eapi_positive_config_test ( func , cmds ) <EOL> def test_set_peer_group ( self ) : <EOL> for state in [ '<STR_LIT>' , '<STR_LIT>' , '<STR_LIT:default>' ] : <EOL> peer_group = '<STR_LIT:test>' <EOL> name = '<STR_LIT>' <EOL> cmd = '<STR_LIT>' . format ( name ) <EOL> if state == '<STR_LIT>' : <EOL> cmds = [ '<STR_LIT>' , '<STR_LIT>' . format ( cmd , peer_group ) ] <EOL> func = function ( '<STR_LIT>' , name , peer_group ) <EOL> elif state == '<STR_LIT>' : <EOL> cmds = [ '<STR_LIT>' , '<STR_LIT>' . format ( cmd ) ] <EOL> func = function ( '<STR_LIT>' , name , disable = True ) <EOL> elif state == '<STR_LIT:default>' : <EOL> cmds = [ '<STR_LIT>' , '<STR_LIT>' . format ( cmd ) ] <EOL> func = function ( '<STR_LIT>' , name , peer_group , <EOL> default = True ) <EOL> self . eapi_positive_config_test ( func , cmds ) <EOL> cmds = [ '<STR_LIT>' , '<STR_LIT>' ] <EOL> func = function ( '<STR_LIT>' , '<STR_LIT>' , None ) <EOL> self . eapi_positive_config_test ( func , cmds ) <EOL> def test_set_remote_as ( self ) : <EOL> for state in [ '<STR_LIT>' , '<STR_LIT>' , '<STR_LIT:default>' ] : <EOL> remote_as = '<STR_LIT>' <EOL> name = '<STR_LIT:test>' <EOL> cmd = '<STR_LIT>' . format ( name ) <EOL> if state == '<STR_LIT>' : <EOL> cmds = [ '<STR_LIT>' , '<STR_LIT>' . format ( cmd , remote_as ) ] <EOL> func = function ( '<STR_LIT>' , name , remote_as ) <EOL> elif state == '<STR_LIT>' : <EOL> cmds = [ '<STR_LIT>' , '<STR_LIT>' . format ( cmd ) ] <EOL> func = function ( '<STR_LIT>' , name , disable = True ) <EOL> elif state == '<STR_LIT:default>' : <EOL> cmds = [ '<STR_LIT>' , '<STR_LIT>' . format ( cmd ) ] <EOL> func = function ( '<STR_LIT>' , name , remote_as , default = True ) <EOL> self . eapi_positive_config_test ( func , cmds ) <EOL> cmds = [ '<STR_LIT>' , '<STR_LIT>' ] <EOL> func = function ( '<STR_LIT>' , '<STR_LIT:test>' , None ) <EOL> self . eapi_positive_config_test ( func , cmds ) <EOL> def test_set_shutdown ( self ) : <EOL> for state in [ '<STR_LIT>' , '<STR_LIT>' , '<STR_LIT:default>' , '<STR_LIT:false>' ] : <EOL> name = '<STR_LIT:test>' <EOL> cmd = '<STR_LIT>' . format ( name ) <EOL> if state == '<STR_LIT>' : <EOL> cmds = [ '<STR_LIT>' , '<STR_LIT>' . format ( cmd ) ] <EOL> func = function ( '<STR_LIT>' , name , default = False , <EOL> disable = False ) <EOL> elif state == '<STR_LIT>' : <EOL> cmds = [ '<STR_LIT>' , '<STR_LIT>' . format ( cmd ) ] <EOL> func = function ( '<STR_LIT>' , name , disable = True ) <EOL> elif state == '<STR_LIT:default>' : <EOL> cmds = [ '<STR_LIT>' , '<STR_LIT>' . format ( cmd ) ] <EOL> func = function ( '<STR_LIT>' , name , default = True ) <EOL> elif state == '<STR_LIT:false>' : <EOL> cmds = [ '<STR_LIT>' , '<STR_LIT>' . format ( cmd ) ] <EOL> func = function ( '<STR_LIT>' , name , disable = True ) <EOL> self . eapi_positive_config_test ( func , cmds ) <EOL> def test_set_send_community ( self ) : <EOL> for state in [ '<STR_LIT>' , '<STR_LIT>' , '<STR_LIT:default>' ] : <EOL> name = '<STR_LIT:test>' <EOL> cmd = '<STR_LIT>' . format ( name ) <EOL> if state == '<STR_LIT>' : <EOL> cmds = [ '<STR_LIT>' , '<STR_LIT>' . format ( cmd ) ] <EOL> func = function ( '<STR_LIT>' , name , value = True ) <EOL> elif state == '<STR_LIT>' : <EOL> cmds = [ '<STR_LIT>' , '<STR_LIT>' . format ( cmd ) ] <EOL> func = function ( '<STR_LIT>' , name , disable = True ) <EOL> elif state == '<STR_LIT:default>' : <EOL> cmds = [ '<STR_LIT>' , <EOL> '<STR_LIT>' . format ( cmd ) ] <EOL> func = function ( '<STR_LIT>' , name , value = False , <EOL> default = True ) <EOL> self . eapi_positive_config_test ( func , cmds ) <EOL> cmds = [ '<STR_LIT>' , '<STR_LIT>' ] <EOL> func = function ( '<STR_LIT>' , '<STR_LIT:test>' , None ) <EOL> self . eapi_positive_config_test ( func , cmds ) <EOL> def test_set_next_hop_self ( self ) : <EOL> for state in [ '<STR_LIT>' , '<STR_LIT>' , '<STR_LIT:default>' ] : <EOL> name = '<STR_LIT:test>' <EOL> cmd = '<STR_LIT>' . format ( name ) <EOL> if state == '<STR_LIT>' : <EOL> cmds = [ '<STR_LIT>' , '<STR_LIT>' . format ( cmd ) ] <EOL> func = function ( '<STR_LIT>' , name , value = True ) <EOL> elif state == '<STR_LIT>' : <EOL> cmds = [ '<STR_LIT>' , '<STR_LIT>' . format ( cmd ) ] <EOL> func = function ( '<STR_LIT>' , name , disable = True ) <EOL> elif state == '<STR_LIT:default>' : <EOL> cmds = [ '<STR_LIT>' , <EOL> '<STR_LIT>' . format ( cmd ) ] <EOL> func = function ( '<STR_LIT>' , name , value = False , <EOL> default = True ) <EOL> self . eapi_positive_config_test ( func , cmds ) <EOL> cmds = [ '<STR_LIT>' , '<STR_LIT>' ] <EOL> func = function ( '<STR_LIT>' , '<STR_LIT:test>' , None ) <EOL> self . eapi_positive_config_test ( func , cmds ) <EOL> def test_set_route_map_in ( self ) : <EOL> for state in [ '<STR_LIT>' , '<STR_LIT>' , '<STR_LIT:default>' ] : <EOL> route_map = '<STR_LIT>' <EOL> name = '<STR_LIT:test>' <EOL> cmd = '<STR_LIT>' . format ( name ) <EOL> if state == '<STR_LIT>' : <EOL> cmds = [ '<STR_LIT>' , '<STR_LIT>' . format ( cmd , route_map ) ] <EOL> func = function ( '<STR_LIT>' , name , value = route_map ) <EOL> elif state == '<STR_LIT>' : <EOL> cmds = [ '<STR_LIT>' , '<STR_LIT>' . format ( cmd ) ] <EOL> func = function ( '<STR_LIT>' , name , disable = True ) <EOL> elif state == '<STR_LIT:default>' : <EOL> cmds = [ '<STR_LIT>' , '<STR_LIT>' . format ( cmd ) ] <EOL> func = function ( '<STR_LIT>' , name , value = route_map , <EOL> default = True ) <EOL> self . eapi_positive_config_test ( func , cmds ) <EOL> cmds = [ '<STR_LIT>' , '<STR_LIT>' ] <EOL> func = function ( '<STR_LIT>' , '<STR_LIT:test>' , None ) <EOL> self . eapi_positive_config_test ( func , cmds ) <EOL> def test_set_route_map_out ( self ) : <EOL> for state in [ '<STR_LIT>' , '<STR_LIT>' , '<STR_LIT:default>' ] : <EOL> route_map = '<STR_LIT>' <EOL> name = '<STR_LIT:test>' <EOL> cmd = '<STR_LIT>' . format ( name ) <EOL> if state == '<STR_LIT>' : <EOL> cmds = [ '<STR_LIT>' , '<STR_LIT>' . format ( cmd , route_map ) ] <EOL> func = function ( '<STR_LIT>' , name , value = route_map ) <EOL> elif state == '<STR_LIT>' : <EOL> cmds = [ '<STR_LIT>' , '<STR_LIT>' . format ( cmd ) ] <EOL> func = function ( '<STR_LIT>' , name , disable = True ) <EOL> elif state == '<STR_LIT:default>' : <EOL> cmds = [ '<STR_LIT>' , '<STR_LIT>' . format ( cmd ) ] <EOL> func = function ( '<STR_LIT>' , name , value = route_map , <EOL> default = True ) <EOL> self . eapi_positive_config_test ( func , cmds ) <EOL> cmds = [ '<STR_LIT>' , '<STR_LIT>' ] <EOL> func = function ( '<STR_LIT>' , '<STR_LIT:test>' , None ) <EOL> self . eapi_positive_config_test ( func , cmds ) <EOL> def test_set_description ( self ) : <EOL> for state in [ '<STR_LIT>' , '<STR_LIT>' , '<STR_LIT:default>' ] : <EOL> value = '<STR_LIT>' <EOL> name = '<STR_LIT:test>' <EOL> cmd = '<STR_LIT>' . format ( name ) <EOL> if state == '<STR_LIT>' : <EOL> cmds = [ '<STR_LIT>' , '<STR_LIT>' . format ( cmd , value ) ] <EOL> func = function ( '<STR_LIT>' , name , value = value ) <EOL> elif state == '<STR_LIT>' : <EOL> cmds = [ '<STR_LIT>' , '<STR_LIT>' . format ( cmd ) ] <EOL> func = function ( '<STR_LIT>' , name , disable = True ) <EOL> elif state == '<STR_LIT:default>' : <EOL> cmds = [ '<STR_LIT>' , '<STR_LIT>' . format ( cmd ) ] <EOL> func = function ( '<STR_LIT>' , name , value = value , <EOL> default = True ) <EOL> self . eapi_positive_config_test ( func , cmds ) <EOL> cmds = [ '<STR_LIT>' , '<STR_LIT>' ] <EOL> func = function ( '<STR_LIT>' , '<STR_LIT:test>' , None ) <EOL> self . eapi_positive_config_test ( func , cmds ) <EOL> if __name__ == '<STR_LIT:__main__>' : <EOL> unittest . main ( ) </s>
