Skip to content
This repository has been archived by the owner on Jun 12, 2021. It is now read-only.

Commit

Permalink
fixes bug 713909 - [tinder] generateLog should raise better errors on…
Browse files Browse the repository at this point in the history
… missing files, r=Pike
  • Loading branch information
peterbe committed Apr 11, 2013
1 parent 3dfbe49 commit 34492dc
Show file tree
Hide file tree
Showing 2 changed files with 27 additions and 2 deletions.
20 changes: 19 additions & 1 deletion apps/tinder/tests.py
Expand Up @@ -16,7 +16,7 @@
from django.test.client import Client
from mbdb.models import (Build, Change, Master, Log, Property, SourceStamp,
Builder, Slave)
from tinder.views import _waterfall
from tinder.views import _waterfall, LogMountKeyError
from tinder.templatetags import build_extras


Expand Down Expand Up @@ -319,6 +319,24 @@ def test_showlog(self):
ok_('<span class="pre stderr">stderr content\n</span>' in content)
ok_('json' not in content)

def test_showlog_invalid_master(self):
master = Master.objects.all()[0]

build = Build.objects.all()[0]
step = build.steps.all()[0]
log = Log.objects.create(
name='foo',
filename='foo.log',
step=step,
)
url = reverse('tinder.views.showlog',
args=[master.name, log.filename])
self.assertRaises(
LogMountKeyError,
self.client.get,
url
)

def test_render_tbpl(self):
url = reverse('tinder.views.tbpl')
response = self.client.get(url)
Expand Down
9 changes: 8 additions & 1 deletion apps/tinder/views.py
Expand Up @@ -30,6 +30,10 @@
resultclasses = ['success', 'warning', 'failure', 'skip', 'except']


class LogMountKeyError(Exception):
pass


def debug_(*msg):
if False:
print ' '.join(msg)
Expand Down Expand Up @@ -703,7 +707,10 @@ def generateLog(master, filename):
try:
base = settings.LOG_MOUNTS[master]
except KeyError:
raise Http404("Master `%s` not found" % master)
raise LogMountKeyError(
'The log mount %r is not in settings.LOG_MOUNTS'
% master
)
head = re.compile('(\d+):(\d)')
f = None
filename = os.path.join(base, filename)
Expand Down

0 comments on commit 34492dc

Please sign in to comment.