def setUp(self): """ Initialize the configuration """ Cache.last_updated[APIURL] = {'__oldest': '2016-12-18T11:49:37Z'} httpretty.reset() httpretty.enable() oscrc = os.path.join(FIXTURES, 'oscrc') osc.core.conf.get_config(override_conffile=oscrc, override_no_keyring=True, override_no_gnome_keyring=True) # osc.conf.config['debug'] = 1 logging.basicConfig() self.logger = logging.getLogger(__file__) self.logger.setLevel(logging.DEBUG) self.checker = TagChecker(apiurl=APIURL, user='******', logger=self.logger) self.checker.override_allow = False # Test setup cannot handle. self._request_data = """ <request id="293129" creator="darix"> <action type="submit"> <source project="editors" package="nano" rev="25"/> <target project="openSUSE:Factory" package="nano"/> </action> <state name="review" who="factory-auto" when="2015-03-25T16:24:59"> <comment>Please review build success</comment> </state> <review state="accepted" when="2015-03-25T16:24:32" who="licensedigger" by_group="legal-auto"> <comment></comment> <history who="licensedigger" when="2015-03-25T16:30:13"> <description>Review got accepted</description> </history> </review> <review state="accepted" when="2015-03-25T16:24:32" who="factory-auto" by_group="factory-auto"> <comment>Check script succeeded</comment> <history who="factory-auto" when="2015-03-25T16:24:59"> <description>Review got accepted</description> <comment>Check script succeeded</comment> </history> </review> <review state="accepted" when="2015-03-25T16:24:32" who="coolo" by_group="factory-staging"> <comment>No need for staging, not in tested ring projects.</comment> <history who="coolo" when="2015-03-25T20:47:33"> <description>Review got accepted</description> <comment>No need for staging, not in tested ring projects.</comment> </history> </review> <review state="new" by_user="******"> <comment>Please review sources</comment> </review> <review state="accepted" when="2015-03-25T16:24:59" who="factory-repo-checker" by_user="******"> <comment>Builds for repo editors/openSUSE_Factory</comment> <history who="factory-repo-checker" when="2015-03-25T18:28:47"> <description>Review got accepted</description> <comment>Builds for repo editors/openSUSE_Factory</comment> </history> </review> </request> """ self._request_withhistory = """ <request id="293129" creator="darix"> <action type="submit"> <source project="editors" package="nano" rev="25"/> <target project="openSUSE:Factory" package="nano"/> </action> <state name="review" who="factory-auto" when="2015-03-25T16:24:59"> <comment>Please review build success</comment> </state> <review state="accepted" when="2015-03-25T16:24:32" who="licensedigger" by_group="legal-auto"> <comment></comment> <history who="licensedigger" when="2015-03-25T16:30:13"> <description>Review got accepted</description> </history> </review> <review state="accepted" when="2015-03-25T16:24:32" who="factory-auto" by_group="factory-auto"> <comment>Check script succeeded</comment> <history who="factory-auto" when="2015-03-25T16:24:59"> <description>Review got accepted</description> <comment>Check script succeeded</comment> </history> </review> <review state="accepted" when="2015-03-25T16:24:32" who="coolo" by_group="factory-staging"> <comment>No need for staging, not in tested ring projects.</comment> <history who="coolo" when="2015-03-25T20:47:33"> <description>Review got accepted</description> <comment>No need for staging, not in tested ring projects.</comment> </history> </review> <review state="new" by_user="******"> <comment>Please review sources</comment> </review> <review state="accepted" when="2015-03-25T16:24:59" who="factory-repo-checker" by_user="******"> <comment>Builds for repo editors/openSUSE_Factory</comment> <history who="factory-repo-checker" when="2015-03-25T18:28:47"> <description>Review got accepted</description> <comment>Builds for repo editors/openSUSE_Factory</comment> </history> </review> <history who="darix" when="2015-03-25T16:24:32"> <description>Request created</description> </history> <history who="factory-auto" when="2015-03-25T16:24:59"> <description>Request got a new review request</description> <comment>Please review sources</comment> </history> <history who="factory-auto" when="2015-03-25T16:24:59"> <description>Request got a new review request</description> <comment>Please review build success</comment> </history> </request> """ self._nano_meta = """<package name="nano" project="openSUSE:Factory">
class TestTagChecker(unittest.TestCase): def setUp(self): """ Initialize the configuration """ Cache.last_updated[APIURL] = {'__oldest': '2016-12-18T11:49:37Z'} httpretty.reset() httpretty.enable() oscrc = os.path.join(FIXTURES, 'oscrc') osc.core.conf.get_config(override_conffile=oscrc, override_no_keyring=True, override_no_gnome_keyring=True) # osc.conf.config['debug'] = 1 logging.basicConfig() self.logger = logging.getLogger(__file__) self.logger.setLevel(logging.DEBUG) self.checker = TagChecker(apiurl=APIURL, user='******', logger=self.logger) self.checker.override_allow = False # Test setup cannot handle. self._request_data = """ <request id="293129" creator="darix"> <action type="submit"> <source project="editors" package="nano" rev="25"/> <target project="openSUSE:Factory" package="nano"/> </action> <state name="review" who="factory-auto" when="2015-03-25T16:24:59"> <comment>Please review build success</comment> </state> <review state="accepted" when="2015-03-25T16:24:32" who="licensedigger" by_group="legal-auto"> <comment></comment> <history who="licensedigger" when="2015-03-25T16:30:13"> <description>Review got accepted</description> </history> </review> <review state="accepted" when="2015-03-25T16:24:32" who="factory-auto" by_group="factory-auto"> <comment>Check script succeeded</comment> <history who="factory-auto" when="2015-03-25T16:24:59"> <description>Review got accepted</description> <comment>Check script succeeded</comment> </history> </review> <review state="accepted" when="2015-03-25T16:24:32" who="coolo" by_group="factory-staging"> <comment>No need for staging, not in tested ring projects.</comment> <history who="coolo" when="2015-03-25T20:47:33"> <description>Review got accepted</description> <comment>No need for staging, not in tested ring projects.</comment> </history> </review> <review state="new" by_user="******"> <comment>Please review sources</comment> </review> <review state="accepted" when="2015-03-25T16:24:59" who="factory-repo-checker" by_user="******"> <comment>Builds for repo editors/openSUSE_Factory</comment> <history who="factory-repo-checker" when="2015-03-25T18:28:47"> <description>Review got accepted</description> <comment>Builds for repo editors/openSUSE_Factory</comment> </history> </review> </request> """ self._request_withhistory = """ <request id="293129" creator="darix"> <action type="submit"> <source project="editors" package="nano" rev="25"/> <target project="openSUSE:Factory" package="nano"/> </action> <state name="review" who="factory-auto" when="2015-03-25T16:24:59"> <comment>Please review build success</comment> </state> <review state="accepted" when="2015-03-25T16:24:32" who="licensedigger" by_group="legal-auto"> <comment></comment> <history who="licensedigger" when="2015-03-25T16:30:13"> <description>Review got accepted</description> </history> </review> <review state="accepted" when="2015-03-25T16:24:32" who="factory-auto" by_group="factory-auto"> <comment>Check script succeeded</comment> <history who="factory-auto" when="2015-03-25T16:24:59"> <description>Review got accepted</description> <comment>Check script succeeded</comment> </history> </review> <review state="accepted" when="2015-03-25T16:24:32" who="coolo" by_group="factory-staging"> <comment>No need for staging, not in tested ring projects.</comment> <history who="coolo" when="2015-03-25T20:47:33"> <description>Review got accepted</description> <comment>No need for staging, not in tested ring projects.</comment> </history> </review> <review state="new" by_user="******"> <comment>Please review sources</comment> </review> <review state="accepted" when="2015-03-25T16:24:59" who="factory-repo-checker" by_user="******"> <comment>Builds for repo editors/openSUSE_Factory</comment> <history who="factory-repo-checker" when="2015-03-25T18:28:47"> <description>Review got accepted</description> <comment>Builds for repo editors/openSUSE_Factory</comment> </history> </review> <history who="darix" when="2015-03-25T16:24:32"> <description>Request created</description> </history> <history who="factory-auto" when="2015-03-25T16:24:59"> <description>Request got a new review request</description> <comment>Please review sources</comment> </history> <history who="factory-auto" when="2015-03-25T16:24:59"> <description>Request got a new review request</description> <comment>Please review build success</comment> </history> </request> """ self._nano_meta = """<package name="nano" project="openSUSE:Factory"> <title>Pico Editor Clone with Enhancements</title> <description>GNU nano is a small and friendly text editor. It aims to emulate the Pico text editor while also offering a few enhancements.</description> <devel project="editors" package="nano"/> </package>""" def _run_with_data(self, accept, exists_in_factory, issues_data): # exists_in_factory: whether the package is exists in factory httpretty.register_uri(httpretty.POST, osc.core.makeurl( APIURL, ['source', "editors", "nano"], { 'cmd': 'diff', 'onlyissues': '1', 'view': 'xml', 'opackage': 'nano', 'oproject': 'openSUSE:Factory', 'rev': '25' }), match_querystring=True, body=issues_data) httpretty.register_uri( httpretty.GET, osc.core.makeurl(APIURL, ['source', "editors", "nano"], { 'rev': '25', 'view': 'info' }), match_querystring=True, body= """<sourceinfo package="nano" rev="25" vrev="35" srcmd5="aa7cce4956a86aee36c3f38aa37eee2b" lsrcmd5="c26618f949f5869cabcd6f989fb040ca" verifymd5="fc6b5b47f112848a1eb6fb8660b7800b"><filename>nano.spec</filename><linked project="openSUSE:Factory" package="nano" /></sourceinfo>""" ) if exists_in_factory is True: httpretty.register_uri( httpretty.GET, osc.core.makeurl( APIURL, ['source', "openSUSE:Factory", "nano", '_meta'], {}), match_querystring=True, body=self._nano_meta) httpretty.register_uri( httpretty.GET, osc.core.makeurl(APIURL, ['source', "openSUSE:Factory", "nano"], {'view': 'info'}), match_querystring=True, body= """<sourceinfo package="nano" rev="25" vrev="35" srcmd5="aa7cce4956a86aee36c3f38aa37eee2b" lsrcmd5="c26618f949f5869cabcd6f989fb040ca" verifymd5="fc6b5b47f112848a1eb6fb8660b7800b"><filename>nano.spec</filename><linked project="openSUSE:Factory" package="nano" /></sourceinfo>""" ) else: httpretty.register_uri( httpretty.GET, osc.core.makeurl( APIURL, ['source', "openSUSE:Factory", "nano", '_meta'], {}), status=404, match_querystring=True, body="") httpretty.register_uri( httpretty.GET, osc.core.makeurl(APIURL, ['source', "openSUSE:Factory", "nano"], {'view': 'info'}), status=404, match_querystring=True, body="") httpretty.register_uri(httpretty.GET, APIURL + "/request/293129", match_querystring=True, body=self._request_data) httpretty.register_uri(httpretty.GET, APIURL + "/request/293129?withhistory=1", match_querystring=True, body=self._request_withhistory) httpretty.register_uri(httpretty.GET, re.compile( re.escape(APIURL + "/search/request?")), match_querystring=True, body='<collection matches="0"></collection>') result = {'state_accepted': None} def change_request(result, method, uri, headers): u = urlparse.urlparse(uri) if u.query == 'newstate=accepted&cmd=changereviewstate&by_user=maintbot': result['state_accepted'] = True elif u.query == 'newstate=declined&cmd=changereviewstate&by_user=maintbot': result['state_accepted'] = False return (200, headers, '<status code="ok"/>') httpretty.register_uri(httpretty.POST, APIURL + "/request/293129", body=lambda method, uri, headers: change_request(result, method, uri, headers)) self.checker.set_request_ids(['293129']) self.checker.check_requests() self.assertEqual(result['state_accepted'], accept) def test_1_issue_accept(self): # a new package and has issues self._run_with_data( True, False, """<sourcediff key="4ecfa5c08d7765060b4fa248aab3c7e7"> <old project="home:snwint:sle12-sp1" package="perl-Bootloader" rev="4" srcmd5="bb554c82d62186fa4c4440ba36651028" /> <new project="SUSE:SLE-12-SP1:GA" package="perl-Bootloader" rev="23" srcmd5="231d457675a9fca041b22d84df9d4464" /> <files /> <issues> <issue state="changed" tracker="bnc" name="151877" label="boo#151877" url="https://bugzilla.suse.com/show_bug.cgi?id=151877" /> </issues> </sourcediff>""") def test_3_issues_accept(self): # not a new package and has issues # changes already in Factory self._run_with_data( True, True, """<sourcediff key="4ecfa5c08d7765060b4fa248aab3c7e7"> <old project="home:snwint:sle12-sp1" package="perl-Bootloader" rev="4" srcmd5="bb554c82d62186fa4c4440ba36651028" /> <new project="SUSE:SLE-12-SP1:GA" package="perl-Bootloader" rev="23" srcmd5="231d457675a9fca041b22d84df9d4464" /> <files /> <issues> <issue state="changed" tracker="bnc" name="151877" label="boo#151877" url="https://bugzilla.suse.com/show_bug.cgi?id=151877" /> <issue state="changed" tracker="fate" name="110038" label="fate#110038" url="https://fate.suse.com/110038" /> <issue state="deleted" tracker="bnc" name="831791" label="boo#831791" url="https://bugzilla.suse.com/show_bug.cgi?id=831791" /> </issues> </sourcediff>""") def test_no_issues_decline(self): # a new package and has without issues self._run_with_data( False, False, """<sourcediff key="4ecfa5c08d7765060b4fa248aab3c7e7"> <old project="home:snwint:sle12-sp1" package="perl-Bootloader" rev="4" srcmd5="bb554c82d62186fa4c4440ba36651028" /> <new project="SUSE:SLE-12-SP1:GA" package="perl-Bootloader" rev="23" srcmd5="231d457675a9fca041b22d84df9d4464" /> <files /> <issues/> </sourcediff>""") def test_no_issues_tag_decline(self): # a new package and has without issues tag self._run_with_data( False, False, """<sourcediff key="4ecfa5c08d7765060b4fa248aab3c7e7"> <old project="home:snwint:sle12-sp1" package="perl-Bootloader" rev="4" srcmd5="bb554c82d62186fa4c4440ba36651028" /> <new project="SUSE:SLE-12-SP1:GA" package="perl-Bootloader" rev="23" srcmd5="231d457675a9fca041b22d84df9d4464" /> <files /> </sourcediff>""") def test_no_issues_accept(self): # not a new package and has without issues # changes already in Factory self._run_with_data( True, True, """<sourcediff key="4ecfa5c08d7765060b4fa248aab3c7e7"> <old project="home:snwint:sle12-sp1" package="perl-Bootloader" rev="4" srcmd5="bb554c82d62186fa4c4440ba36651028" /> <new project="SUSE:SLE-12-SP1:GA" package="perl-Bootloader" rev="23" srcmd5="231d457675a9fca041b22d84df9d4464" /> <files /> <issues/> </sourcediff>""") def test_no_issues_tag_accept(self): # not a new package and has without issues tag # changes already in Factory self._run_with_data( True, True, """<sourcediff key="4ecfa5c08d7765060b4fa248aab3c7e7"> <old project="home:snwint:sle12-sp1" package="perl-Bootloader" rev="4" srcmd5="bb554c82d62186fa4c4440ba36651028" /> <new project="SUSE:SLE-12-SP1:GA" package="perl-Bootloader" rev="23" srcmd5="231d457675a9fca041b22d84df9d4464" /> <files /> </sourcediff>""")
class TestTagChecker(unittest.TestCase): def tearDown(self): httpretty.reset() httpretty.disable() def setUp(self): """ Initialize the configuration """ Cache.last_updated[APIURL] = {'__oldest': '2016-12-18T11:49:37Z'} httpretty.reset() httpretty.enable() oscrc = os.path.join(FIXTURES, 'oscrc') osc.core.conf.get_config(override_conffile=oscrc, override_no_keyring=True, override_no_gnome_keyring=True) # osc.conf.config['debug'] = 1 logging.basicConfig() self.logger = logging.getLogger(__file__) self.logger.setLevel(logging.DEBUG) self.checker = TagChecker(apiurl=APIURL, user='******', logger=self.logger) self.checker.override_allow = False # Test setup cannot handle. self._request_data = """ <request id="293129" creator="darix"> <action type="submit"> <source project="editors" package="nano" rev="25"/> <target project="openSUSE:Factory" package="nano"/> </action> <state name="review" who="factory-auto" when="2015-03-25T16:24:59"> <comment>Please review build success</comment> </state> <review state="accepted" when="2015-03-25T16:24:32" who="licensedigger" by_group="legal-auto"> <comment></comment> <history who="licensedigger" when="2015-03-25T16:30:13"> <description>Review got accepted</description> </history> </review> <review state="accepted" when="2015-03-25T16:24:32" who="factory-auto" by_group="factory-auto"> <comment>Check script succeeded</comment> <history who="factory-auto" when="2015-03-25T16:24:59"> <description>Review got accepted</description> <comment>Check script succeeded</comment> </history> </review> <review state="accepted" when="2015-03-25T16:24:32" who="coolo" by_group="factory-staging"> <comment>No need for staging, not in tested ring projects.</comment> <history who="coolo" when="2015-03-25T20:47:33"> <description>Review got accepted</description> <comment>No need for staging, not in tested ring projects.</comment> </history> </review> <review state="new" by_user="******"> <comment>Please review sources</comment> </review> <review state="accepted" when="2015-03-25T16:24:59" who="factory-repo-checker" by_user="******"> <comment>Builds for repo editors/openSUSE_Factory</comment> <history who="factory-repo-checker" when="2015-03-25T18:28:47"> <description>Review got accepted</description> <comment>Builds for repo editors/openSUSE_Factory</comment> </history> </review> </request> """ self._request_withhistory = """ <request id="293129" creator="darix"> <action type="submit"> <source project="editors" package="nano" rev="25"/> <target project="openSUSE:Factory" package="nano"/> </action> <state name="review" who="factory-auto" when="2015-03-25T16:24:59"> <comment>Please review build success</comment> </state> <review state="accepted" when="2015-03-25T16:24:32" who="licensedigger" by_group="legal-auto"> <comment></comment> <history who="licensedigger" when="2015-03-25T16:30:13"> <description>Review got accepted</description> </history> </review> <review state="accepted" when="2015-03-25T16:24:32" who="factory-auto" by_group="factory-auto"> <comment>Check script succeeded</comment> <history who="factory-auto" when="2015-03-25T16:24:59"> <description>Review got accepted</description> <comment>Check script succeeded</comment> </history> </review> <review state="accepted" when="2015-03-25T16:24:32" who="coolo" by_group="factory-staging"> <comment>No need for staging, not in tested ring projects.</comment> <history who="coolo" when="2015-03-25T20:47:33"> <description>Review got accepted</description> <comment>No need for staging, not in tested ring projects.</comment> </history> </review> <review state="new" by_user="******"> <comment>Please review sources</comment> </review> <review state="accepted" when="2015-03-25T16:24:59" who="factory-repo-checker" by_user="******"> <comment>Builds for repo editors/openSUSE_Factory</comment> <history who="factory-repo-checker" when="2015-03-25T18:28:47"> <description>Review got accepted</description> <comment>Builds for repo editors/openSUSE_Factory</comment> </history> </review> <history who="darix" when="2015-03-25T16:24:32"> <description>Request created</description> </history> <history who="factory-auto" when="2015-03-25T16:24:59"> <description>Request got a new review request</description> <comment>Please review sources</comment> </history> <history who="factory-auto" when="2015-03-25T16:24:59"> <description>Request got a new review request</description> <comment>Please review build success</comment> </history> </request> """ self._nano_meta = """<package name="nano" project="openSUSE:Factory"> <title>Pico Editor Clone with Enhancements</title> <description>GNU nano is a small and friendly text editor. It aims to emulate the Pico text editor while also offering a few enhancements.</description> <devel project="editors" package="nano"/> </package>""" def _run_with_data(self, accept, exists_in_factory, issues_data): # exists_in_factory: whether the package is exists in factory httpretty.register_uri(httpretty.POST, APIURL + '/source/editors/nano', body=issues_data) httpretty.register_uri(httpretty.GET, APIURL + '/source/editors/nano', body="""<sourceinfo package="nano" rev="25" vrev="35" srcmd5="aa7cce4956a86aee36c3f38aa37eee2b" lsrcmd5="c26618f949f5869cabcd6f989fb040ca" verifymd5="fc6b5b47f112848a1eb6fb8660b7800b"><filename>nano.spec</filename><linked project="openSUSE:Factory" package="nano" /></sourceinfo>""") if exists_in_factory is True: httpretty.register_uri(httpretty.GET, osc.core.makeurl(APIURL, ['source', "openSUSE:Factory", "nano", '_meta'], {}), match_querystring=True, body=self._nano_meta) httpretty.register_uri(httpretty.GET, osc.core.makeurl(APIURL, ['source', "openSUSE:Factory", "nano"], {'view': 'info'}), match_querystring=True, body="""<sourceinfo package="nano" rev="25" vrev="35" srcmd5="aa7cce4956a86aee36c3f38aa37eee2b" lsrcmd5="c26618f949f5869cabcd6f989fb040ca" verifymd5="fc6b5b47f112848a1eb6fb8660b7800b"><filename>nano.spec</filename><linked project="openSUSE:Factory" package="nano" /></sourceinfo>""") else: httpretty.register_uri(httpretty.GET, osc.core.makeurl(APIURL, ['source', "openSUSE:Factory", "nano", '_meta'], {}), status=404, match_querystring=True, body="") httpretty.register_uri(httpretty.GET, osc.core.makeurl(APIURL, ['source', "openSUSE:Factory", "nano"], {'view': 'info'}), status=404, match_querystring=True, body="") httpretty.register_uri(httpretty.GET, APIURL + '/request/293129', body=self._request_data) httpretty.register_uri(httpretty.GET, APIURL + "/request/293129?withhistory=1", match_querystring=True, body=self._request_withhistory) httpretty.register_uri(httpretty.GET, APIURL + '/search/request', body='<collection matches="0"></collection>') httpretty.register_uri(httpretty.GET, APIURL + "/source/openSUSE:Factory/00Meta/lookup.yml", status = 404) result = {'state_accepted': None} def change_request(result, method, uri, headers): query = parse_qs(urlparse(uri).query) if query == { 'by_user': ['maintbot'], 'cmd': ['changereviewstate'], 'newstate': ['accepted']}: result['state_accepted'] = True elif query == { 'by_user': ['maintbot'], 'cmd': ['changereviewstate'], 'newstate': ['declined']}: result['state_accepted'] = False return (200, headers, '<status code="ok"/>') httpretty.register_uri(httpretty.POST, APIURL + "/request/293129", body=lambda method, uri, headers: change_request(result, method, uri, headers)) self.checker.set_request_ids(['293129']) self.checker.check_requests() self.assertEqual(result['state_accepted'], accept) def test_1_issue_accept(self): # a new package and has issues self._run_with_data(True, False, """<sourcediff key="4ecfa5c08d7765060b4fa248aab3c7e7"> <old project="home:snwint:sle12-sp1" package="perl-Bootloader" rev="4" srcmd5="bb554c82d62186fa4c4440ba36651028" /> <new project="SUSE:SLE-12-SP1:GA" package="perl-Bootloader" rev="23" srcmd5="231d457675a9fca041b22d84df9d4464" /> <files /> <issues> <issue state="changed" tracker="bnc" name="151877" label="boo#151877" url="https://bugzilla.suse.com/show_bug.cgi?id=151877" /> </issues> </sourcediff>""") def test_3_issues_accept(self): # not a new package and has issues # changes already in Factory self._run_with_data(True, True, """<sourcediff key="4ecfa5c08d7765060b4fa248aab3c7e7"> <old project="home:snwint:sle12-sp1" package="perl-Bootloader" rev="4" srcmd5="bb554c82d62186fa4c4440ba36651028" /> <new project="SUSE:SLE-12-SP1:GA" package="perl-Bootloader" rev="23" srcmd5="231d457675a9fca041b22d84df9d4464" /> <files /> <issues> <issue state="changed" tracker="bnc" name="151877" label="boo#151877" url="https://bugzilla.suse.com/show_bug.cgi?id=151877" /> <issue state="changed" tracker="fate" name="110038" label="fate#110038" url="https://fate.suse.com/110038" /> <issue state="deleted" tracker="bnc" name="831791" label="boo#831791" url="https://bugzilla.suse.com/show_bug.cgi?id=831791" /> </issues> </sourcediff>""") def test_no_issues_decline(self): # a new package and has without issues self._run_with_data(False, False, """<sourcediff key="4ecfa5c08d7765060b4fa248aab3c7e7"> <old project="home:snwint:sle12-sp1" package="perl-Bootloader" rev="4" srcmd5="bb554c82d62186fa4c4440ba36651028" /> <new project="SUSE:SLE-12-SP1:GA" package="perl-Bootloader" rev="23" srcmd5="231d457675a9fca041b22d84df9d4464" /> <files /> <issues/> </sourcediff>""") def test_no_issues_tag_decline(self): # a new package and has without issues tag self._run_with_data(False, False, """<sourcediff key="4ecfa5c08d7765060b4fa248aab3c7e7"> <old project="home:snwint:sle12-sp1" package="perl-Bootloader" rev="4" srcmd5="bb554c82d62186fa4c4440ba36651028" /> <new project="SUSE:SLE-12-SP1:GA" package="perl-Bootloader" rev="23" srcmd5="231d457675a9fca041b22d84df9d4464" /> <files /> </sourcediff>""") def test_no_issues_accept(self): # not a new package and has without issues # changes already in Factory self._run_with_data(True, True, """<sourcediff key="4ecfa5c08d7765060b4fa248aab3c7e7"> <old project="home:snwint:sle12-sp1" package="perl-Bootloader" rev="4" srcmd5="bb554c82d62186fa4c4440ba36651028" /> <new project="SUSE:SLE-12-SP1:GA" package="perl-Bootloader" rev="23" srcmd5="231d457675a9fca041b22d84df9d4464" /> <files /> <issues/> </sourcediff>""") def test_no_issues_tag_accept(self): # not a new package and has without issues tag # changes already in Factory self._run_with_data(True, True, """<sourcediff key="4ecfa5c08d7765060b4fa248aab3c7e7"> <old project="home:snwint:sle12-sp1" package="perl-Bootloader" rev="4" srcmd5="bb554c82d62186fa4c4440ba36651028" /> <new project="SUSE:SLE-12-SP1:GA" package="perl-Bootloader" rev="23" srcmd5="231d457675a9fca041b22d84df9d4464" /> <files /> </sourcediff>""")