Esempio n. 1
0
    def test_basic_update(self, test_data):
        """
        @feature: Permissions
        @test: try to update entity first with relevant permissionn
        @assert: entity is removed
        """
        entity = test_data()
        created = ApiCrud.record_create_recursive(entity)

        created = test_data._meta.change_for_update(created)
        user_definition = User()
        user_created = ApiCrud.record_create_recursive(user_definition)

        # user doesn't yet have relevant permission, action should fail
        with self.assertRaises(Exception):
            ApiCrud.record_update(created, user_definition)

        perm = ApiCrud.record_resolve(
            test_data._meta.api_class.permissions.update
            )
        add_permission_to_user(user_created, perm)
        # user should have the relevant permission, action should
        updated = ApiCrud.record_update(created, user_definition)
        del created["updated_at"]
        del updated["updated_at"]
        self.assertIntersects(created, updated)
Esempio n. 2
0
    def test_basic_update(self, test_data):
        """
        @feature: Permissions
        @test: try to update entity first with relevant permissionn
        @assert: entity is removed
        """
        entity = test_data()
        created = ApiCrud.record_create_recursive(entity)

        created = test_data._meta.change_for_update(created)
        user_definition = User()
        user_created = ApiCrud.record_create_recursive(user_definition)

        # user doesn't yet have relevant permission, action should fail
        with self.assertRaises(Exception):
            ApiCrud.record_update(created, user_definition)

        perm = ApiCrud.record_resolve(
            test_data._meta.api_class.permissions.update)
        add_permission_to_user(user_created, perm)
        # user should have the relevant permission, action should
        updated = ApiCrud.record_update(created, user_definition)
        del created["updated_at"]
        del updated["updated_at"]
        self.assertIntersects(created, updated)
Esempio n. 3
0
    def test_add_user_2(self, test_data):
        """
        @feature: Organizations
        @test: Create admin users then add user by using the organization name
        @assert: User is added to organization
        @status: manual
        """

        ApiCrud.record_create_recursive(test_data)
Esempio n. 4
0
    def test_add_user_2(self, test_data):
        """
        @feature: Organizations
        @test: Create admin users then add user by using the organization name
        @assert: User is added to organization
        @status: manual
        """

        ApiCrud.record_create_recursive(test_data)
Esempio n. 5
0
    def test_add_user_1(self, test_data):
        """
        @feature: Organizations
        @test: Create different types of users then add user
        by using the organization ID
        @assert: User is added to organization
        @status: manual
        """

        ApiCrud.record_create_recursive(test_data)
Esempio n. 6
0
    def test_add_user_1(self, test_data):
        """
        @feature: Organizations
        @test: Create different types of users then add user
        by using the organization ID
        @assert: User is added to organization
        @status: manual
        """

        ApiCrud.record_create_recursive(test_data)
Esempio n. 7
0
 def test_remove(self):
     """
     @feature: Hosts
     @test: Verify, that remove funkcionality works as intended
     @assert: host didn't exist, after create does, after remove doesn't
     """
     h = Host()
     self.assertTrue(ApiCrud.record_exists(h) is False)
     ApiCrud.record_create_recursive(h)
     self.assertTrue(ApiCrud.record_exists(h) is True)
     ApiCrud.record_remove(h)
     self.assertTrue(ApiCrud.record_exists(h) is False)
Esempio n. 8
0
 def test_remove(self):
     """
     @feature: Hosts
     @test: Verify, that remove funkcionality works as intended
     @assert: host didn't exist, after create does, after remove doesn't
     """
     h = Host()
     self.assertTrue(ApiCrud.record_exists(h) is False)
     ApiCrud.record_create_recursive(h)
     self.assertTrue(ApiCrud.record_exists(h) is True)
     ApiCrud.record_remove(h)
     self.assertTrue(ApiCrud.record_exists(h) is False)
Esempio n. 9
0
 def test_positive_create_1(self, test_data):
     """
     @feature: CustomYumRepo
     @test: Try creating custom repository with valid name/desc
     @assert: Product iscreated, sent and recieved data intersects
     """
     result = ApiCrud.record_create_recursive(test_data)
     self.assertIntersects(test_data, result)
Esempio n. 10
0
 def test_positive_create_1(self, test_data):
     """
     @feature: CustomYumRepo
     @test: Try creating custom repository with valid name/desc
     @assert: Product iscreated, sent and recieved data intersects
     """
     result = ApiCrud.record_create_recursive(test_data)
     self.assertIntersects(test_data, result)
Esempio n. 11
0
 def test_positive_remove_1(self, test_data):
     """
     @feature: CustomYumRepo
     @test: Try removing custom repository with valid name/desc
     @assert: Product iscreated, sent and recieved data intersects
     """
     result = ApiCrud.record_create_recursive(test_data)
     self.assertTrue(ApiCrud.record_exists(result))
     ApiCrud.record_remove(result)
     self.assertFalse(ApiCrud.record_exists(result))
