Skip to content

Commit 30c1499

Browse files
committed
Show mentors a link to download the current submissions
1 parent 8d16996 commit 30c1499

File tree

2 files changed

+26
-0
lines changed

2 files changed

+26
-0
lines changed

templates/index.html

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,15 @@
3131
<body>
3232
<div class="container">
3333
<h1>Virtual Competition Code Submission</h1>
34+
{% if 'blueshirt' in request.auth.scopes %}
35+
<div class="row">
36+
<div class="col-sm-6">
37+
<a href="{{ url_for('download_submissions') }}">
38+
Download current chosen submissions
39+
</a>
40+
</div>
41+
</div>
42+
{% endif %}
3443
<div class="row">
3544
{% if request.user.team %}
3645
<form

tests/tests_app.py

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -276,6 +276,23 @@ def test_upload_archive_without_robot_py(self) -> None:
276276
)
277277
self.assertEqual([], choices, "Should not have created a choice")
278278

279+
def test_no_download_link_for_non_blueshirt(self) -> None:
280+
download_url = self.url_for('download_submissions')
281+
282+
response = self.session.get(self.url_for('homepage'))
283+
284+
html = response.text
285+
self.assertNotIn(download_url, html)
286+
287+
def test_shows_download_link_for_blueshirt(self) -> None:
288+
self.session.auth = ('blueshirt', 'blueshirt')
289+
290+
download_url = self.url_for('download_submissions')
291+
292+
response = self.session.get(self.url_for('homepage'))
293+
html = response.text
294+
self.assertIn(download_url, html)
295+
279296
def test_download_submissions_requires_blueshirt(self) -> None:
280297
response = self.session.get(self.url_for('download_submissions'))
281298
self.assertEqual(403, response.status_code)

0 commit comments

Comments
 (0)