This is an automated email from the ASF dual-hosted git repository.

rohit pushed a commit to branch 4.18
in repository https://gitbox.apache.org/repos/asf/cloudstack.git


The following commit(s) were added to refs/heads/4.18 by this push:
     new 330a330555e test: add smoke test for user role for userdata crud api 
(#7332)
330a330555e is described below

commit 330a330555e706a02b850c0a712cfdffdfd8eb93
Author: Abhishek Kumar <[email protected]>
AuthorDate: Fri Mar 31 15:16:29 2023 +0530

    test: add smoke test for user role for userdata crud api (#7332)
    
    * test: add smoke test for user role for userdata crud api
    
    Signed-off-by: Abhishek Kumar <[email protected]>
    
    * address review comment
    
    Signed-off-by: Abhishek Kumar <[email protected]>
    
    ---------
    
    Signed-off-by: Abhishek Kumar <[email protected]>
---
 test/integration/smoke/test_register_userdata.py | 66 ++++++++++++++++++++++++
 1 file changed, 66 insertions(+)

diff --git a/test/integration/smoke/test_register_userdata.py 
b/test/integration/smoke/test_register_userdata.py
index 7251530d85e..bc38cd989c0 100644
--- a/test/integration/smoke/test_register_userdata.py
+++ b/test/integration/smoke/test_register_userdata.py
@@ -762,3 +762,69 @@ class TestRegisteredUserdata(cloudstackTestCase):
             self.apiclient,
             templateid=self.template.id
         )
+
+    @attr(tags=['advanced', 'simulator', 'basic', 'sg', 'testnow'], 
required_hardware=True)
+    def test_user_userdata_crud(self):
+        """Test following operations as a normal user:
+            1. Register userdata
+            2. List userdata
+            3. Link userdata to a template, unlink
+            4. Delete userdata.
+        """
+        self.user = self.account.user[0]
+        self.userapiclient = self.testClient.getUserApiClient(
+            self.user.username,
+            self.domain.name)
+
+        self.userdata = UserData.register(
+            self.userapiclient,
+            name="UserdataName",
+            userdata="VGVzdFVzZXJEYXRh",
+            account=self.account.name,
+            domainid=self.account.domainid
+        )
+        self.cleanup.append(self.userdata)
+
+        list_userdata = UserData.list(self.apiclient, 
id=self.userdata.userdata.id, listall=True)
+        self.assertNotEqual(
+            len(list_userdata),
+            0,
+            "List userdata was empty"
+        )
+        userdata = list_userdata[0]
+        self.assertEqual(
+            userdata.id,
+            self.userdata.userdata.id,
+            "userdata ids do not match"
+        )
+
+        self.template = Template.linkUserDataToTemplate(
+            self.apiclient,
+            templateid=self.template.id,
+            userdataid=self.userdata.userdata.id
+        )
+        self.assertEqual(
+            self.userdata.userdata.id,
+            self.template.userdataid,
+            "Match userdata id in template response"
+        )
+        self.assertEqual(
+            self.template.userdatapolicy,
+            "ALLOWOVERRIDE",
+            "Match default userdata override policy in template response"
+        )
+        self.template = Template.linkUserDataToTemplate(
+            self.apiclient,
+            templateid=self.template.id
+        )
+        self.assertEqual(
+            self.template.userdataid,
+            None,
+            "Check userdata id in template response is None"
+        )
+
+        UserData.delete(
+            self.userapiclient,
+            id=self.userdata.userdata.id
+        )
+        self.cleanup.remove(self.userdata)

Reply via email to