Esempio n. 12
0
 def test_positive_remove_1(self, test_data):
     """
     @feature: CustomYumRepo
     @test: Try removing custom repository with valid name/desc
     @assert: Product iscreated, sent and recieved data intersects
     """
     result = ApiCrud.record_create_recursive(test_data)
     self.assertTrue(ApiCrud.record_exists(result))
     ApiCrud.record_remove(result)
     self.assertFalse(ApiCrud.record_exists(result))
Esempio n. 13
0
 def test_recursive_resolve(self):
     """
     @feature: Hosts
     @test: Verify, that we can get information about related fields
     @assert: host's defined operating system is correctly assigned
     """
     h = Host()
     h_cr = ApiCrud.record_create_recursive(h)
     h_rr = ApiCrud.record_resolve_recursive(h_cr)
     self.assertTrue(h.operatingsystem.name == h_rr.operatingsystem.name)
Esempio n. 14
0
    def test_create(self):
        """
        @feature: Hosts
        @test: Create host, with all of its dependencies
        @assert: a valid host is created
        """

        h = Host()
        h_cr = ApiCrud.record_create_recursive(h)
        self.assertTrue(h.name == h_cr.name)
Esempio n. 15
0
    def test_create(self):
        """
        @feature: Hosts
        @test: Create host, with all of its dependencies
        @assert: a valid host is created
        """

        h = Host()
        h_cr = ApiCrud.record_create_recursive(h)
        self.assertTrue(h.name == h_cr.name)
Esempio n. 16
0
 def test_recursive_resolve(self):
     """
     @feature: Hosts
     @test: Verify, that we can get information about related fields
     @assert: host's defined operating system is correctly assigned
     """
     h = Host()
     h_cr = ApiCrud.record_create_recursive(h)
     h_rr = ApiCrud.record_resolve_recursive(h_cr)
     self.assertTrue(h.operatingsystem.name == h_rr.operatingsystem.name)
Esempio n. 17
0
 def test_cv_promote_custom_content(self):
     """
     @test: attempt to promote a content view containing custom content
     @feature: Content Views
     @setup: Multiple environments for an org; custom content synced
     @assert: Content view can be promoted
     """
     con_view = ApiCrud.record_create_recursive(ContentViewDefinition())
     self.assertIntersects(data, con_view)
     task = con_view._meta.api_class.publish(con_view)
     task.poll(5, 100)  # poll every 5th second, max of 100 seconds
     self.assertEqual('success', task.result())
     published = ApiCrud.record_resolve(con_view)
     env = EnvironmentKatello(organization=published.organization)
     created_env = ApiCrud.record_create_recursive(env)
     task2 = published._meta.api_class.promote(
         published.versions[0]['id'],
         created_env.id
         )
     task2.poll(5, 100)  # poll every 5th second, max of 100 seconds
     self.assertEqual('success', task2.result())
Esempio n. 18
0
 def test_cv_promote_custom_content(self):
     """
     @test: attempt to promote a content view containing custom content
     @feature: Content Views
     @setup: Multiple environments for an org; custom content synced
     @assert: Content view can be promoted
     """
     con_view = ApiCrud.record_create_recursive(ContentViewDefinition())
     self.assertIntersects(data, con_view)
     task = con_view._meta.api_class.publish(con_view)
     task.poll(5, 100)  # poll every 5th second, max of 100 seconds
     self.assertEqual('success', task.result())
     published = ApiCrud.record_resolve(con_view)
     env = EnvironmentKatello(organization=published.organization)
     created_env = ApiCrud.record_create_recursive(env)
     task2 = published._meta.api_class.promote(
         published.versions[0]['id'],
         created_env.id
         )
     task2.poll(5, 100)  # poll every 5th second, max of 100 seconds
     self.assertEqual('success', task2.result())
Esempio n. 19
0
    def test_basic_remove(self, test_data):
        """
        @feature: Permissions
        @test: try to remove entity first with relevant permissionn
        @assert: entity is removed
        """
        entity = test_data()
        created = ApiCrud.record_create_recursive(entity)

        user_definition = User()
        user_created = ApiCrud.record_create_recursive(user_definition)

        # user doesn't yet have relevant permission, action should fail
        with self.assertRaises(Exception):
            ApiCrud.record_remove(created, user_definition)

        perm = ApiCrud.record_resolve(test_data._meta.api_class.permissions.remove)
        add_permission_to_user(user_created, perm)
        # user should have the relevant permission, action should work
        ApiCrud.record_remove(created, user_definition)
        self.assertFalse(ApiCrud.record_exists(created))
