msfabricpysdkcore 0.2.6__py3-none-any.whl → 0.2.7__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (54) hide show
  1. msfabricpysdkcore/coreapi.py +739 -15
  2. msfabricpysdkcore/otheritems.py +61 -1
  3. msfabricpysdkcore/workspace.py +158 -6
  4. {msfabricpysdkcore-0.2.6.dist-info → msfabricpysdkcore-0.2.7.dist-info}/METADATA +4 -2
  5. msfabricpysdkcore-0.2.7.dist-info/RECORD +30 -0
  6. msfabricpysdkcore/tests/__init__.py +0 -0
  7. msfabricpysdkcore/tests/test_admin_apis.py +0 -174
  8. msfabricpysdkcore/tests/test_admin_tags.py +0 -46
  9. msfabricpysdkcore/tests/test_connection.py +0 -111
  10. msfabricpysdkcore/tests/test_copy_jobs.py +0 -60
  11. msfabricpysdkcore/tests/test_dataflows.py +0 -60
  12. msfabricpysdkcore/tests/test_datapipelines.py +0 -60
  13. msfabricpysdkcore/tests/test_deployment_pipeline.py +0 -63
  14. msfabricpysdkcore/tests/test_deployment_pipelinev2.py +0 -135
  15. msfabricpysdkcore/tests/test_domains.py +0 -126
  16. msfabricpysdkcore/tests/test_environments.py +0 -114
  17. msfabricpysdkcore/tests/test_evenhouses.py +0 -56
  18. msfabricpysdkcore/tests/test_evenstreams.py +0 -52
  19. msfabricpysdkcore/tests/test_eventstream_topology.py +0 -82
  20. msfabricpysdkcore/tests/test_external_data_shares.py +0 -51
  21. msfabricpysdkcore/tests/test_fabric_azure_client.py +0 -80
  22. msfabricpysdkcore/tests/test_folders.py +0 -53
  23. msfabricpysdkcore/tests/test_gateways.py +0 -99
  24. msfabricpysdkcore/tests/test_git.py +0 -66
  25. msfabricpysdkcore/tests/test_graphqlapi.py +0 -44
  26. msfabricpysdkcore/tests/test_items.py +0 -97
  27. msfabricpysdkcore/tests/test_jobs.py +0 -96
  28. msfabricpysdkcore/tests/test_kql_dashboards.py +0 -63
  29. msfabricpysdkcore/tests/test_kql_queryset.py +0 -64
  30. msfabricpysdkcore/tests/test_kqldatabases.py +0 -56
  31. msfabricpysdkcore/tests/test_lakehouse.py +0 -93
  32. msfabricpysdkcore/tests/test_managed_private_endpoints.py +0 -61
  33. msfabricpysdkcore/tests/test_mirroreddatabases.py +0 -80
  34. msfabricpysdkcore/tests/test_ml_experiments.py +0 -47
  35. msfabricpysdkcore/tests/test_ml_models.py +0 -47
  36. msfabricpysdkcore/tests/test_mounted_adf.py +0 -64
  37. msfabricpysdkcore/tests/test_notebooks.py +0 -57
  38. msfabricpysdkcore/tests/test_one_lake_data_access_security.py +0 -63
  39. msfabricpysdkcore/tests/test_other_items.py +0 -45
  40. msfabricpysdkcore/tests/test_reflex.py +0 -57
  41. msfabricpysdkcore/tests/test_reports.py +0 -56
  42. msfabricpysdkcore/tests/test_semantic_model.py +0 -56
  43. msfabricpysdkcore/tests/test_shortcuts.py +0 -60
  44. msfabricpysdkcore/tests/test_spark.py +0 -91
  45. msfabricpysdkcore/tests/test_sparkjobdefinition.py +0 -55
  46. msfabricpysdkcore/tests/test_sqldatabases.py +0 -45
  47. msfabricpysdkcore/tests/test_tags.py +0 -28
  48. msfabricpysdkcore/tests/test_variable_libary.py +0 -61
  49. msfabricpysdkcore/tests/test_warehouses.py +0 -50
  50. msfabricpysdkcore/tests/test_workspaces_capacities.py +0 -159
  51. msfabricpysdkcore-0.2.6.dist-info/RECORD +0 -75
  52. {msfabricpysdkcore-0.2.6.dist-info → msfabricpysdkcore-0.2.7.dist-info}/WHEEL +0 -0
  53. {msfabricpysdkcore-0.2.6.dist-info → msfabricpysdkcore-0.2.7.dist-info}/licenses/LICENSE +0 -0
  54. {msfabricpysdkcore-0.2.6.dist-info → msfabricpysdkcore-0.2.7.dist-info}/top_level.txt +0 -0
