def test_01_package_group_create(self): response = self.repo1.within_repo_search( self.pulp, data={"criteria": {"type_ids": ["rpm"],"limit": 5}} ) self.assertPulp(code=200) result = Association.from_response(response) rpmlist = [] # make a list of names for i in range(0, len(result)): rpmlist.append(result[i].data['metadata']['name']) #create metadata for package group import data = package_group_metadata(self.repo1.id+"_group1", self.repo1.id, rpmlist) #actually upload group with deleting(self.pulp, Upload.create(self.pulp, data=data)) as (upload,): Task.wait_for_report(self.pulp, upload.import_to(self.pulp, self.repo1)) self.assertPulp(code=200) #check that group is there and contains specified packages response = self.repo1.within_repo_search( self.pulp, data={"criteria": {"type_ids": ["package_group"],\ "filters": {"unit": {"id": data["unit_key"]["id"]}}}} ) self.assertPulp(code=200) result = Association.from_response(response) self.assertEqual(result[0].data["metadata"]["mandatory_package_names"], data["unit_metadata"]["mandatory_package_names"])
def test_02_package_group_delete(self): rpmlist = [] #create metadata for package group import data = package_group_metadata(self.repo1.id+"_group2", self.repo1.id, rpmlist) #actually upload group with deleting(self.pulp, Upload.create(self.pulp, data=data)) as (upload,): Task.wait_for_report(self.pulp, upload.import_to(self.pulp, self.repo1)) self.assertPulp(code=200) item={"criteria": {"type_ids": ["package_group"],\ "filters": {"unit": {"id": data["unit_key"]["id"]}}}} response = self.repo1.unassociate_units(self.pulp, item) self.assertPulp(code=202) Task.wait_for_report(self.pulp, response) #check that group is NOT there and contains specified packages response = self.repo1.within_repo_search( self.pulp, data={"criteria": {"type_ids": ["package_group"],\ "filters": {"unit": {"id": data["unit_key"]["id"]}}}} ) self.assertPulp(code=200) result = Association.from_response(response) self.assertEqual(len(result), 0)