Skip to content

Commit 4e6cc55

Browse files
committed
Add privileges macros test
1 parent b7a2217 commit 4e6cc55

File tree

1 file changed

+52
-0
lines changed

1 file changed

+52
-0
lines changed

tests/integration/test_macro.py

Lines changed: 52 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -264,6 +264,58 @@ def query():
264264
self.assertRaisesRegex(HTTPError, "value must be smaller that value2", query)
265265

266266

267+
class TestPrivileges(testlib.SDKTestCase):
268+
macro_name = "SDKTestMacro"
269+
username = "SDKTestMacroUser".lower()
270+
password = "SDKTestMacroUserPassword!"
271+
272+
def setUp(self):
273+
testlib.SDKTestCase.setUp(self)
274+
self.cleanUsers()
275+
276+
self.service.users.create(
277+
username=self.username, password=self.password, roles=["user"]
278+
)
279+
280+
self.service.logout()
281+
kwargs = self.opts.kwargs.copy()
282+
kwargs["username"] = self.username
283+
kwargs["password"] = self.password
284+
self.service = client.connect(**kwargs)
285+
286+
self.cleanMacros()
287+
288+
def tearDown(self):
289+
testlib.SDKTestCase.setUp(self)
290+
self.cleanMacros()
291+
self.service = client.connect(**self.opts.kwargs)
292+
self.cleanUsers()
293+
294+
def cleanUsers(self):
295+
for user in self.service.users:
296+
if user.name == self.username:
297+
self.service.users.delete(self.username)
298+
299+
def cleanMacros(self):
300+
for macro in self.service.macros:
301+
if macro.name == self.macro_name:
302+
self.service.macros.delete(self.macro_name)
303+
304+
def test_create_macro_no_admin(self):
305+
self.service.macros.create(self.macro_name, 'eval test="123"')
306+
307+
stream = self.service.jobs.oneshot(
308+
f"| makeresults count=1 | `{self.macro_name}`",
309+
output_mode="json",
310+
)
311+
312+
result = results.JSONResultsReader(stream)
313+
out = list(result)
314+
315+
self.assertTrue(len(out) == 1)
316+
self.assertEqual(out[0]["test"], "123")
317+
318+
267319
if __name__ == "__main__":
268320
try:
269321
import unittest2 as unittest

0 commit comments

Comments
 (0)