Skip to content

Commit 7ebb80e

Browse files
authored
test: use unified github action yml (#739)
1 parent 091f467 commit 7ebb80e

File tree

7 files changed

+28
-122
lines changed

7 files changed

+28
-122
lines changed

.github/workflows/main.yml

Lines changed: 5 additions & 114 deletions
Original file line numberDiff line numberDiff line change
@@ -1,115 +1,6 @@
1-
name: CI
2-
3-
on: ['push', 'pull_request']
4-
1+
name: ✅ test
2+
on: [push, pull_request]
53
jobs:
6-
setup:
7-
runs-on: ubuntu-latest
8-
steps:
9-
- name: checkout
10-
uses: actions/checkout@v4
11-
12-
- uses: actions/setup-node@v4
13-
with:
14-
node-version: '20'
15-
16-
- name: cache package-lock.json
17-
uses: actions/cache@v4
18-
with:
19-
path: package-temp-dir
20-
key: lock-${{ github.sha }}
21-
22-
- name: create package-lock.json
23-
run: npm i --package-lock-only --ignore-scripts
24-
25-
- name: hack for singe file
26-
run: |
27-
if [ ! -d "package-temp-dir" ]; then
28-
mkdir package-temp-dir
29-
fi
30-
cp package-lock.json package-temp-dir
31-
32-
- name: cache node_modules
33-
id: node_modules_cache_id
34-
uses: actions/cache@v4
35-
with:
36-
path: node_modules
37-
key: node_modules-${{ hashFiles('**/package-temp-dir/package-lock.json') }}
38-
39-
- name: install
40-
if: steps.node_modules_cache_id.outputs.cache-hit != 'true'
41-
run: npm ci
42-
43-
lint:
44-
runs-on: ubuntu-latest
45-
steps:
46-
- name: checkout
47-
uses: actions/checkout@v4
48-
49-
- name: restore cache from package-lock.json
50-
uses: actions/cache@v4
51-
with:
52-
path: package-temp-dir
53-
key: lock-${{ github.sha }}
54-
55-
- name: restore cache from node_modules
56-
uses: actions/cache@v4
57-
with:
58-
path: node_modules
59-
key: node_modules-${{ hashFiles('**/package-temp-dir/package-lock.json') }}
60-
61-
- name: lint
62-
run: npm run lint
63-
64-
needs: setup
65-
66-
compile:
67-
runs-on: ubuntu-latest
68-
steps:
69-
- name: checkout
70-
uses: actions/checkout@v4
71-
72-
- name: restore cache from package-lock.json
73-
uses: actions/cache@v4
74-
with:
75-
path: package-temp-dir
76-
key: lock-${{ github.sha }}
77-
78-
- name: restore cache from node_modules
79-
uses: actions/cache@v4
80-
with:
81-
path: node_modules
82-
key: node_modules-${{ hashFiles('**/package-temp-dir/package-lock.json') }}
83-
84-
- name: compile
85-
run: npm run compile
86-
87-
needs: setup
88-
89-
coverage:
90-
runs-on: ubuntu-latest
91-
steps:
92-
- name: checkout
93-
uses: actions/checkout@v4
94-
95-
- name: restore cache from package-lock.json
96-
uses: actions/cache@v4
97-
with:
98-
path: package-temp-dir
99-
key: lock-${{ github.sha }}
100-
101-
- name: restore cache from node_modules
102-
uses: actions/cache@v4
103-
with:
104-
path: node_modules
105-
key: node_modules-${{ hashFiles('**/package-temp-dir/package-lock.json') }}
106-
107-
- name: coverage
108-
run: npm test -- --coverage
109-
110-
- name: Upload coverage to Codecov
111-
uses: codecov/codecov-action@v4
112-
with:
113-
token: ${{ secrets.CODECOV_TOKEN }}
114-
115-
needs: setup
4+
test:
5+
uses: react-component/rc-test/.github/workflows/test.yml@main
6+
secrets: inherit

.gitignore

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,3 +36,5 @@ package-lock.json
3636
.dumi/tmp-test
3737
.dumi/tmp-production
3838
.env.local
39+
40+
bun.lockb

bunfig.toml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
[install]
2+
peer = false

docs/examples/debug.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ import Menu, { ItemGroup as MenuItemGroup, MenuItem } from '../../src';
66
import type { MenuProps } from '../../src';
77
import '../../assets/index.less';
88
import '../../assets/menu.less';
9-
import type { MenuInfo } from '@/interface';
9+
import type { MenuInfo, MenuRef } from '@/interface';
1010

1111
const collapseNode = () => {
1212
return { height: 0 };
@@ -52,7 +52,7 @@ export default () => {
5252
const [inlineCollapsed, setInlineCollapsed] = React.useState(false);
5353
const [forceRender, setForceRender] = React.useState(false);
5454
const [openKeys, setOpenKeys] = React.useState<string[]>([]);
55-
const menuRef = useRef();
55+
const menuRef = useRef<MenuRef>();
5656

5757
const onRootClick = (info: MenuInfo) => {
5858
console.log('Root Menu Item Click:', info);

docs/examples/inlineCollapsed.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ const App = () => {
77
return (
88
<>
99
<label>
10-
<input type="checkbox" value={collapsed} onChange={e => setCollapsed(e.target.checked)} />
10+
<input type="checkbox" checked={collapsed} onChange={e => setCollapsed(e.target.checked)} />
1111
inlineCollapsed: {collapsed.toString()}
1212
</label>
1313
<Menu

docs/examples/rtl-antd.tsx

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
import React from 'react';
44
import type { CSSMotionProps } from 'rc-motion';
5-
import Menu, { SubMenu, Item as MenuItem, Divider } from 'rc-menu';
5+
import Menu, { SubMenu, Item as MenuItem, Divider, MenuProps } from 'rc-menu';
66
import '../../assets/index.less';
77

88
function handleClick(info) {
@@ -121,11 +121,16 @@ const children2 = [
121121

122122
const customizeIndicator = <span>Add More Items</span>;
123123

124-
class CommonMenu extends React.Component {
124+
interface CommonMenuState {
125+
children: React.ReactNode;
126+
overflowedIndicator?: React.ReactNode;
127+
}
128+
129+
class CommonMenu extends React.Component<any, CommonMenuState> {
125130
state = {
126131
children: children1,
127132
overflowedIndicator: undefined,
128-
};
133+
} as CommonMenuState;
129134

130135
toggleChildren = () => {
131136
this.setState(({ children }) => ({

docs/examples/selectedKeys.tsx

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,12 +5,18 @@ import Menu, { SubMenu, Item as MenuItem } from 'rc-menu';
55

66
import '../../assets/index.less';
77

8-
class Test extends React.Component {
8+
interface TestState {
9+
destroyed: boolean;
10+
selectedKeys: string[];
11+
openKeys: string[];
12+
}
13+
14+
class Test extends React.Component<any, TestState> {
915
state = {
1016
destroyed: false,
1117
selectedKeys: [],
1218
openKeys: [],
13-
};
19+
} as TestState;
1420

1521
onSelect = info => {
1622
console.log('selected ', info);

0 commit comments

Comments
 (0)