Skip to content

Commit 8743e17

Browse files
committed
add CI github action
1 parent 53de25d commit 8743e17

File tree

9 files changed

+7488
-13
lines changed

9 files changed

+7488
-13
lines changed

.github/workflows/CI.yml

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,11 +16,10 @@ jobs:
1616
yarn install
1717
- name: Run linters
1818
run: |
19-
cd template
2019
cp _prettierrc.js .prettierrc.js
2120
cp _eslintrc.js .eslintrc.js
2221
yarn lint
2322
- name: Run tests
2423
run: |
25-
cd template
24+
cp src/Config/index.example.js src/Config/index.js
2625
yarn test

template/_eslintrc.js

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,10 @@
11
module.exports = {
2+
env: {
3+
'jest/globals': true,
4+
},
25
root: true,
36
extends: ['@react-native-community'],
7+
plugins: ['jest'],
48
rules: {
59
semi: ['error', 'never'],
610
'object-curly-spacing': ['error', 'always'],

template/package.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,7 @@
4141
"eslint": "^7.22.0",
4242
"eslint-import-resolver-babel-module": "^5.1.2",
4343
"eslint-plugin-import": "^2.22.0",
44+
"eslint-plugin-jest": "^24.3.5",
4445
"identity-obj-proxy": "^3.0.0",
4546
"jest": "^26.6.3",
4647
"metro-react-native-babel-preset": "^0.64.0",

template/src/Containers/Example/Index.js

Lines changed: 5 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -18,15 +18,13 @@ const IndexExampleContainer = () => {
1818
const { Common, Fonts, Gutters, Layout } = useTheme()
1919
const dispatch = useDispatch()
2020

21-
const user = useSelector((state) => state.user.item)
22-
const fetchOneUserLoading = useSelector(
23-
(state) => state.user.fetchOne.loading,
24-
)
25-
const fetchOneUserError = useSelector((state) => state.user.fetchOne.error)
21+
const user = useSelector(state => state.user.item)
22+
const fetchOneUserLoading = useSelector(state => state.user.fetchOne.loading)
23+
const fetchOneUserError = useSelector(state => state.user.fetchOne.error)
2624

2725
const [userId, setUserId] = useState('1')
2826

29-
const fetch = (id) => {
27+
const fetch = id => {
3028
setUserId(id)
3129
dispatch(FetchOne.action(id))
3230
}
@@ -61,7 +59,7 @@ const IndexExampleContainer = () => {
6159
{t('example.labels.userId')}
6260
</Text>
6361
<TextInput
64-
onChangeText={(text) => fetch(text)}
62+
onChangeText={text => fetch(text)}
6563
editable={!fetchOneUserLoading}
6664
keyboardType={'number-pad'}
6765
maxLength={1}

template/src/Services/User/FetchOne.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
import api, { handleError } from '@/Services'
22

3-
export default async (userId) => {
3+
export default async userId => {
44
if (!userId) {
55
return handleError({ message: 'User ID is required' })
66
}

template/src/Services/index.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ export const handleError = ({ message, data, status }) => {
1515
}
1616

1717
instance.interceptors.response.use(
18-
(response) => response,
18+
response => response,
1919
({ message, response: { data, status } }) => {
2020
return handleError({ message, data, status })
2121
},

template/src/Store/Startup/Init.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ export default {
1212
action: buildAsyncActions('startup/init', async (args, { dispatch }) => {
1313
// Timeout to fake waiting some process
1414
// Remove it, or keep it if you want display a beautiful splash screen ;)
15-
await new Promise((resolve) => setTimeout(resolve, 1000))
15+
await new Promise(resolve => setTimeout(resolve, 1000))
1616
// Here we load the user 1 for example, but you can for example load the connected user
1717
await dispatch(FetchOne.action(1))
1818
await dispatch(DefaultTheme.action({ theme: 'default', darkMode: null }))

template/src/Store/index.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ const persistedReducer = persistReducer(persistConfig, reducers)
3232

3333
const store = configureStore({
3434
reducer: persistedReducer,
35-
middleware: (getDefaultMiddleware) => {
35+
middleware: getDefaultMiddleware => {
3636
const middlewares = getDefaultMiddleware({
3737
serializableCheck: {
3838
ignoredActions: [FLUSH, REHYDRATE, PAUSE, PERSIST, PURGE, REGISTER],

template/yarn.lock

Lines changed: 7473 additions & 0 deletions
Large diffs are not rendered by default.

0 commit comments

Comments
 (0)