def test_commit_error(device): """test commit error with dynamic reply""" # bind configuration util assert device.bind(cu=Config) == None # create error xml error = etree.fromstring(""" <rpc-error xmlns="urn:ietf:params:xml:ns:netconf:base:1.0" xmlns:junos="http://xml.juniper.net/junos/14.1R4/junos" xmlns:nc="urn:ietf:params:xml:ns:netconf:base:1.0"> <error-type>application</error-type> <error-tag>invalid-value</error-tag> <error-severity>error</error-severity> <error-path>[edit]</error-path> <error-message>mgd: Missing mandatory statement: 'test error'</error-message> <error-info> <bad-element>system</bad-element> </error-info> </rpc-error> """) # set CommitError exception as result for rpc commit_configuration rpc_reply_dict['commit-configuration'] = CommitError(error) # check if CommitError will be raised with pytest.raises(CommitError): # commit configuration device.cu.commit()
def test_commit_error(device): """test commit error with dynamic reply""" # bind configuration util assert device.bind(cu=Config) == None # set result for rpc load_config rpc_reply_dict[ "load-configuration" ] = """ <rpc-reply> <load-configuration-results> <ok/> </load-configuration-results> </rpc-reply>""" # load confgiuratin and check result result = device.cu.load("set interfaces ge-0/0/0 disable", format="set") assert result.find(".//ok") is not None
def test_bind_to_pyez_dev(device): """bind instance of neighbors to device """ device.bind(neighbors=Neighbors) assert device.neighbors.display