@@ -1,114 +0,0 @@
1
- import unittest
2
- from datetime import datetime
3
- from dotenv import load_dotenv
4
- from time import sleep
5
- from msfabricpysdkcore.coreapi import FabricClientCore
6
-
7
- load_dotenv()
8
-
9
- class TestFabricClientCore(unittest.TestCase):
10
-
11
- def __init__(self, *args, **kwargs):
12
- super(TestFabricClientCore, self).__init__(*args, **kwargs)
13
- self.fc = FabricClientCore()
14
-
15
- def test_environments_crudl(self):
16
- fc = self.fc
17
- workspace_id = '63aa9e13-4912-4abe-9156-8a56e565b7a3'
18
- datetime_str = datetime.now().strftime("%Y%m%d%H%M%S")
19
-
20
- env_name = "env" + datetime_str
21
- environment1 = fc.create_environment(workspace_id, display_name=env_name)
22
- self.assertEqual(environment1.display_name, env_name)
23
-
24
- environments = fc.list_environments(workspace_id)
25
- environment_names = [env.display_name for env in environments]
26
- self.assertGreater(len(environments), 0)
27
- self.assertIn(env_name, environment_names)
28
-
29
- env = fc.get_environment(workspace_id, environment_name=env_name)
30
- self.assertIsNotNone(env.id)
31
- self.assertEqual(env.display_name, env_name)
32
- new_name = env_name + "2"
33
- env2 = fc.update_environment(workspace_id, env.id, display_name=new_name, return_item=True)
34
-
35
- env = fc.get_environment(workspace_id, environment_id=env.id)
36
- self.assertEqual(env.display_name, new_name)
37
- self.assertEqual(env.id, env2.id)
38
-
39
- status_code = fc.delete_environment(workspace_id, env.id)
40
- self.assertEqual(status_code, 200)
41
-
42
- def test_environment_details(self):
43
- fc = FabricClientCore()
44
- workspace_id = '63aa9e13-4912-4abe-9156-8a56e565b7a3'
45
- environment_id = '5648be67-28fa-48b6-9d1f-3c87c3704d3c'
46
- published_settings = fc.get_published_settings(workspace_id=workspace_id, environment_id=environment_id)
47
- self.assertIsNotNone(published_settings)
48
- self.assertIn("instancePool", published_settings)
49
- self.assertIn("dynamicExecutorAllocation", published_settings)
50
- staging_settings = fc.get_staging_settings(workspace_id=workspace_id, environment_id=environment_id)
51
- self.assertIsNotNone(staging_settings)
52
- self.assertIn("instancePool", staging_settings)
53
- self.assertIn("dynamicExecutorAllocation", staging_settings)
54
- if staging_settings["driverCores"] == 8:
55
- driver_cores = 4
56
- else:
57
- driver_cores = 8
58
- updated_settings = fc.update_staging_settings(workspace_id=workspace_id, environment_id=environment_id, driver_cores=driver_cores)
59
- self.assertIn("instancePool", updated_settings)
60
- self.assertIn("dynamicExecutorAllocation", updated_settings)
61
- self.assertEqual(updated_settings["driverCores"], driver_cores)
62
- updated_settings = fc.get_staging_settings(workspace_id=workspace_id, environment_id=environment_id)
63
- self.assertIn("instancePool", updated_settings)
64
- self.assertIn("dynamicExecutorAllocation", updated_settings)
65
- self.assertEqual(updated_settings["driverCores"], driver_cores)
66
-
67
-
68
- def test_environment_spark_libraries(self):
69
- fc = self.fc
70
- workspace_id = '63aa9e13-4912-4abe-9156-8a56e565b7a3'
71
- environment_id = '5648be67-28fa-48b6-9d1f-3c87c3704d3c'
72
-
73
- resp = fc.get_published_libraries(workspace_id, environment_id)
74
- self.assertIn('customLibraries', resp)
75
- self.assertIn('wheelFiles', resp['customLibraries'])
76
- self.assertIn('msfabricpysdkcore-0.1.1-py3-none-any.whl', resp['customLibraries']['wheelFiles'])
77
-
78
- resp = fc.upload_staging_library(workspace_id, environment_id, 'dummy.whl')
79
- self.assertEqual(resp.status_code, 200)
80
-
81
- resp = fc.get_staging_libraries(workspace_id, environment_id)
82
-
83
- self.assertIn('customLibraries', resp)
84
- self.assertIn('wheelFiles', resp['customLibraries'])
85
- self.assertIn('dummy.whl', resp['customLibraries']['wheelFiles'])
86
- self.assertIn('staging.whl', resp['customLibraries']['wheelFiles'])
87
-
88
-
89
- resp = fc.publish_environment(workspace_id, environment_id)
90
- self.assertIn('publishDetails', resp)
91
- self.assertIn('state', resp['publishDetails'])
92
- self.assertEqual(resp['publishDetails']['state'].lower(), 'running')
93
-
94
-
95
- resp = fc.cancel_publish(workspace_id, environment_id)
96
- self.assertIn('publishDetails', resp)
97
- self.assertIn('state', resp['publishDetails'])
98
- self.assertEqual(resp['publishDetails']['state'].lower(), 'cancelled')
99
-
100
- resp = fc.delete_staging_library(workspace_id, environment_id, 'dummy.whl')
101
- self.assertEqual(resp.status_code, 200)
102
-
103
- resp = fc.get_staging_libraries(workspace_id, environment_id)
104
-
105
- self.assertIn('customLibraries', resp)
106
- self.assertIn('wheelFiles', resp['customLibraries'])
107
- self.assertNotIn('dummy.whl', resp['customLibraries']['wheelFiles'])
108
- self.assertIn('staging.whl', resp['customLibraries']['wheelFiles'])
109
-
110
-
111
-
112
-
113
-
114
-
@@ -1,56 +0,0 @@
1
- import unittest
2
- from datetime import datetime
3
- from dotenv import load_dotenv
4
- from time import sleep
5
- from msfabricpysdkcore.coreapi import FabricClientCore
6
-
7
- load_dotenv()
8
-
9
- class TestFabricClientCore(unittest.TestCase):
10
-
11
- def __init__(self, *args, **kwargs):
12
- super(TestFabricClientCore, self).__init__(*args, **kwargs)
13
- #load_dotenv()
14
- self.fc = FabricClientCore()
15
-
16
- datetime_str = datetime.now().strftime("%Y%m%d%H%M%S")
17
- self.item_name = "testitem" + datetime_str
18
- self.item_type = "Notebook"
19
-
20
-
21
-
22
- def test_eventhouses(self):
23
-
24
- fc = self.fc
25
- workspace_id = '63aa9e13-4912-4abe-9156-8a56e565b7a3'
26
- datetime_str = datetime.now().strftime("%Y%m%d%H%M%S")
27
- eventhouse_name = "evh" + datetime_str
28
- eventhouse1 = fc.create_eventhouse(workspace_id, display_name=eventhouse_name)
29
- self.assertEqual(eventhouse1.display_name, eventhouse_name)
30
-
31
- eventhouses = fc.list_eventhouses(workspace_id)
32
- eventhouse_names = [eh.display_name for eh in eventhouses]
33
- self.assertGreater(len(eventhouses), 0)
34
- self.assertIn(eventhouse_name, eventhouse_names)
35
-
36
- eh = fc.get_eventhouse(workspace_id, eventhouse_name=eventhouse_name)
37
- self.assertIsNotNone(eh.id)
38
- self.assertEqual(eh.display_name, eventhouse_name)
39
- new_display_name = eventhouse_name + "2"
40
- eh2 = fc.update_eventhouse(workspace_id, eh.id, display_name=new_display_name, return_item=True)
41
-
42
- definition = fc.get_eventhouse_definition(workspace_id, eventhouse_id=eh.id)
43
-
44
- self.assertIn("definition", definition)
45
- self.assertIn("parts", definition["definition"])
46
- self.assertGreaterEqual(len(definition["definition"]["parts"]), 2)
47
-
48
- response = fc.update_eventhouse_definition(workspace_id, eventhouse_id=eh.id, definition=definition["definition"])
49
- self.assertIn(response.status_code, [200, 202])
50
-
51
- eh = fc.get_eventhouse(workspace_id, eventhouse_id=eh.id)
52
- self.assertEqual(eh.display_name, new_display_name)
53
- self.assertEqual(eh.id, eh2.id)
54
-
55
- status_code = fc.delete_eventhouse(workspace_id, eh.id)
56
- self.assertEqual(status_code, 200)
@@ -1,52 +0,0 @@
1
- import unittest
2
- from datetime import datetime
3
- from dotenv import load_dotenv
4
- from time import sleep
5
- from msfabricpysdkcore.coreapi import FabricClientCore
6
-
7
- load_dotenv()
8
-
9
- class TestFabricClientCore(unittest.TestCase):
10
-
11
- def __init__(self, *args, **kwargs):
12
- super(TestFabricClientCore, self).__init__(*args, **kwargs)
13
- #load_dotenv()
14
- self.fc = FabricClientCore()
15
-
16
- def test_eventstreams(self):
17
-
18
- fc = self.fc
19
- workspace_id = '63aa9e13-4912-4abe-9156-8a56e565b7a3'
20
-
21
- datetime_str = datetime.now().strftime("%Y%m%d%H%M%S")
22
- es_name = "es" + datetime_str
23
-
24
- eventstream = fc.create_eventstream(workspace_id, display_name=es_name)
25
- self.assertEqual(eventstream.display_name, es_name)
26
-
27
- eventstreams = fc.list_eventstreams(workspace_id)
28
- eventstream_names = [es.display_name for es in eventstreams]
29
- self.assertGreater(len(eventstreams), 0)
30
- self.assertIn(es_name, eventstream_names)
31
-
32
-
33
- es = fc.get_eventstream(workspace_id, eventstream_name=es_name)
34
- self.assertIsNotNone(es.id)
35
- self.assertEqual(es.display_name, es_name)
36
-
37
- es2 = fc.update_eventstream(workspace_id, es.id, display_name=f"{es_name}2", return_item=True)
38
-
39
- es = fc.get_eventstream(workspace_id, eventstream_id=es.id)
40
- self.assertEqual(es.display_name, f"{es_name}2")
41
- self.assertEqual(es.id, es2.id)
42
-
43
- response = fc.update_eventstream_definition(workspace_id, eventstream_id=es.id, definition=es.definition)
44
- self.assertIn(response.status_code, [200, 202])
45
-
46
- definition = fc.get_eventstream_definition(workspace_id, eventstream_id=es.id)
47
- self.assertIn("definition", definition)
48
- self.assertIn("parts", definition["definition"])
49
- self.assertGreaterEqual(len(definition["definition"]["parts"]), 3)
50
-
51
- status_code = fc.delete_eventstream(workspace_id, es.id)
52
- self.assertEqual(status_code, 200)
@@ -1,82 +0,0 @@
1
-
2
- # import unittest
3
- # from dotenv import load_dotenv
4
- # from msfabricpysdkcore import FabricClientCore
5
- # from datetime import datetime
6
- # from time import sleep
7
- # load_dotenv()
8
-
9
- # class TestFabricClientCore(unittest.TestCase):
10
-
11
- # def __init__(self, *args, **kwargs):
12
- # super(TestFabricClientCore, self).__init__(*args, **kwargs)
13
-
14
- # def test_eventstream_topology(self):
15
-
16
- # fcc = FabricClientCore()
17
-
18
- # workspace_id = "05bc5baa-ef02-4a31-ab20-158a478151d3"
19
-
20
- # item_id = "94f4b54b-980b-43f9-8b67-ded8028cf1b9"
21
- # custom_destination_id = "acd90d61-2792-4494-9f17-c822f2fb984d"
22
- # custom_source_id = "9f382928-7d42-43f9-b02b-1b1352ad3ecd"
23
- # source_id = "e58db369-e473-40f4-bedd-022b60540b17"
24
- # destination_id = "2446e6cf-98c9-45cb-a102-78d2ca3eb257"
25
-
26
-
27
- # topology = fcc.get_eventstream_topology(workspace_id, item_id)
28
- # self.assertIsNotNone(topology)
29
- # self.assertIn("sources", topology)
30
- # self.assertIn("destinations", topology)
31
-
32
- # destination = fcc.get_eventstream_destination(workspace_id, item_id, destination_id)
33
- # self.assertIsNotNone(destination)
34
- # self.assertEqual(destination["id"], destination_id)
35
-
36
- # destination_conn = fcc.get_eventstream_destination_connection(workspace_id, item_id, custom_destination_id)
37
- # self.assertIsNotNone(destination_conn)
38
- # self.assertIn("fullyQualifiedNamespace", destination_conn)
39
-
40
- # source = fcc.get_eventstream_source(workspace_id, item_id, source_id)
41
- # self.assertIsNotNone(source)
42
- # self.assertEqual(source["id"], source_id)
43
-
44
- # source_conn = fcc.get_eventstream_source_connection(workspace_id, item_id, custom_source_id)
45
- # self.assertIsNotNone(source_conn)
46
- # self.assertIn("fullyQualifiedNamespace", source_conn)
47
-
48
- # resp = fcc.pause_eventstream(workspace_id, item_id)
49
- # self.assertEqual(resp, 200)
50
-
51
- # def resume():
52
- # resp = fcc.resume_eventstream(workspace_id, item_id, start_type="Now")
53
- # self.assertEqual(resp, 200)
54
-
55
- # for _ in range(12):
56
- # try:
57
- # resume()
58
- # break
59
- # except Exception as e:
60
- # sleep(5)
61
-
62
- # resp = fcc.pause_eventstream_source(workspace_id, item_id, source_id)
63
- # self.assertEqual(resp, 200)
64
-
65
- # resp = fcc.pause_eventstream_destination(workspace_id, item_id, destination_id)
66
- # self.assertEqual(resp, 200)
67
-
68
- # resp = fcc.resume_eventstream_source(workspace_id, item_id, source_id, start_type="Now")
69
- # self.assertEqual(resp, 200)
70
-
71
- # def resume():
72
- # resp = fcc.resume_eventstream_destination(workspace_id, item_id, destination_id, start_type="Now")
73
- # self.assertEqual(resp, 200)
74
-
75
- # for _ in range(12):
76
- # try:
77
- # resume()
78
- # break
79
- # except Exception as e:
80
- # sleep(5)
81
-
82
-
@@ -1,51 +0,0 @@
1
- import unittest
2
- from dotenv import load_dotenv
3
- from msfabricpysdkcore.coreapi import FabricClientCore
4
-
5
- load_dotenv()
6
-
7
- class TestFabricClientCore(unittest.TestCase):
8
-
9
- def __init__(self, *args, **kwargs):
10
- super(TestFabricClientCore, self).__init__(*args, **kwargs)
11
- self.fc = FabricClientCore()
12
-
13
- def test_external_data_shares(self):
14
-
15
- fc = self.fc
16
-
17
- workspace_id = '63aa9e13-4912-4abe-9156-8a56e565b7a3'
18
- item_id = "148ef579-4a5d-4048-8a48-0a703c5e3a1a"
19
-
20
- recipient = {
21
- "userPrincipalName": "lisa4@fabrikam.com"
22
- }
23
- paths=["Files/to_share"]
24
-
25
- resp = fc.create_external_data_share(workspace_id, item_id, paths, recipient)
26
- self.assertIsNotNone(resp)
27
- self.assertIn('id', resp)
28
-
29
-
30
- get = fc.get_external_data_share(workspace_id, item_id, resp['id'])
31
- self.assertIsNotNone(get)
32
- self.assertEqual(get['id'], resp['id'])
33
-
34
-
35
- resp = fc.list_external_data_shares_in_item(workspace_id, item_id)
36
- self.assertGreater(len(resp), 0)
37
-
38
- data_share_ids = [ds['id'] for ds in resp]
39
- self.assertIn(get['id'], data_share_ids)
40
-
41
-
42
- resp = fc.revoke_external_data_share(workspace_id, item_id, get['id'])
43
- self.assertEqual(resp, 200)
44
-
45
- get2 = fc.get_external_data_share(workspace_id, item_id, get['id'])
46
- self.assertIsNotNone(get2)
47
-
48
- self.assertEqual(get['id'], get2['id'])
49
- self.assertEqual(get2['status'], 'Revoked')
50
-
51
-
@@ -1,80 +0,0 @@
1
- import unittest
2
- from dotenv import load_dotenv
3
- from datetime import datetime
4
- from time import sleep
5
- from msfabricpysdkcore import FabricAzureClient
6
-
7
- load_dotenv()
8
-
9
-
10
- class TestFabricClientCore(unittest.TestCase):
11
-
12
- def __init__(self, *args, **kwargs):
13
- super(TestFabricClientCore, self).__init__(*args, **kwargs)
14
- #load_dotenv()
15
- self.fac = FabricAzureClient()
16
-
17
- def test_azure_capacity(self):
18
-
19
- fac = self.fac
20
-
21
- subscription_id = "c77cc8fc-43bb-4d44-bdc5-6e20511ed2a8"
22
- resource_group_name = "fabricdemo"
23
- capacity_name = "westeuropeajrederer"
24
- capacity_name_new = "westeuropeajrederer" + datetime.now().strftime("%Y%m%d%H%M%S")
25
-
26
- resp = fac.check_name_availability(subscription_id, "westeurope", capacity_name_new)
27
- self.assertIn('nameAvailable', resp)
28
- self.assertEqual(resp['nameAvailable'], True)
29
-
30
- resp = fac.create_or_update_capacity(subscription_id, resource_group_name, capacity_name_new,
31
- location="westeurope",
32
- properties_administration={"members": ['admin@MngEnvMCAP065039.onmicrosoft.com']},
33
- sku = "F2")
34
- self.assertIsNotNone(resp.name)
35
- self.assertEqual(resp.name, capacity_name_new)
36
-
37
- resp = fac.get_capacity(subscription_id, resource_group_name, capacity_name_new)
38
- self.assertIsNotNone(resp.name)
39
- self.assertEqual(resp.name, capacity_name_new)
40
-
41
- sku = resp.sku['name']
42
-
43
- sleep(60)
44
-
45
- resp = fac.delete_capacity(subscription_id, resource_group_name, capacity_name_new)
46
- self.assertEqual(resp.status_code, 202)
47
-
48
-
49
- resp = fac.list_by_resource_group(subscription_id, resource_group_name)
50
- cap_names = [cap["name"] for cap in resp]
51
- self.assertIn(capacity_name, cap_names)
52
-
53
-
54
-
55
- resp = fac.list_by_subscription(subscription_id)
56
- cap_names = [cap["name"] for cap in resp]
57
- self.assertIn(capacity_name, cap_names)
58
-
59
-
60
- resp = fac.list_skus(subscription_id)
61
- self.assertGreater(len(resp), 0, msg=f"No SKUs found: {resp}")
62
-
63
-
64
- resp = fac.list_skus_for_capacity(subscription_id, resource_group_name, capacity_name)
65
- self.assertGreater(len(resp), 0, msg=f"No SKUs found: {resp}")
66
-
67
- resp = fac.resume_capacity(subscription_id, resource_group_name, capacity_name)
68
- self.assertEqual(resp.status_code, 202)
69
-
70
- sleep(60)
71
- resp = fac.suspend_capacity(subscription_id, resource_group_name, capacity_name)
72
- self.assertEqual(resp.status_code, 202)
73
- sleep(60)
74
-
75
- if sku != "F4":
76
- resp = fac.update_capacity(subscription_id, resource_group_name, capacity_name, sku="F4")
77
- self.assertEqual(resp.sku["name"], "F4")
78
- else:
79
- resp = fac.update_capacity(subscription_id, resource_group_name, capacity_name, sku="F2")
80
- self.assertEqual(resp.sku["name"], "F2")
@@ -1,53 +0,0 @@
1
- import unittest
2
- from dotenv import load_dotenv
3
- from msfabricpysdkcore import FabricClientCore
4
-
5
- load_dotenv()
6
-
7
- class TestFabricClientCore(unittest.TestCase):
8
-
9
- def __init__(self, *args, **kwargs):
10
- super(TestFabricClientCore, self).__init__(*args, **kwargs)
11
- self.fcc = FabricClientCore()
12
-
13
- def test_folders(self):
14
- fcc = self.fcc
15
-
16
- workspace_id = "05bc5baa-ef02-4a31-ab20-158a478151d3"
17
- folder_id = "d4f3a9fb-6975-4f5c-9c6b-ca205280966f"
18
-
19
- folder = fcc.create_folder(workspace_id=workspace_id, display_name="sdk_sub_folder", parent_folder_id=folder_id)
20
- self.assertIsNotNone(folder)
21
- self.assertEqual(folder.display_name, "sdk_sub_folder")
22
-
23
- folder_ = fcc.get_folder(workspace_id=workspace_id, folder_id=folder.id)
24
- self.assertEqual(folder.id, folder_.id)
25
-
26
- folders = fcc.list_folders(workspace_id=workspace_id)
27
- folders = [folder for folder in folders if folder.display_name == "sdk_sub_folder"]
28
- self.assertGreater(len(folders), 0)
29
-
30
- folder = fcc.update_folder(workspace_id=workspace_id, folder_id=folder.id, display_name="sdk_sub_folder_updated")
31
- self.assertEqual(folder.display_name, "sdk_sub_folder_updated")
32
-
33
- folder = fcc.move_folder(workspace_id=workspace_id, folder_id=folder.id)
34
- self.assertEqual(folder.display_name, "sdk_sub_folder_updated")
35
- self.assertEqual(folder.parent_folder_id, "")
36
-
37
- folders = fcc.list_folders(workspace_id=workspace_id)
38
-
39
- for f in folders:
40
- if f.display_name != "sdk_folder":
41
- f.delete()
42
-
43
- folders = fcc.list_folders(workspace_id=workspace_id)
44
- self.assertEqual(len(folders), 1)
45
-
46
-
47
-
48
-
49
-
50
-
51
-
52
-
53
-
@@ -1,99 +0,0 @@
1
- import unittest
2
- from datetime import datetime
3
- from dotenv import load_dotenv
4
- from time import sleep
5
- from msfabricpysdkcore.coreapi import FabricClientCore
6
-
7
- load_dotenv()
8
-
9
- class TestFabricClientCore(unittest.TestCase):
10
-
11
- def __init__(self, *args, **kwargs):
12
- super(TestFabricClientCore, self).__init__(*args, **kwargs)
13
- #load_dotenv()
14
- self.fc = FabricClientCore()
15
-
16
- def test_gateways(self):
17
-
18
- fc = self.fc
19
-
20
- gateways = fc.list_gateways()
21
-
22
- for gw in gateways:
23
- if "publicKey" not in gw:
24
- fc.delete_gateway(gw['id'])
25
- if "publicKey" in gw:
26
- gw_id = gw['id']
27
-
28
- datetime_str = datetime.now().strftime("%Y-%m-%d-%H-%M-%S")
29
- display_name = 'fabricvnet-' + datetime_str
30
- gwr = {'displayName': display_name,
31
- 'capacityId': '339c785f-4489-46ae-a649-e049e7610479',
32
- 'virtualNetworkAzureResource': {'virtualNetworkName': 'fabricvnet',
33
- 'subnetName': 'default3',
34
- 'resourceGroupName': 'fabricdemo',
35
- 'subscriptionId': 'c77cc8fc-43bb-4d44-bdc5-6e20511ed2a8'},
36
- 'inactivityMinutesBeforeSleep': 30,
37
- 'numberOfMemberGateways': 2,
38
- 'type': 'VirtualNetwork'}
39
-
40
- gw = fc.create_gateway(gwr)
41
- self.assertEqual(gw['displayName'], gwr['displayName'])
42
-
43
- gateways = fc.list_gateways()
44
- self.assertEqual(len(gateways), 2)
45
-
46
- gateways = [g for g in gateways if g['displayName'] == display_name]
47
- gw = gateways[0]
48
-
49
- ras = fc.list_gateway_role_assignments(gw['id'])
50
- self.assertEqual(len(ras), 1)
51
-
52
- principal = {"id" : "755f273c-98f8-408c-a886-691794938bd8",
53
- "type" : "ServicePrincipal"}
54
-
55
- new_ras = fc.add_gateway_role_assignment(gw['id'], principal, 'ConnectionCreator')
56
- self.assertIn("id", new_ras)
57
- self.assertEqual(2, len(fc.list_gateway_role_assignments(gw['id'])))
58
-
59
- new_ras = fc.update_gateway_role_assignment(gw['id'], new_ras['id'], 'Admin')
60
- self.assertEqual('Admin', new_ras['role'])
61
-
62
- new_ras_ = fc.get_gateway_role_assignment(gw['id'], new_ras['id'])
63
- self.assertEqual('Admin', new_ras_['role'])
64
- self.assertEqual(new_ras['id'], new_ras_['id'])
65
-
66
- resp_code = fc.delete_gateway_role_assignment(gw['id'], new_ras['id'])
67
- self.assertEqual(200, resp_code)
68
- self.assertEqual(1, len(fc.list_gateway_role_assignments(gw['id'])))
69
-
70
-
71
-
72
- gw_members = fc.list_gateway_members(gw_id)
73
- self.assertGreater(len(gw_members), 0)
74
- self.assertIn('id', gw_members[0])
75
- self.assertIn('displayName', gw_members[0])
76
-
77
- display_name_member = "surface_desktop" + datetime_str
78
-
79
- gw_member = fc.update_gateway_member(gateway_id = gw_id, gateway_member_id = gw_id, display_name=display_name_member, enabled=True)
80
- self.assertEqual(display_name_member, gw_member['displayName'])
81
-
82
- gw_ = fc.get_gateway(gw["id"])
83
- self.assertEqual(display_name, gw_['displayName'])
84
-
85
- gwr = {
86
- "type": "OnPremises",
87
- "displayName": display_name,
88
- "loadBalancingSetting": "Failover",
89
- "allowCloudConnectionRefresh": False,
90
- "allowCustomConnectors": False
91
- }
92
-
93
- gw_ = fc.update_gateway(gw_id, gwr)
94
- self.assertEqual(display_name, gw_['displayName'])
95
-
96
- resp_code = fc.delete_gateway(gw["id"])
97
- self.assertEqual(200, resp_code)
98
-
99
- self.assertEqual(len(fc.list_gateways()), 1)
@@ -1,66 +0,0 @@
1
- import unittest
2
- from msfabricpysdkcore.coreapi import FabricClientCore
3
- from datetime import datetime
4
- from dotenv import load_dotenv
5
-
6
- load_dotenv()
7
-
8
- class TestFabricClientCore(unittest.TestCase):
9
-
10
- def __init__(self, *args, **kwargs):
11
- super(TestFabricClientCore, self).__init__(*args, **kwargs)
12
- #load_dotenv()
13
- self.fc = FabricClientCore()
14
-
15
- def test_git(self):
16
-
17
- datetime_str = datetime.now().strftime("%Y%m%d%H%M%S")
18
- ws2_name = "git" + datetime_str
19
- self.fc.create_workspace(display_name=ws2_name)
20
- ws2 = self.fc.get_workspace_by_name(name=ws2_name)
21
- self.fc.assign_to_capacity(workspace_id=ws2.id, capacity_id="840a6c1e-5289-4094-bbc8-716daabaeeba")
22
-
23
- git_provider_details = {'organizationName': 'MngEnvMCAP065039',
24
- 'projectName': 'fabricdevops',
25
- 'gitProviderType': 'AzureDevOps',
26
- 'repositoryName': 'fabricdevops',
27
- 'branchName': 'main',
28
- 'directoryName': '/sdkdemoRTI'}
29
-
30
- status_code = self.fc.git_connect(workspace_id=ws2.id, git_provider_details=git_provider_details)
31
-
32
- self.assertEqual(status_code, 200)
33
-
34
- initialization_strategy = "PreferWorkspace"
35
-
36
- status_code = self.fc.git_initialize_connection(workspace_id=ws2.id, initialization_strategy=initialization_strategy)
37
- self.assertEqual(status_code, 200)
38
-
39
- connection_details = self.fc.git_get_connection(workspace_id=ws2.id)
40
- self.assertEqual(connection_details['gitConnectionState'], 'ConnectedAndInitialized')
41
-
42
- status = self.fc.git_get_status(workspace_id=ws2.id)
43
- self.assertTrue(len(status["changes"]) > 0)
44
-
45
- git_credentials = self.fc.get_my_git_credentials('e624ffea-990e-482c-b27c-4ed5adae73c6')
46
- self.assertTrue(git_credentials["source"] == "Automatic")
47
-
48
- status_code = self.fc.update_from_git(workspace_id=ws2.id, remote_commit_hash=status["remoteCommitHash"])
49
-
50
- self.assertEqual(status_code, 202)
51
-
52
- blubb_lakehouse = False
53
- for item in ws2.list_items():
54
- if item.type == "Lakehouse" and item.display_name == "blubb":
55
- blubb_lakehouse = True
56
-
57
- self.assertTrue(blubb_lakehouse)
58
-
59
- status_code = self.fc.git_disconnect(workspace_id=ws2.id)
60
-
61
- self.assertEqual(status_code, 200)
62
-
63
- ws2.delete()
64
-
65
- if __name__ == "__main__":
66
- unittest.main()