mirror of
https://github.com/microsoft/qlib.git
synced 2026-07-02 02:21:18 +08:00
60 lines
1.7 KiB
YAML
60 lines
1.7 KiB
YAML
name: Test
|
|
|
|
on:
|
|
push:
|
|
branches: [ main ]
|
|
pull_request:
|
|
branches: [ main ]
|
|
|
|
jobs:
|
|
build:
|
|
|
|
runs-on: ${{ matrix.os }}
|
|
strategy:
|
|
matrix:
|
|
os: [windows-latest, ubuntu-16.04, ubuntu-18.04, macos-latest]
|
|
python-version: [3.6, 3.7, 3.8]
|
|
|
|
steps:
|
|
- uses: actions/checkout@v2
|
|
|
|
- name: Set up Python ${{ matrix.python-version }}
|
|
uses: actions/setup-python@v2
|
|
with:
|
|
python-version: ${{ matrix.python-version }}
|
|
|
|
- name: Install dependencies
|
|
run: |
|
|
pip install --upgrade cython
|
|
pip install numpy jupyter jupyter_contrib_nbextensions
|
|
python setup.py install
|
|
|
|
- name: Install Lightgbm for MacOS
|
|
if: runner.os == 'macOS'
|
|
run: |
|
|
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"
|
|
brew install lightgbm
|
|
|
|
- name: Install test dependencies
|
|
run: |
|
|
python -m pip install --upgrade pip
|
|
pip install flake8 pytest
|
|
|
|
- name: Lint with flake8
|
|
run: |
|
|
# stop the build if there are Python syntax errors or undefined names
|
|
flake8 . --count --select=E9,F63,F7,F82 --show-source --statistics
|
|
# exit-zero treats all errors as warnings. The GitHub editor is 127 chars wide
|
|
flake8 . --count --exit-zero --max-complexity=10 --max-line-length=127 --statistics
|
|
|
|
- name: Unit tests with Pytest
|
|
run: |
|
|
cd tests
|
|
pytest . --durations=0
|
|
|
|
- name: Test data downloads and examples
|
|
run: |
|
|
python scripts/get_data.py qlib_data_cn --target_dir ~/.qlib/qlib_data/cn_data
|
|
# cd examples
|
|
# estimator -c estimator/estimator_config.yaml
|
|
# jupyter nbconvert --execute estimator/analyze_from_estimator.ipynb --to html |