class SharepointAPI: __site = None def login(self): authcookie = Office365( StringUtils.StringUtils.website, username=StringUtils.StringUtils.email, password=StringUtils.StringUtils.passwort).GetCookies() self.__site = Site(StringUtils.StringUtils.websiteAPI, version=Version.v365, authcookie=authcookie) def addList(self): self.__site.AddList('My new new new list', description='Great List created by Phyton', template_id='Custom List') def infoList(self): #folder = self.__site.Folder('Freigegebene Dokumente') #file = folder.get_file('conf.py') file = self.__site.get_list_templates() print(file) return file
class ListTestCase(unittest.TestCase): def setUp(self): if TEST_SETTINGS["version"] in ["2014", "2016", "2019", "365"]: version = Version.v2016 else: version = Version.v2007 if TEST_SETTINGS["version"] == "365": authcookie = Office365(TEST_SETTINGS["server_url"], username=TEST_SETTINGS["username"], password=TEST_PASSWORD).GetCookies() self.site = Site(TEST_SETTINGS["site_url"], version=version, authcookie=authcookie) else: auth = HttpNtlmAuth(TEST_SETTINGS["username"], TEST_PASSWORD) self.site = Site(TEST_SETTINGS["site_url"], version=version, auth=auth) self.test_list = TEST_SETTINGS["test_list"] def tearDown(self): self.site._session.close() def test_a_create_list(self): print("Create List") self.site.AddList(self.test_list, description='Great List!', template_id='Custom List') self.assertTrue(self.test_list in [i['Title'] for i in self.site.get_list_collection()]) def test_b_get_list_fields(self): print("Get Fields") self.list = self.site.List(TEST_SETTINGS["test_list"]) self.assertIsNotNone(self.list.fields) def test_c_update_list(self): print("Update List") self.list = self.site.List(TEST_SETTINGS["test_list"]) my_data = [{ 'Title': 'First Row!' }, { 'Title': 'Another One!' }, { 'Title': 'Thrid Row' }] self.list.UpdateListItems(data=my_data, kind='New') self.assertEqual(len(self.list.get_list_items(row_limit=5)), 3) def test_d_delete_row(self): print("Delete Row") self.list = self.site.List(TEST_SETTINGS["test_list"]) my_data = [1] self.list.UpdateListItems(data=my_data, kind='Delete') self.assertEqual(len(self.list.get_list_items(row_limit=2)), 2) def test_e_get_view(self): print("Get View") self.list = self.site.List(TEST_SETTINGS["test_list"]) self.assertEqual(len(self.list.GetListItems("All Items")), 2) def test_f_query_list(self): print('Test Query') self.list = self.site.List(TEST_SETTINGS["test_list"]) query = {'Where': [('Eq', 'Title', 'Another One!')]} items = self.list.GetListItems(fields=['Title'], query=query) self.assertEqual(len(items), 1) def test_g_users(self): print("Test Users") self.list = self.site.List(TEST_SETTINGS["test_list"]) self.assertIsNotNone(self.list.users) self.site.delete_list(TEST_SETTINGS["test_list"])
from config import config from shareplum import Site from shareplum import Office365 from shareplum.site import Version # get data from configuration username = config['sp_user'] password = config['sp_password'] authcookie = Office365('https://xxxxxx.sharepoint.com', username=username, password=password).GetCookies() site = Site('https://xxxxxx.sharepoint.com/sites/sbdev/subtest01',version=Version.v365, authcookie=authcookie) newlist=site.AddList('My New List', description='Great List!', template_id='Document Library') print(newlist)