-
Notifications
You must be signed in to change notification settings - Fork 24
174 lines (168 loc) · 5.67 KB
/
tests.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
name: Tests
on:
- push
- pull_request
env:
COLREV_PACKAGES: >
colrev.literature_review
colrev.files_dir
colrev.export_man_prep
colrev.dedupe
colrev.colrev_cli_prescreen
colrev.local_index
colrev.unpaywall
colrev.download_from_website
colrev.colrev_cli_pdf_get_man
colrev.ocrmypdf
colrev.remove_coverpage
colrev.remove_last_page
colrev.grobid_tei
colrev.colrev_cli_pdf_prep_man
colrev.colrev_cli_screen
colrev.paper_md
colrev.source_specific_prep
colrev.exclude_non_latin_alphabets
colrev.exclude_collections
colrev.exclude_complementary_materials
colrev.local_index
colrev.exclude_languages
colrev.remove_urls_with_500_errors
colrev.remove_broken_ids
colrev.get_doi_from_urls
colrev.get_year_from_vol_iss_jour
colrev.crossref
colrev.pubmed
colrev.europe_pmc
colrev.dblp
colrev.open_library
colrev.unknown_source
colrev.conditional_prescreen
colrev.psycinfo
colrev.springer_link
colrev.acm_digital_library
colrev.abi_inform_proquest
colrev.scopus
colrev.taylor_and_francis
colrev.web_of_science
colrev.wiley
colrev.trid
colrev.jstor
colrev.ebsco_host
colrev.google_scholar
colrev.eric
colrev.ais_library
colrev.ieee
jobs:
test-minimal-deps:
strategy:
matrix:
platform: [ubuntu-latest]
python-version: ['3.12']
runs-on: ${{ matrix.platform }}
steps:
- uses: actions/checkout@v3
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v4
with:
python-version: ${{ matrix.python-version }}
- name: Install poetry
run: pipx install poetry
- name: Update setuptools
run: python -m pip install --upgrade pip setuptools --break-system-packages
- name: Install poetry dependencies
run: |
poetry install -E dev --verbose --no-cache
poetry run colrev install ${{ env.COLREV_PACKAGES }}
- name: Setup git
run: |
git config --global user.name "CoLRev update"
git config --global user.email "[email protected]"
git config --global url.https://github.com/.insteadOf git://github.com/
- name: Run poetry tests (minimal-deps)
run: poetry run pytest tests/0_core/ -vv
test-full-deps:
needs: test-minimal-deps
strategy:
matrix:
platform: [ubuntu-latest, macos-latest]
python-version: ['3.10', '3.11', '3.12']
runs-on: ${{ matrix.platform }}
steps:
- uses: actions/checkout@v3
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v4
with:
python-version: ${{ matrix.python-version }}
- name: Install poetry
run: |
pipx uninstall-all
rm -rf ~/.local/pipx/venvs/poetry
pipx install poetry --python $(python -c "import sys; print(sys.executable)")
poetry cache clear --all pypi
- name: Install poetry dependencies
run: |
poetry env remove python || true
poetry install -E dev --verbose --no-cache
poetry run colrev install ${{ env.COLREV_PACKAGES }}
- name: Setup git
run: |
git config --global user.name "CoLRev update"
git config --global user.email "[email protected]"
git config --global url.https://github.com/.insteadOf git://github.com/
- name: Run poetry tests
run: poetry run pytest --slow -vv
test-full-deps-windows: # Separate due to poetry installation concurrency issue: https://github.com/python-poetry/poetry/issues/7370
needs: test-minimal-deps
strategy:
matrix:
platform: [windows-latest]
python-version: ['3.12']
runs-on: ${{ matrix.platform }}
steps:
- uses: actions/checkout@v3
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v4
with:
python-version: ${{ matrix.python-version }}
- name: Install poetry
run: |
pipx install poetry --python $(python -c "import sys; print(sys.executable)")
poetry cache clear --all pypi
- name: Set POETRY_CACHE_DIR
run: echo "POETRY_CACHE_DIR=${{runner.temp}}/poetry_cache" >> $GITHUB_ENV
- name: Install poetry dependencies
run: |
poetry env remove python || true
poetry install -E dev --verbose --no-cache
poetry run colrev install ${{ env.COLREV_PACKAGES }}
- name: Setup git
run: |
git config --global user.name "CoLRev update"
git config --global user.email "[email protected]"
git config --global url.https://github.com/.insteadOf git://github.com/
- name: Run poetry tests
run: poetry run pytest --slow -vv
test-pip-install:
needs: test-minimal-deps
strategy:
matrix:
platform: [ubuntu-latest, macos-latest, windows-latest]
python-version: ['3.10', '3.11', '3.12']
runs-on: ${{ matrix.platform }}
steps:
- uses: actions/checkout@v3
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v4
with:
python-version: ${{ matrix.python-version }}
- name: Install via pip
run: |
pip install -e .[dev,tests]
colrev install ${{ env.COLREV_PACKAGES }}
- name: Setup git
run: |
git config --global user.name "CoLRev update"
git config --global user.email "[email protected]"
git config --global url.https://github.com/.insteadOf git://github.com/
- name: Run tests
run: pytest tests --slow -vv