-
Notifications
You must be signed in to change notification settings - Fork 3
129 lines (114 loc) · 3.64 KB
/
functional_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
name: Functional Tests
on:
pull_request:
branches: [main]
paths:
- "scripts/**"
- "action.yml"
- ".github/workflows/functional_tests.yml"
- ".github/functional_tests/**"
workflow_dispatch:
inputs:
toolchain:
description: "The Lean toolchain to use when running the tests."
required: false
default: "leanprover/lean4:v4.10.0"
# This environment variable is nessecary in addition ot the workflow_dispatch input
# because the workflow_dispatch input is not available when the workflow is triggered by a pull request
env:
toolchain: ${{ github.event.inputs.toolchain || 'leanprover/lean4:v4.10.0' }}
jobs:
lake-init-success:
runs-on: ubuntu-latest
strategy:
matrix:
# run `lean-action` on a package generated with `lake init` for:
# - a standalone package
# - a package with a mathlib dependency
# - a package with a `lakefile.toml` file
# see ./github/functional_tests/lake_init/action.yml for more details on lake-init-arguments
lake-init-arguments: ["standalone", "mathdep math", "tomltest .toml"]
steps:
- uses: actions/checkout@v4
- uses: ./.github/functional_tests/lake_init_success
with:
lake-init-arguments: ${{ matrix.lake-init-arguments}}
toolchain: ${{ env.toolchain }}
lake-init-failure:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: ./.github/functional_tests/lake_init_failure
with:
toolchain: ${{ env.toolchain }}
auto-config-true:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: ./.github/functional_tests/auto_config_true
with:
toolchain: ${{ env.toolchain }}
auto-config-false:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: ./.github/functional_tests/auto_config_false
with:
toolchain: ${{ env.toolchain }}
detect-mathlib:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: ./.github/functional_tests/mathlib_dependency
with:
toolchain: ${{ env.toolchain }}
lake-test-success:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: ./.github/functional_tests/lake_test_success
with:
toolchain: ${{ env.toolchain }}
lake-test-failure:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: ./.github/functional_tests/lake_test_failure
with:
toolchain: ${{ env.toolchain }}
lake-lint-success:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: ./.github/functional_tests/lake_lint_success
with:
toolchain: ${{ env.toolchain }}
lake-lint-failure:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: ./.github/functional_tests/lake_lint_failure
with:
toolchain: ${{ env.toolchain }}
lake-check-test-failure:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: ./.github/functional_tests/lake_check_test_failure
with:
toolchain: ${{ env.toolchain }}
subdirectory-lake-package:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: ./.github/functional_tests/subdirectory_lake_package
with:
toolchain: ${{ env.toolchain }}
macos-runner:
runs-on: macos-latest
steps:
- uses: actions/checkout@v4
- uses: ./.github/functional_tests/lake_init_success
with:
lake-init-arguments: "standalone"
toolchain: ${{ env.toolchain }}