Exemplo n.º 1
0
    def test_ensure_device_role_exist(self):
        """Verify ensure_device_role function when DeviceRole exist but is not assigned to the OT."""
        nbk = NetboxKeeper(self.ndk1)

        nbk.ensure_device_role(create_device_role=True,
                               default_device_role="firewall")
        self.assertEqual(nbk.netdev.ot.role, self.device_role1)
Exemplo n.º 2
0
    def test_ensure_device_role_assigned(self):
        """Verify ensure_device_role function when DeviceRole exist and is already assigned."""
        nbk = NetboxKeeper(self.ndk2)

        nbk.ensure_device_role(create_device_role=True,
                               default_device_role="firewall")
        self.assertEqual(nbk.netdev.ot.role, self.device_role1)
Exemplo n.º 3
0
    def test_ensure_device_type_present(self):
        """Verify ensure_device_type function when Manufacturer and DeviceType object are already present."""
        nbk = NetboxKeeper(self.ndk2)

        nbk.ensure_device_type(create_manufacturer=False, create_device_type=False)
        self.assertEqual(nbk.manufacturer, self.manufacturer1)
        self.assertEqual(nbk.device_type, self.device_type1)
Exemplo n.º 4
0
    def test_ensure_device_instance_not_exist(self):
        """Verify ensure_device_instance function."""
        nbk = NetboxKeeper(self.ndk2)
        nbk.device_type = self.device_type1
        nbk.netdev.ot = self.onboarding_task3

        nbk.ensure_device_instance()
        self.assertIsInstance(nbk.device, Device)
        self.assertEqual(nbk.device, nbk.netdev.ot.created_device)
        self.assertEqual(nbk.device.serial, "123456")
Exemplo n.º 5
0
    def test_ensure_primary_ip_not_exist(self):
        """Verify ensure_primary_ip function when the Ip address do not already exist."""
        nbk = NetboxKeeper(self.ndk2)
        nbk.device_type = self.device_type1
        nbk.netdev.ot = self.onboarding_task3

        nbk.ensure_device_instance()
        nbk.ensure_interface()
        nbk.ensure_primary_ip()
        self.assertIsInstance(nbk.primary_ip, IPAddress)
        self.assertEqual(nbk.primary_ip.interface, nbk.interface)
    def test_ensure_device_instance_exist(self):
        """Verify ensure_device_instance function."""
        device = Device.objects.create(
            name=self.ndk2.hostname,
            site=self.site1,
            device_type=self.device_type1,
            device_role=self.device_role1,
            status="planned",
            serial="987654",
        )

        nbk = NetboxKeeper(self.ndk2)
        nbk.netdev.ot = self.onboarding_task3
        self.assertEqual(nbk.device, None)
        nbk.ensure_device_instance(default_status="active")
        self.assertIsInstance(nbk.device, Device)
        self.assertEqual(nbk.device.status, "planned")
        self.assertEqual(nbk.device.platform, self.platform1)
        self.assertEqual(nbk.device, device)
        self.assertEqual(nbk.device.serial, "123456")
Exemplo n.º 7
0
    def test_ensure_interface_not_exist(self):
        """Verify ensure_interface function when the interface do not exist."""
        nbk = NetboxKeeper(self.ndk2)
        nbk.device_type = self.device_type1
        nbk.netdev.ot = self.onboarding_task3

        nbk.ensure_device_instance()

        nbk.ensure_interface()
        self.assertIsInstance(nbk.interface, Interface)
        self.assertEqual(nbk.interface.name, "ge-0/0/0")
Exemplo n.º 8
0
    def test_ensure_interface_exist(self):
        """Verify ensure_interface function when the interface already exist."""
        nbk = NetboxKeeper(self.ndk2)
        nbk.device_type = self.device_type1
        nbk.netdev.ot = self.onboarding_task3

        nbk.ensure_device_instance()
        intf = Interface.objects.create(name=nbk.netdev.mgmt_ifname, device=nbk.device)

        nbk.ensure_interface()
        self.assertEqual(nbk.interface, intf)
Exemplo n.º 9
0
    def test_ensure_device_type_missing(self):
        """Verify ensure_device_type function when Manufacturer and DeviceType object are not present."""
        nbk = NetboxKeeper(self.ndk1)

        with self.assertRaises(OnboardException) as exc_info:
            nbk.ensure_device_type(create_manufacturer=False, create_device_type=False)
            self.assertEqual(exc_info.exception.message, "ERROR manufacturer not found: cisco")
            self.assertEqual(exc_info.exception.reason, "fail-config")

        with self.assertRaises(OnboardException) as exc_info:
            nbk.ensure_device_type(create_manufacturer=True, create_device_type=False)
            self.assertEqual(exc_info.exception.message, "ERROR device type not found: csr1000v")
            self.assertEqual(exc_info.exception.reason, "fail-config")

        nbk.ensure_device_type(create_manufacturer=True, create_device_type=True)
        self.assertIsInstance(nbk.manufacturer, Manufacturer)
        self.assertIsInstance(nbk.device_type, DeviceType)
Exemplo n.º 10
0
    def test_ensure_device_role_not_exist(self):
        """Verify ensure_device_role function when DeviceRole do not already exist."""
        nbk = NetboxKeeper(self.ndk1)

        with self.assertRaises(OnboardException) as exc_info:
            nbk.ensure_device_role(create_device_role=False, default_device_role="mytestrole")
            self.assertEqual(exc_info.exception.message, "ERROR device role not found: mytestrole")
            self.assertEqual(exc_info.exception.reason, "fail-config")

        nbk.ensure_device_role(create_device_role=True, default_device_role="mytestrole")
        self.assertIsInstance(nbk.netdev.ot.role, DeviceRole)
        self.assertEqual(nbk.netdev.ot.role.slug, "mytestrole")