Esempio n. 20
0
    def test_cv_publish_rh(self, data):
        """
        @test: attempt to publish a content view containing RH content
        @feature: Content Views
        @setup: Multiple environments for an org; RH content synced
        @assert: Content view can be published
        """

        con_view = ApiCrud.record_create_recursive(data)
        self.assertIntersects(data, con_view)
        task = con_view._meta.api_class.publish(con_view)
        task.poll(5, 100)  # poll every 5th second, max of 100 seconds
        self.assertEqual('success', task.result())
Esempio n. 21
0
    def test_basic_remove(self, test_data):
        """
        @feature: Permissions
        @test: try to remove entity first with relevant permissionn
        @assert: entity is removed
        """
        entity = test_data()
        created = ApiCrud.record_create_recursive(entity)

        user_definition = User()
        user_created = ApiCrud.record_create_recursive(user_definition)

        # user doesn't yet have relevant permission, action should fail
        with self.assertRaises(Exception):
            ApiCrud.record_remove(created, user_definition)

        perm = ApiCrud.record_resolve(
            test_data._meta.api_class.permissions.remove)
        add_permission_to_user(user_created, perm)
        # user should have the relevant permission, action should work
        ApiCrud.record_remove(created, user_definition)
        self.assertFalse(ApiCrud.record_exists(created))
Esempio n. 22
0
 def test_positive_sync_1(self, test_data):
     """
     @feature: CustomYumRepo
     @test: Create and sync repo
     @assert: repo should have more than 0 packages
     """
     result = ApiCrud.record_create_recursive(test_data)
     self.assertEqual({}, result.content_counts)
     task = result._meta.api_class.synchronize(result)
     task.poll(5, 100)
     self.assertEqual('success', task.result())
     resolved = ApiCrud.record_resolve(result)
     self.assertGreater(resolved.content_counts['rpm'], 0)
Esempio n. 23
0
 def test_positive_sync_1(self, test_data):
     """
     @feature: CustomYumRepo
     @test: Create and sync repo
     @assert: repo should have more than 0 packages
     """
     result = ApiCrud.record_create_recursive(test_data)
     self.assertEqual({}, result.content_counts)
     task = result._meta.api_class.synchronize(result)
     task.poll(5, 100)
     self.assertEqual('success', task.result())
     resolved = ApiCrud.record_resolve(result)
     self.assertGreater(resolved.content_counts['rpm'], 0)
Esempio n. 24
0
 def test_update(self, test_data):
     """
     @feature: CustomProduct
     @test: Verify, that update funkcionality works as intended
     @assert: different description is created after update.
     """
     update_desc = test_data.description
     test_data.description = "empty"
     ak_cr = ApiCrud.record_create_recursive(test_data)
     self.assertIntersects(ak_cr, test_data)
     ak_cr.description = update_desc
     ak_u = ApiCrud.record_update(ak_cr)
     self.assertEquals(ak_u.description, ak_cr.description)
Esempio n. 25
0
 def test_remove_user_3(self, test_data):
     """
     @feature: Organizations
     @test: Create admin users then add user and remove it
     by using the organization name
     @assert: The user is added then removed from the organization
     @status: manual
     """
     u = ApiCrud.record_create_recursive(test_data)
     self.assertTrue("organizations" in u)
     u.organization_ids = []
     ur = ApiCrud.record_update(u)
     self.assertFalse("organizations" in ur)
Esempio n. 26
0
 def test_remove_user_3(self, test_data):
     """
     @feature: Organizations
     @test: Create admin users then add user and remove it
     by using the organization name
     @assert: The user is added then removed from the organization
     @status: manual
     """
     u = ApiCrud.record_create_recursive(test_data)
     self.assertTrue("organizations" in u)
     u.organization_ids = []
     ur = ApiCrud.record_update(u)
     self.assertFalse("organizations" in ur)
Esempio n. 27
0
    def test_remove_user_1(self, test_data):
        """
        @feature: Organizations
        @test: Create different types of users then add/remove user
        by using the organization ID
        @assert: User is added and then removed from organization
        @status: manual
        """

        u = ApiCrud.record_create_recursive(test_data)
        self.assertTrue("organizations" in u)
        u.organization_ids = []
        ur = ApiCrud.record_update(u)
        self.assertFalse("organizations" in ur)
Esempio n. 28
0
    def test_remove_user_1(self, test_data):
        """
        @feature: Organizations
        @test: Create different types of users then add/remove user
        by using the organization ID
        @assert: User is added and then removed from organization
        @status: manual
        """

        u = ApiCrud.record_create_recursive(test_data)
        self.assertTrue("organizations" in u)
        u.organization_ids = []
        ur = ApiCrud.record_update(u)
        self.assertFalse("organizations" in ur)
