-
-
Notifications
You must be signed in to change notification settings - Fork 1.1k
78 lines (63 loc) Β· 1.72 KB
/
e2e-eslint-workflow.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
on:
schedule:
- cron: '0 */4 * * *'
push:
branches:
- master
pull_request:
paths:
- .github/actions/prepare/action.yml
- .github/workflows/e2e-eslint-workflow.yml
- scripts/e2e-setup-ci.sh
name: 'E2E ESLint'
jobs:
chore:
name: 'Validating ESLint'
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: ./.github/actions/prepare
- name: 'Running the integration test'
run: |
source scripts/e2e-setup-ci.sh
yarn init -p
yarn add eslint @stylistic/eslint-plugin
cat > eslint.config.mjs <<EOT
import stylistic from '@stylistic/eslint-plugin'
export default [
{
plugins: {
'@stylistic': stylistic
},
rules: {
'@stylistic/semi': 'error',
}
}
]
EOT
echo '42;' | tee ok.js
yarn eslint ok.js
echo '42' | tee ko.js
! yarn eslint ko.js
- name: 'Running the TypeScript integration test'
run: |
source scripts/e2e-setup-ci.sh
yarn init -p
yarn add eslint typescript typescript-eslint
cat > eslint.config.mjs <<EOT
import tseslint from 'typescript-eslint';
export default tseslint.config(
tseslint.configs.recommended,
{
rules: {
'@typescript-eslint/explicit-function-return-type': 'error',
'@typescript-eslint/no-unused-vars': 'off',
},
});
EOT
echo 'const f = (): number => 42;' | tee ok.ts
yarn eslint ok.ts
echo 'const f = () => 42;' | tee ko.ts
! yarn eslint ko.ts
if: |
success() || failure()