parent
f095600f9b
commit
a2cf55aaff
@ -66,7 +66,7 @@ class MaintenanceChecker(ReviewBot.ReviewBot):
|
||||
for p in root.findall('./owner'):
|
||||
prj = p.get("project")
|
||||
pkg = p.get("package")
|
||||
if ((pkg, prj) in package_reviews):
|
||||
if ((prj, pkg) in package_reviews):
|
||||
# there already is a review for this project/package
|
||||
continue
|
||||
self.add_review(req, by_project = prj, by_package = pkg,
|
||||
|
@ -41,6 +41,8 @@ class TestMaintenance(unittest.TestCase):
|
||||
logger = self.logger)
|
||||
|
||||
def test_non_maintainer_submit(self):
|
||||
"""same as above but already has devel project as reviewer
|
||||
"""
|
||||
|
||||
httpretty.register_uri(httpretty.GET,
|
||||
rr("/search/request?match=state/@name='review'+and+review[@by_user='maintbot'+and+@state='new']&withhistory=1"),
|
||||
@ -146,6 +148,120 @@ class TestMaintenance(unittest.TestCase):
|
||||
|
||||
self.assertTrue(result['devel_review_added'])
|
||||
|
||||
def test_non_maintainer_double_review(self):
|
||||
|
||||
httpretty.register_uri(httpretty.GET,
|
||||
rr("/search/request?match=state/@name='review'+and+review[@by_user='maintbot'+and+@state='new']&withhistory=1"),
|
||||
match_querystring = True,
|
||||
body = """
|
||||
<collection matches="1">
|
||||
<request id="261355">
|
||||
<action type="maintenance_incident">
|
||||
<source project="home:brassh" package="mysql-workbench" rev="857c77d2ba1d347b6dc50a1e5bcb74e1"/>
|
||||
<target project="openSUSE:Maintenance" releaseproject="openSUSE:13.2:Update"/>
|
||||
</action>
|
||||
<state name="review" who="lnussel_factory" when="2014-11-13T10:46:52">
|
||||
<comment></comment>
|
||||
</state>
|
||||
<review state="new" by_user="maintbot">
|
||||
<comment></comment>
|
||||
</review>
|
||||
<review state="new" by_package="mysql-workbench" by_project="server:database">
|
||||
<comment>review by devel project</comment>
|
||||
</review>
|
||||
<history who="brassh" when="2014-11-13T09:18:19">
|
||||
<description>Request created</description>
|
||||
<comment>...</comment>
|
||||
</history>
|
||||
<history who="lnussel_factory" when="2014-11-13T10:46:52">
|
||||
<description>Request got a new review request</description>
|
||||
</history>
|
||||
<description>...</description>
|
||||
</request>
|
||||
</collection>
|
||||
""")
|
||||
|
||||
httpretty.register_uri(httpretty.GET,
|
||||
APIURL + "/request/261355",
|
||||
match_querystring = True,
|
||||
body = """
|
||||
<request id="261355">
|
||||
<action type="maintenance_incident">
|
||||
<source project="home:brassh" package="mysql-workbench" rev="857c77d2ba1d347b6dc50a1e5bcb74e1"/>
|
||||
<target project="openSUSE:Maintenance" releaseproject="openSUSE:13.2:Update"/>
|
||||
</action>
|
||||
<state name="review" who="lnussel_factory" when="2014-11-13T10:46:52">
|
||||
<comment></comment>
|
||||
</state>
|
||||
<review state="new" by_user="maintbot">
|
||||
<comment></comment>
|
||||
</review>
|
||||
<review state="new" by_package="mysql-workbench" by_project="server:database">
|
||||
<comment>review by devel project</comment>
|
||||
</review>
|
||||
<history who="brassh" when="2014-11-13T09:18:19">
|
||||
<description>Request created</description>
|
||||
<comment>...</comment>
|
||||
</history>
|
||||
<history who="lnussel_factory" when="2014-11-13T10:46:52">
|
||||
<description>Request got a new review request</description>
|
||||
</history>
|
||||
<description>...</description>
|
||||
</request>
|
||||
""")
|
||||
|
||||
httpretty.register_uri(httpretty.GET,
|
||||
APIURL + "/source/home:brassh/mysql-workbench",
|
||||
match_querystring = True,
|
||||
body = """
|
||||
<directory name="mysql-workbench" rev="6" vrev="6" srcmd5="858204decf53f923d5574dbe6ae63b15">
|
||||
<linkinfo project="openSUSE:13.2" package="mysql-workbench" srcmd5="ed9c3b12388cbd14868eb3faabe34685" baserev="ed9c3b12388cbd14868eb3faabe34685" xsrcmd5="08bfb4f40cb1e2de8f9cd4633bf02eb1" lsrcmd5="858204decf53f923d5574dbe6ae63b15" />
|
||||
<serviceinfo code="succeeded" xsrcmd5="6ec4305a8e5363e26a7f4895a0ae12d2" />
|
||||
<entry name="_link" md5="85ef5fb38ca1ec7c300311fda9f4b3d1" size="121" mtime="1414567341" />
|
||||
<entry name="mysql-workbench-community-6.1.7-src.tar.gz" md5="ac059e239869fb77bf5d7a1f5845a8af" size="24750696" mtime="1404405925" />
|
||||
<entry name="mysql-workbench-ctemplate.patch" md5="06ccba1f8275cd9408f515828ecede19" size="1322" mtime="1404658323" />
|
||||
<entry name="mysql-workbench-glib.patch" md5="67fd7d8e3503ce0909381bde747c8a1e" size="1785" mtime="1415732509" />
|
||||
<entry name="mysql-workbench-mysql_options4.patch" md5="9c07dfe1b94af95daf3e16bd6a161684" size="910" mtime="1404658324" />
|
||||
<entry name="mysql-workbench-no-check-for-updates.patch" md5="1f0c9514ff8218d361ea46d3031b2b64" size="1139" mtime="1404658324" />
|
||||
<entry name="mysql-workbench.changes" md5="26bc54777e6a261816b72f64c69630e4" size="13354" mtime="1415747835" />
|
||||
<entry name="mysql-workbench.spec" md5="88b562a93f01b842a5798f809e3c8188" size="7489" mtime="1415745943" />
|
||||
<entry name="openSUSE_(Vendor_Package).xml" md5="ab041af98d7748c216e7e5787ec36f65" size="743" mtime="1315923090" />
|
||||
<entry name="patch-desktop-categories.patch" md5="c24b3283573c34a5e072be122388f8e1" size="391" mtime="1376991147" />
|
||||
</directory>
|
||||
""")
|
||||
|
||||
result = { 'devel_review_added' : None }
|
||||
|
||||
def change_request(result, method, uri, headers):
|
||||
u = urlparse.urlparse(uri)
|
||||
if u.query == 'by_package=mysql-workbench&cmd=addreview&by_project=server%3Adatabase':
|
||||
result['devel_review_added'] = True
|
||||
return (200, headers, '<status code="ok"/>')
|
||||
|
||||
httpretty.register_uri(httpretty.POST,
|
||||
APIURL + "/request/261355",
|
||||
body = lambda method, uri, headers: change_request(result, method, uri, headers))
|
||||
|
||||
httpretty.register_uri(httpretty.GET,
|
||||
rr("/search/owner?binary=mysql-workbench"),
|
||||
match_querystring = True,
|
||||
body = """
|
||||
<collection>
|
||||
<owner rootproject="openSUSE" project="server:database" package="mysql-workbench">
|
||||
<person name="Gankov" role="maintainer"/>
|
||||
<person name="bruno_friedmann" role="maintainer"/>
|
||||
</owner>
|
||||
</collection>
|
||||
""")
|
||||
|
||||
self.checker.requests = []
|
||||
self.checker.set_request_ids_search_review()
|
||||
self.checker.check_requests()
|
||||
|
||||
self.assertFalse(result['devel_review_added'])
|
||||
|
||||
|
||||
|
||||
def test_cpe_submit(self):
|
||||
|
||||
httpretty.register_uri(httpretty.GET,
|
||||
|
Loading…
x
Reference in New Issue
Block a user