def test_invalid_room_gives_error(self): data = 'invalid:10.0.90.252:myorg:SW:{}::'.format( self.read_profile.name, ) parser = bulkparse.NetboxBulkParser(data) importer = bulkimport.NetboxImporter(parser) _line_num, objects = six.next(importer) self.assertTrue(isinstance(objects, bulkimport.DoesNotExist))
def test_get_netboxinfo_from_function(self): importer = bulkimport.NetboxImporter(None) netbox = manage.Netbox() netboxinfo = importer._get_netboxinfo_from_function(netbox, 'hella') self.assertTrue(isinstance(netboxinfo, manage.NetboxInfo)) self.assertTrue(netboxinfo.key is None) self.assertEqual(netboxinfo.variable, 'function') self.assertEqual(netboxinfo.value, 'hella')
def test_netbox_function_is_set(self): data = 'myroom:10.0.90.252:myorg:SW:1:public:::does things:' parser = bulkparse.NetboxBulkParser(data) importer = bulkimport.NetboxImporter(parser) _line_num, objects = six.next(importer) types = dict((type(c), c) for c in objects) self.assertTrue(manage.NetboxInfo in types, types)
def test_netbox_groups_are_set(self): data = 'myroom:10.0.90.10:myorg:SRV:::fileserver::WEB:UNIX:MAIL' parser = bulkparse.NetboxBulkParser(data) importer = bulkimport.NetboxImporter(parser) _line_num, objects = six.next(importer) netboxgroups = [o for o in objects if isinstance(o, manage.NetboxCategory)] self.assertTrue(len(netboxgroups) > 0, objects)
def test_simple_import_yields_netbox_and_device_model(self): data = 'myroom:10.0.90.252:myorg:SW:1:public::' parser = bulkparse.NetboxBulkParser(data) importer = bulkimport.NetboxImporter(parser) _line_num, objects = six.next(importer) self.assertTrue(isinstance(objects, list), repr(objects)) self.assertTrue(len(objects) == 1, repr(objects)) self.assertTrue(isinstance(objects[0], manage.Netbox), objects[0])
def test_netbox_function_is_set(self): data = 'myroom:10.0.90.252:myorg:SW:{}::does things:'.format( self.read_profile.name, ) parser = bulkparse.NetboxBulkParser(data) importer = bulkimport.NetboxImporter(parser) _line_num, objects = next(importer) types = dict((type(c), c) for c in objects) self.assertTrue(manage.NetboxInfo in types, types)
def test_server_import_yields_netbox_and_device_model(self): data = 'myroom:10.0.90.253:myorg:SRV' parser = bulkparse.NetboxBulkParser(data) importer = bulkimport.NetboxImporter(parser) _line_num, objects = six.next(importer) self.assertTrue(isinstance(objects, list), repr(objects)) self.assertTrue(len(objects) == 1, repr(objects)) self.assertTrue(any(isinstance(o, manage.Netbox) for o in objects), msg=objects)
def test_get_groups_from_group(self): importer = bulkimport.NetboxImporter(None) netbox = manage.Netbox() netbox.category = manage.Category.objects.get(id='SRV') netboxgroups = ['LDAP', 'UNIX'] ncategories = importer._get_groups_from_group(netbox, netboxgroups) self.assertTrue(len(ncategories) == 2) for netboxgroup, ncategory in zip(netboxgroups, ncategories): self.assertTrue(isinstance(ncategory, manage.NetboxCategory), ncategory) self.assertEqual(ncategory.category_id, netboxgroup)
def test_simple_import_yields_objects_with_proper_values(self): data = 'myroom:10.0.90.252:myorg:SW:1:public::' parser = bulkparse.NetboxBulkParser(data) importer = bulkimport.NetboxImporter(parser) _line_num, objects = six.next(importer) (netbox, ) = objects self.assertEqual(netbox.ip, '10.0.90.252') self.assertEqual(netbox.room_id, 'myroom') self.assertEqual(netbox.organization_id, 'myorg') self.assertEqual(netbox.category_id, 'SW') self.assertEqual(netbox.snmp_version, '1') self.assertEqual(netbox.read_only, 'public')
def test_simple_import_yields_objects_with_proper_values(self): data = 'myroom:10.0.90.252:myorg:SW:{}::'.format( self.read_profile.name, ) parser = bulkparse.NetboxBulkParser(data) importer = bulkimport.NetboxImporter(parser) _line_num, objects = six.next(importer) (netbox, profile) = objects self.assertEqual(netbox.ip, '10.0.90.252') self.assertEqual(netbox.room_id, 'myroom') self.assertEqual(netbox.organization_id, 'myorg') self.assertEqual(netbox.category_id, 'SW') self.assertEqual(profile.profile, self.read_profile)
def test_simple_import_yields_netbox_and_device_model(self): data = 'myroom:10.0.90.252:myorg:SW:{}::'.format( self.read_profile.name, ) parser = bulkparse.NetboxBulkParser(data) importer = bulkimport.NetboxImporter(parser) _line_num, objects = six.next(importer) self.assertTrue(isinstance(objects, list), repr(objects)) self.assertTrue(len(objects) == 2, repr(objects)) self.assertTrue(any(isinstance(o, manage.Netbox) for o in objects), msg=objects) self.assertTrue(any( isinstance(o, manage.NetboxProfile) for o in objects), msg=objects)
def parse_to_objects(data): parser = bulkparse.NetboxBulkParser(data) importer = bulkimport.NetboxImporter(parser) _line_num, objects = six.next(importer) return objects