Ejemplo n.º 1
0
    def test_connect_wrong_data_exception(self):
        """
        test_connect_wrong_data_exception
        """

        plugin = JUNOS(equipment_access=self.mock_equipment_access)
        with self.assertRaises(exceptions.ConnectionException):
            plugin.connect()
Ejemplo n.º 2
0
    def test_connect_success(self, mock_device):
        """
        test_connect_success - Simulate connect success using Junos Device mock.

        Note: All internal functions in Device Class are mocked, raising no exceptions on it

        Warning: For an unknown reason was not possible to use
        'jnpr.junos.Device' instead 'networkapi.plugins.Juniper.JUNOS.plugin.Device'
        """

        # Mocking result
        mock_device.return_value.connected = True

        # Close real test
        plugin = JUNOS(equipment_access=self.mock_equipment_access)
        connection_response = plugin.connect()

        # Asserts
        plugin.remote_conn.open.assert_called_with()
        self.assertIsNotNone(plugin.configuration)
        self.assertEqual(connection_response, True)
log = logging.getLogger(__name__)
log_test_prefix = '[Junos Plugin]'
log.debug('%s Start sample' % log_test_prefix)

# Requirements (args, equipment and plugin)
host = 'HOSTNAME_OR_IP'
user = '******'
password = '******'

# Temporary equipment access object (defined above as EquipamentoAcesso)
equipment_access = EquipamentoAcesso(host, user, password)

# NetworkAPI junos plugin object
equip_plugin = JUNOS(equipment_access=equipment_access)
""" OPEN CONNECTION """
print("Open connection {}...".format(host))
print("Connection result: {}".format(equip_plugin.connect()))
""" CHECK PRIVILEGES """
print("Check privilege {}...".format(host))
print("Privilege result: {}".format(equip_plugin.ensure_privilege_level()))
""" EXECUTE CONFIGURATION """
print("Execute configuration file {}...".format(host))
# equip_plugin.exec_command(command='set interfaces gr-0/0/0 description "Some description teste3 for gr-0/0/0 at "')
print("Execute configuration result: {}".format(
    equip_plugin.copyScriptFileToConfig(
        filename="networkapi/plugins/Juniper/JUNOS/samples/sample_command.txt")
))
""" CLOSE CONNECTION """
print("Close connection {}...".format(host))
print("Close connection result: {}".format(equip_plugin.close()))