Skip to content

Commit 0bedf8f

Browse files
Merge pull request #3 from antgonza/better-file-listing
minor improvements to the file listing
2 parents fe9086b + 61ab605 commit 0bedf8f

File tree

4 files changed

+27
-22
lines changed

4 files changed

+27
-22
lines changed

.github/workflows/qiita-plugin-ci.yml

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -62,8 +62,9 @@ jobs:
6262
6363
# Setting up main qiita conda environment
6464
conda config --add channels conda-forge
65-
conda create -q --yes -n qiita python=3.6 pip libgfortran numpy nginx cython redis
65+
conda create -q --yes -n qiita python=3.6 pip==9.0.3 libgfortran numpy nginx cython redis
6666
conda activate qiita
67+
pip install --upgrade pip
6768
pip install sphinx sphinx-bootstrap-theme nose-timer codecov Click
6869
6970
- name: Qiita install
@@ -76,7 +77,7 @@ jobs:
7677
- name: Install Qiita plugins
7778
shell: bash -l {0}
7879
run: |
79-
conda create -q --yes -n qtp-job-output-folder python=3.6
80+
conda create -q --yes -n qtp-job-output-folder python=3.6 pip==9.0.3
8081
conda activate qtp-job-output-folder
8182
8283
export QIITA_SERVER_CERT=`pwd`/qiita-dev/qiita_core/support_files/server.crt

qtp_job_output_folder/summary.py

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
# The full license is in the file LICENSE, distributed with this software.
77
# -----------------------------------------------------------------------------
88

9-
from os.path import exists, isdir, join
9+
from os.path import exists, isdir, join, dirname
1010
from glob import glob
1111
from json import dumps
1212

@@ -26,11 +26,15 @@ def _generate_html_summary(jid, folder, out_dir):
2626
summary = f'<h3><b>{folder}</b> does not exist.</h3>'
2727

2828
if exists(folder) and isdir(folder):
29+
# calculating the "trimming" for the fullpaths, +1 is to remove /
30+
tname = len(dirname(folder)) + 1
31+
tlink = len(dirname(dirname(folder)))
2932
summary = '<br/>\n'.join([
30-
f'<a href="{f}" type="{ft}" target="_blank">{f}</a>'
33+
f'<a href=".{f[tlink:]}" type="{ft}" target="_blank">'
34+
f'{f[tname:]}</a>'
3135
for ft, f in _folder_listing(folder)])
3236

33-
index_fp = join(out_dir, f"summary_{jid}.html")
37+
index_fp = join(out_dir, "summary.html")
3438
with open(index_fp, 'w') as of:
3539
of.write(summary)
3640

qtp_job_output_folder/tests/test_summary.py

Lines changed: 16 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -63,32 +63,32 @@ def test_summary(self):
6363
# cleaning artifact files, to avoid errors
6464
[self._clean_up_files.extend(f) for f in res['files'].values()]
6565
html_fp = res['files']['html_summary'][0]
66-
af = dirname(html_fp)
6766
self._clean_up_files.append(html_fp)
6867
with open(html_fp) as html_f:
6968
html = html_f.read()
7069

71-
self.assertEqual(html, EXP_HTML.format(af=af))
70+
self.assertCountEqual(
71+
html.split('\n'), EXP_HTML.format(aid=aid).split('\n'))
7272

7373

7474
EXP_HTML = (
75-
'<a href="{af}/test_data/file_2" type="file" target="_blank">{af}/'
75+
'<a href="./{aid}/test_data/folder_a" type="folder" target="_blank">'
76+
'test_data/folder_a</a><br/>\n'
77+
'<a href="./{aid}/test_data/folder_a/folder_b/folder_c" type="folder" '
78+
'target="_blank">test_data/folder_a/folder_b/folder_c</a><br/>\n'
79+
'<a href="./{aid}/test_data/file_2" type="file" target="_blank">'
7680
'test_data/file_2</a><br/>\n'
77-
'<a href="{af}/test_data/test_data" type="folder" target="_blank">{af}/'
81+
'<a href="./{aid}/test_data/file_1" type="file" target="_blank">'
82+
'test_data/file_1</a><br/>\n'
83+
'<a href="./{aid}/test_data/test_data" type="folder" target="_blank">'
7884
'test_data/test_data</a><br/>\n'
79-
'<a href="{af}/test_data/test_data/folder_a/folder_b" type="folder" '
80-
'target="_blank">{af}/test_data/test_data/folder_a/folder_b</a><br/>\n'
81-
'<a href="{af}/test_data/test_data/folder_a/folder_b/folder_c/file_c" '
82-
'type="file" target="_blank">{af}/test_data/test_data/folder_a/folder_b/'
85+
'<a href="./{aid}/test_data/test_data/folder_a/folder_b" type="folder" '
86+
'target="_blank">test_data/test_data/folder_a/folder_b</a><br/>\n'
87+
'<a href="./{aid}/test_data/test_data/folder_a/folder_b/folder_c/file_c" '
88+
'type="file" target="_blank">test_data/test_data/folder_a/folder_b/'
8389
'folder_c/file_c</a><br/>\n'
84-
'<a href="{af}/test_data/test_data/folder_a/file_a" type="file" '
85-
'target="_blank">{af}/test_data/test_data/folder_a/file_a</a><br/>\n'
86-
'<a href="{af}/test_data/file_1" type="file" target="_blank">{af}/'
87-
'test_data/file_1</a><br/>\n'
88-
'<a href="{af}/test_data/folder_a" type="folder" target="_blank">{af}/'
89-
'test_data/folder_a</a><br/>\n'
90-
'<a href="{af}/test_data/folder_a/folder_b/folder_c" type="folder" '
91-
'target="_blank">{af}/test_data/folder_a/folder_b/folder_c</a>')
90+
'<a href="./{aid}/test_data/test_data/folder_a/file_a" type="file" '
91+
'target="_blank">test_data/test_data/folder_a/file_a</a>')
9292

9393

9494
if __name__ == '__main__':

qtp_job_output_folder/tests/test_validate.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -60,7 +60,7 @@ def test_validate(self):
6060
self.assertTrue(obs_success)
6161
filepaths = [
6262
(f'{self.source_dir}', 'directory'),
63-
(f'{out_dir}/summary_{job_id}.html', 'html_summary')]
63+
(f'{out_dir}/summary.html', 'html_summary')]
6464
exp = [ArtifactInfo(None, 'job-output-folder', filepaths)]
6565
self.assertEqual(obs_ainfo, exp)
6666
self.assertEqual(obs_error, "")

0 commit comments

Comments
 (0)