Esempio n. 29
0
 def test_cv_promote_badid_negative(self):
     """
     @test: attempt to promote a content view using an invalid id
     @feature: Content Views
     @assert: Content views cannot be promoted; handled gracefully
     """
     env = EnvironmentKatello()
     created_env = ApiCrud.record_create_recursive(env)
     task = ContentViewDefinition._meta.api_class.promote(
         1,
         created_env.id
         )
     self.assertIn(
         'errors', task.json,
         "Invalid id shouldn't be promoted")
Esempio n. 30
0
 def test_cv_promote_default_negative(self):
     """
     @test: attempt to promote a the default content views
     @feature: Content Views
     @assert: Default content views cannot be promoted
     """
     env = EnvironmentKatello()
     created_env = ApiCrud.record_create_recursive(env)
     task = ContentViewDefinition._meta.api_class.promote(
         1,
         created_env.id
         )
     self.assertIn(
         'errors', task.json,
         "Default cv shouldn't be promoted")
Esempio n. 31
0
 def test_cv_promote_default_negative(self):
     """
     @test: attempt to promote a the default content views
     @feature: Content Views
     @assert: Default content views cannot be promoted
     """
     env = EnvironmentKatello()
     created_env = ApiCrud.record_create_recursive(env)
     task = ContentViewDefinition._meta.api_class.promote(
         1,
         created_env.id
         )
     self.assertIn(
         'errors', task.json,
         "Default cv shouldn't be promoted")
Esempio n. 32
0
 def test_cv_promote_badid_negative(self):
     """
     @test: attempt to promote a content view using an invalid id
     @feature: Content Views
     @assert: Content views cannot be promoted; handled gracefully
     """
     env = EnvironmentKatello()
     created_env = ApiCrud.record_create_recursive(env)
     task = ContentViewDefinition._meta.api_class.promote(
         1,
         created_env.id
         )
     self.assertIn(
         'errors', task.json,
         "Invalid id shouldn't be promoted")
Esempio n. 33
0
    def test_cv_promote_badenvironment_negative(self):
        """
        @test: attempt to promote a content view using an invalid environment
        @feature: Content Views
        @assert: Content views cannot be promoted; handled gracefully
        """
        con_view = ApiCrud.record_create_recursive(ContentViewDefinition())
        self.assertIntersects(data, con_view)
        task = con_view._meta.api_class.publish(con_view)
        task.poll(5, 100)  # poll every 5th second, max of 100 seconds
        self.assertEqual('success', task.result())
        published = ApiCrud.record_resolve(con_view)
        task = published._meta.api_class.promote(
            published.versions[0]['id'],
            -1
            )

        self.assertIn(
            'errors', task.json,
            "Shouldn't be promoted to invalid env")
Esempio n. 34
0
    def test_cv_promote_badenvironment_negative(self):
        """
        @test: attempt to promote a content view using an invalid environment
        @feature: Content Views
        @assert: Content views cannot be promoted; handled gracefully
        """
        con_view = ApiCrud.record_create_recursive(ContentViewDefinition())
        self.assertIntersects(data, con_view)
        task = con_view._meta.api_class.publish(con_view)
        task.poll(5, 100)  # poll every 5th second, max of 100 seconds
        self.assertEqual('success', task.result())
        published = ApiCrud.record_resolve(con_view)
        task = published._meta.api_class.promote(
            published.versions[0]['id'],
            -1
            )

        self.assertIn(
            'errors', task.json,
            "Shouldn't be promoted to invalid env")
Esempio n. 35
0
    def test_basic_create(self, test_data):
        """
        @feature: Permissions
        @test: try to create entity first with relevant permissionn
        @assert: entity is created
        """

        entity = test_data()
        deps = ApiCrud.record_create_dependencies(entity)

        user_definition = User()
        user_created = ApiCrud.record_create_recursive(user_definition)

        # user doesn't yet have relevant permission, action should fail
        with self.assertRaises(Exception):
            ApiCrud.record_create(deps, user_definition)

        perm = ApiCrud.record_resolve(test_data._meta.api_class.permissions.create)
        add_permission_to_user(user_created, perm)
        # user should have the relevant permission, action should work
        created = ApiCrud.record_create(deps, user_definition)
        self.assertIntersects(deps, created)
Esempio n. 36
0
    def test_basic_create(self, test_data):
        """
        @feature: Permissions
        @test: try to create entity first with relevant permissionn
        @assert: entity is created
        """

        entity = test_data()
        deps = ApiCrud.record_create_dependencies(entity)

        user_definition = User()
        user_created = ApiCrud.record_create_recursive(user_definition)

        # user doesn't yet have relevant permission, action should fail
        with self.assertRaises(Exception):
            ApiCrud.record_create(deps, user_definition)

        perm = ApiCrud.record_resolve(
            test_data._meta.api_class.permissions.create)
        add_permission_to_user(user_created, perm)
        # user should have the relevant permission, action should work
        created = ApiCrud.record_create(deps, user_definition)
        self.assertIntersects(deps, created)