Fix tests

This commit is contained in:
2014-07-04 15:20:28 +02:00
parent e38f0f9a0d
commit b73b0bb45d
7 changed files with 46 additions and 4 deletions

View File

@@ -32,6 +32,9 @@ class TestCheckRepoCalls(unittest.TestCase):
self.obs = OBS()
self.checkrepo = CheckRepo(APIURL)
# Des-memoize some functions
self.checkrepo.build = self.checkrepo._build
self.checkrepo.last_build_success = self.checkrepo._last_build_success
def test_packages_grouping(self):
"""Validate the creation of the groups."""
@@ -64,3 +67,10 @@ class TestCheckRepoCalls(unittest.TestCase):
request_and_specs = self.checkrepo.check_specs(request_id=request_id)
self.assertEqual(len(request_and_specs), 1)
self.assertEqual(request_and_specs[0].request_id, request_id)
def test_repos_to_check(self):
"""Test CheckRepo.repositories_to_check."""
for request in self.checkrepo.pending_requests():
request_and_specs = self.checkrepo.check_specs(request=request)
for rq_or_spec in request_and_specs:
print self.checkrepo.repositories_to_check(rq_or_spec)

View File

@@ -0,0 +1 @@
source_info.xml

View File

@@ -0,0 +1 @@
source_info.xml

View File

@@ -0,0 +1,4 @@
<sourceinfo package="${name}" rev="${rev}" vrev="${vrev}" srcmd5="${srcmd5}" lsrcmd5="${lsrcmd5}" verifymd5="${verifymd5}">
<filename>${name}.spec</filename>
<linked project="openSUSE:Factory" package="${name}" />
</sourceinfo>

View File

@@ -311,12 +311,16 @@ class OBS(object):
'vrev': '1',
'name': 'emacs',
'srcmd5': 'de7a9f5e3bedb01980465f3be3d236cb',
'lsrcmd5': 'de7a9f5e3bedb01980465f3be3d236cb',
'verifymd5': 'de7a9f5e3bedb01980465f3be3d236cb',
},
'home:Admin/python': {
'rev': '1',
'vrev': '1',
'name': 'python',
'srcmd5': 'de7a9f5e3bedb01980465f3be3d236cb',
'lsrcmd5': 'de7a9f5e3bedb01980465f3be3d236cb',
'verifymd5': 'de7a9f5e3bedb01980465f3be3d236cb',
},
}
@@ -537,14 +541,20 @@ class OBS(object):
return response
@GET(re.compile(r'/source/home:Admin/\w+(\?rev=\w+&expand=1)?'))
@GET(re.compile(r'/source/home:Admin/\w+'))
def source_project(self, request, uri, headers):
"""Return information of a source package."""
package = re.search(r'/source/([\w:]+/\w+)', uri).group(1)
qs = urlparse.parse_qs(urlparse.urlparse(uri).query)
index = re.search(r'/source/([\w:]+/\w+)', uri).group(1)
project, package = index.split('/')
response = (404, headers, '<result>Not found</result>')
suffix = '_expanded' if 'expanded' in qs else '_info' if 'info' in qs else ''
path = os.path.join('source', project, package + suffix)
try:
template = string.Template(self._fixture(uri))
response = (200, headers, template.substitute(self.package[package]))
template = string.Template(self._fixture(path=path))
response = (200, headers, template.substitute(self.package[index]))
except Exception as e:
if DEBUG:
print uri, e
@@ -603,6 +613,22 @@ class OBS(object):
# /build/
#
# @GET(re.compile(r'build/home:Admin/_result'))
# def build_lastsuccess(self, request, uri, headers):
# package = re.search(r'/source/([\w:]+/\w+)', uri).group(1)
# response = (404, headers, '<result>Not found</result>')
# try:
# template = string.Template(self._fixture(uri))
# response = (200, headers, template.substitute(self.package[package]))
# except Exception as e:
# if DEBUG:
# print uri, e
# if DEBUG:
# print 'BUILD _RESULT LASTBUILDSUCCESS', package, uri, response
# return response
#
# /search/
#