Пример #1
0
 def test_package6(self):
     """test package validation (invalid model)"""
     RemotePackage.SCHEMA = self.fixture_file('package_simple.xsd')
     pkg = RemotePackage('foo', 'bar')
     pkg.set('invalidattr', 'yes')
     self.assertRaises(etree.DocumentInvalid, pkg.validate)
     self.assertRaises(etree.DocumentInvalid, pkg.store)
Пример #2
0
 def test_package8(self):
     """test package validation (invalid xml response after store)"""
     RemotePackage.SCHEMA = self.fixture_file('package_simple.xsd')
     RemotePackage.PUT_RESPONSE_SCHEMA = self.fixture_file('ok_simple.xsd')
     pkg = RemotePackage('foo', 'bar')
     # check that validation is ok
     pkg.validate()
     self.assertRaises(etree.DocumentInvalid, pkg.store)
Пример #3
0
    def real_obj(self):
        """Returns a "real" Request object.

        The returned object is "writable" too that is
        its state can be changed etc.

        """
        return RemotePackage(xml_data=etree.tostring(self))
Пример #4
0
 def test_package2(self):
     """create a remote package"""
     pkg = RemotePackage('openSUSE:Tools', 'osc')
     debug = pkg.add_debuginfo()
     debug.add_disable()
     debug.add_enable(repository='openSUSE_Factory')
     debug.add_enable(repository='some_repo', arch='i586')
     pkg.title = 'tiny title'
     pkg.description = 'some useless\ndescription...'
     # modify person afterwards
     person = pkg.add_person(userid='wrongid', role='maintainer')
     person.set('userid', 'foobar')
     pkg.store()
Пример #5
0
 def _commit_adds(self, cstate, package_filenames, comment):
     cinfo = cstate.info
     tl = self.notifier.listener
     for package in cinfo.added:
         if cstate.state == CommitStateMixin.STATE_TRANSFER:
             # check if package was created in the meantime
             exists = RemotePackage.exists(self.name, package,
                                           apiurl=self.apiurl)
             if not exists:
                 pkg = RemotePackage(self.name, package)
                 pkg.store(apiurl=self.apiurl)
             pkg = self.package(package, transaction_listener=tl)
             filenames = package_filenames.get(package, [])
             pkg.commit(*filenames, comment=comment)
             cstate.state = CommitStateMixin.STATE_COMMITTING
         cstate.processed(package, ' ')
         self.notifier.processed(package, ' ', 'A')
Пример #6
0
 def test_package5(self):
     """test package validation"""
     RemotePackage.SCHEMA = self.fixture_file('package_simple.xsd')
     RemotePackage.PUT_RESPONSE_SCHEMA = self.fixture_file('ok_simple.xsd')
     pkg = RemotePackage('newprj', 'bar')
     pkg.store()