msfabricpysdkcore 0.0.9__py3-none-any.whl → 0.0.11__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.
- msfabricpysdkcore/admin_item.py +7 -0
- msfabricpysdkcore/admin_workspace.py +20 -1
- msfabricpysdkcore/adminapi.py +133 -7
- msfabricpysdkcore/auth.py +9 -6
- msfabricpysdkcore/client.py +5 -4
- msfabricpysdkcore/coreapi.py +341 -17
- msfabricpysdkcore/deployment_pipeline.py +240 -0
- msfabricpysdkcore/environment.py +209 -0
- msfabricpysdkcore/item.py +12 -11
- msfabricpysdkcore/lakehouse.py +42 -1
- msfabricpysdkcore/long_running_operation.py +2 -6
- msfabricpysdkcore/otheritems.py +122 -3
- msfabricpysdkcore/spark_custom_pool.py +118 -0
- msfabricpysdkcore/tests/test_admin_apis.py +20 -9
- msfabricpysdkcore/tests/test_datapipelines.py +48 -0
- msfabricpysdkcore/tests/test_deployment_pipeline.py +64 -0
- msfabricpysdkcore/tests/test_domains.py +3 -2
- msfabricpysdkcore/tests/test_environments.py +65 -0
- msfabricpysdkcore/tests/test_evenstreams.py +44 -0
- msfabricpysdkcore/tests/test_git.py +3 -1
- msfabricpysdkcore/tests/test_items_incl_lakehouse.py +81 -109
- msfabricpysdkcore/tests/test_jobs.py +4 -0
- msfabricpysdkcore/tests/test_kqldatabases.py +48 -0
- msfabricpysdkcore/tests/test_shortcuts.py +3 -1
- msfabricpysdkcore/tests/test_spark.py +91 -0
- msfabricpysdkcore/tests/test_workspaces_capacities.py +6 -5
- msfabricpysdkcore/workspace.py +358 -32
- {msfabricpysdkcore-0.0.9.dist-info → msfabricpysdkcore-0.0.11.dist-info}/METADATA +82 -32
- msfabricpysdkcore-0.0.11.dist-info/RECORD +38 -0
- msfabricpysdkcore-0.0.9.dist-info/RECORD +0 -29
- {msfabricpysdkcore-0.0.9.dist-info → msfabricpysdkcore-0.0.11.dist-info}/LICENSE +0 -0
- {msfabricpysdkcore-0.0.9.dist-info → msfabricpysdkcore-0.0.11.dist-info}/WHEEL +0 -0
- {msfabricpysdkcore-0.0.9.dist-info → msfabricpysdkcore-0.0.11.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,48 @@
|
|
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_kql_database(self):
|
17
|
+
|
18
|
+
fc = self.fc
|
19
|
+
workspace_id = 'd8a5abe0-9eed-406d-ab46-343bc57ddbe5'
|
20
|
+
evenhouse_id = "14822d45-5460-4efa-9b30-8628510a9197"
|
21
|
+
|
22
|
+
creation_payload = {"databaseType" : "ReadWrite",
|
23
|
+
"parentEventhouseItemId" : evenhouse_id}
|
24
|
+
|
25
|
+
datetime_str = datetime.now().strftime("%Y%m%d%H%M%S")
|
26
|
+
kqldb_name = "kql" + datetime_str
|
27
|
+
kqldb = fc.create_kql_database(workspace_id = workspace_id, display_name=kqldb_name,
|
28
|
+
creation_payload=creation_payload)
|
29
|
+
self.assertEqual(kqldb.display_name, kqldb_name)
|
30
|
+
|
31
|
+
kql_databases = fc.list_kql_databases(workspace_id)
|
32
|
+
kql_database_names = [kqldb.display_name for kqldb in kql_databases]
|
33
|
+
self.assertGreater(len(kql_databases), 0)
|
34
|
+
self.assertIn(kqldb_name, kql_database_names)
|
35
|
+
|
36
|
+
kqldb = fc.get_kql_database(workspace_id, kql_database_name=kqldb_name)
|
37
|
+
self.assertIsNotNone(kqldb.id)
|
38
|
+
self.assertEqual(kqldb.display_name, kqldb_name)
|
39
|
+
|
40
|
+
new_name = kqldb_name+"2"
|
41
|
+
kqldb2 = fc.update_kql_database(workspace_id, kqldb.id, display_name=new_name)
|
42
|
+
|
43
|
+
kqldb = fc.get_kql_database(workspace_id, kql_database_id=kqldb.id)
|
44
|
+
self.assertEqual(kqldb.display_name, new_name)
|
45
|
+
self.assertEqual(kqldb.id, kqldb2.id)
|
46
|
+
|
47
|
+
status_code = fc.delete_kql_database(workspace_id, kqldb.id)
|
48
|
+
self.assertEqual(status_code, 200)
|
@@ -0,0 +1,91 @@
|
|
1
|
+
import unittest
|
2
|
+
from msfabricpysdkcore.coreapi import FabricClientCore
|
3
|
+
from dotenv import load_dotenv
|
4
|
+
|
5
|
+
load_dotenv()
|
6
|
+
|
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
|
+
ws = self.fc.get_workspace_by_name(name="testitems")
|
15
|
+
self.workspace_id = ws.id
|
16
|
+
|
17
|
+
|
18
|
+
def test_spark_workspace_custom_pools(self):
|
19
|
+
fc = self.fc
|
20
|
+
workspace_id = self.workspace_id
|
21
|
+
|
22
|
+
# List
|
23
|
+
|
24
|
+
pools = fc.list_workspace_custom_pools(workspace_id=workspace_id)
|
25
|
+
self.assertGreater(len(pools), 0)
|
26
|
+
|
27
|
+
pools = fc.list_workspace_custom_pools(workspace_id=workspace_id)
|
28
|
+
|
29
|
+
self.assertIn("pool1", [p.name for p in pools])
|
30
|
+
pool1 = [p for p in pools if p.name == "pool1"][0]
|
31
|
+
|
32
|
+
# Get
|
33
|
+
|
34
|
+
pool1_clone = fc.get_workspace_custom_pool(workspace_id=workspace_id, pool_id=pool1.id)
|
35
|
+
self.assertEqual(pool1_clone.id, pool1.id)
|
36
|
+
# Create
|
37
|
+
|
38
|
+
pool2 = fc.create_workspace_custom_pool(workspace_id=workspace_id,
|
39
|
+
name="pool2",
|
40
|
+
node_family="MemoryOptimized",
|
41
|
+
node_size="Small",
|
42
|
+
auto_scale = {"enabled": True, "minNodeCount": 1, "maxNodeCount": 2},
|
43
|
+
dynamic_executor_allocation = {"enabled": True, "minExecutors": 1, "maxExecutors": 1})
|
44
|
+
|
45
|
+
self.assertEqual(pool2.name, "pool2")
|
46
|
+
self.assertEqual(pool2.node_family, "MemoryOptimized")
|
47
|
+
|
48
|
+
# Update
|
49
|
+
|
50
|
+
pool2 = fc.update_workspace_custom_pool(workspace_id=workspace_id, pool_id=pool2.id,
|
51
|
+
auto_scale = {"enabled": True, "minNodeCount": 1, "maxNodeCount": 7})
|
52
|
+
|
53
|
+
self.assertEqual(pool2.auto_scale["maxNodeCount"], 7)
|
54
|
+
pool2_clone = fc.get_workspace_custom_pool(workspace_id=workspace_id, pool_id=pool2.id)
|
55
|
+
self.assertEqual(pool2_clone.auto_scale["maxNodeCount"], 7)
|
56
|
+
|
57
|
+
# Delete
|
58
|
+
status_code = fc.delete_workspace_custom_pool(workspace_id=workspace_id, pool_id=pool2.id)
|
59
|
+
self.assertEqual(status_code, 200)
|
60
|
+
|
61
|
+
pools = fc.list_workspace_custom_pools(workspace_id=workspace_id)
|
62
|
+
self.assertNotIn("pool2", [p.name for p in pools])
|
63
|
+
|
64
|
+
def test_workspace_settings(self):
|
65
|
+
fc = self.fc
|
66
|
+
workspace_id = self.workspace_id
|
67
|
+
|
68
|
+
# Get
|
69
|
+
|
70
|
+
settings = fc.get_spark_settings(workspace_id)
|
71
|
+
self.assertIn("automaticLog", settings)
|
72
|
+
|
73
|
+
|
74
|
+
orig_setting = settings["automaticLog"]["enabled"]
|
75
|
+
settings["automaticLog"]["enabled"] = not settings["automaticLog"]["enabled"]
|
76
|
+
|
77
|
+
# Update
|
78
|
+
settings = fc.update_spark_settings(workspace_id, automatic_log=settings["automaticLog"])
|
79
|
+
new_setting = settings["automaticLog"]["enabled"]
|
80
|
+
self.assertNotEqual(orig_setting, new_setting)
|
81
|
+
self.assertTrue(orig_setting or new_setting)
|
82
|
+
self.assertFalse(orig_setting and new_setting)
|
83
|
+
|
84
|
+
settings = fc.get_spark_settings(workspace_id)
|
85
|
+
checked_setting = settings["automaticLog"]["enabled"]
|
86
|
+
self.assertEqual(checked_setting, new_setting)
|
87
|
+
|
88
|
+
|
89
|
+
if __name__ == "__main__":
|
90
|
+
unittest.main()
|
91
|
+
|
@@ -1,8 +1,9 @@
|
|
1
1
|
import unittest
|
2
|
-
|
2
|
+
from dotenv import load_dotenv
|
3
3
|
from datetime import datetime
|
4
4
|
from msfabricpysdkcore.coreapi import FabricClientCore
|
5
5
|
|
6
|
+
load_dotenv()
|
6
7
|
|
7
8
|
class TestFabricClientCore(unittest.TestCase):
|
8
9
|
|
@@ -104,12 +105,12 @@ class TestFabricClientCore(unittest.TestCase):
|
|
104
105
|
|
105
106
|
# def test_update_workspace(self):
|
106
107
|
ws_updated = self.fc.update_workspace(workspace_id=ws.id,
|
107
|
-
display_name="
|
108
|
+
display_name="newn912389u8293",
|
108
109
|
description="new description")
|
109
|
-
self.assertEqual(ws_updated.display_name, "
|
110
|
+
self.assertEqual(ws_updated.display_name, "newn912389u8293")
|
110
111
|
self.assertEqual(ws_updated.description, "new description")
|
111
112
|
ws = self.fc.get_workspace_by_id(id = ws.id)
|
112
|
-
self.assertEqual(ws.display_name, "
|
113
|
+
self.assertEqual(ws.display_name, "newn912389u8293")
|
113
114
|
self.assertEqual(ws.description, "new description")
|
114
115
|
|
115
116
|
# def test_unassign_from_capacity(self):
|
@@ -120,7 +121,7 @@ class TestFabricClientCore(unittest.TestCase):
|
|
120
121
|
self.assertEqual(ws.capacity_id, None)
|
121
122
|
|
122
123
|
# def test_delete_workspace(self):
|
123
|
-
result_status = self.fc.delete_workspace(display_name="
|
124
|
+
result_status = self.fc.delete_workspace(display_name="newn912389u8293")
|
124
125
|
self.assertEqual(result_status, 200)
|
125
126
|
|
126
127
|
def test_list_capacities(self):
|