File tree Expand file tree Collapse file tree 6 files changed +463
-9
lines changed Expand file tree Collapse file tree 6 files changed +463
-9
lines changed Original file line number Diff line number Diff line change
1
+ test-utils. *
Original file line number Diff line number Diff line change
1
+ {
2
+ "extends": "@callstack"
3
+ }
Original file line number Diff line number Diff line change 1
1
import * as React from 'react' ;
2
+ import { screen } from '@testing-library/react-native' ;
2
3
import { renderWithProviders } from './test-utils' ;
3
4
import { WelcomeScreen } from './WelcomeScreen' ;
4
5
5
6
test ( 'renders WelcomeScreen in light theme' , ( ) => {
6
7
renderWithProviders ( < WelcomeScreen /> , { theme : 'light' } ) ;
8
+ expect ( screen . getByText ( 'Theme: light' ) ) . toBeOnTheScreen ( ) ;
9
+ } ) ;
10
+
11
+ test ( 'renders WelcomeScreen in dark theme' , ( ) => {
12
+ renderWithProviders ( < WelcomeScreen /> , { theme : 'dark' } ) ;
13
+ expect ( screen . getByText ( 'Theme: dark' ) ) . toBeOnTheScreen ( ) ;
14
+ } ) ;
15
+
16
+ test ( 'renders WelcomeScreen with user' , ( ) => {
17
+ renderWithProviders ( < WelcomeScreen /> , { user : { name : 'Jar-Jar' } } ) ;
18
+ expect ( screen . getByText ( / h e l l o J a r - J a r / i) ) . toBeOnTheScreen ( ) ;
19
+ } ) ;
20
+
21
+ test ( 'renders WelcomeScreen without user' , ( ) => {
22
+ renderWithProviders ( < WelcomeScreen /> , { user : null } ) ;
23
+ expect ( screen . getByText ( / h e l l o s t r a n g e r / i) ) . toBeOnTheScreen ( ) ;
7
24
} ) ;
Original file line number Diff line number Diff line change @@ -9,7 +9,7 @@ export function WelcomeScreen() {
9
9
10
10
return (
11
11
< View >
12
- < Text > { user ? `User: ${ user . name } ` : 'Not logged in. ' } </ Text >
12
+ < Text > Hello { user ? user . name : 'Stranger ' } </ Text >
13
13
< Text > Theme: { theme } </ Text >
14
14
</ View >
15
15
) ;
Original file line number Diff line number Diff line change 7
7
"web" : " expo start --web" ,
8
8
"eject" : " expo eject" ,
9
9
"test" : " jest" ,
10
+ "lint" : " lint" ,
10
11
"typecheck" : " tsc --noEmit"
11
12
},
12
13
"dependencies" : {
20
21
"devDependencies" : {
21
22
"@babel/core" : " ^7.20.0" ,
22
23
"@testing-library/react-native" : " ^12.4.0" ,
24
+ "@types/eslint" : " ^8.56.10" ,
23
25
"@types/react" : " ~18.2.45" ,
26
+ "eslint" : " ^8.57.0" ,
24
27
"jest" : " ^29.7.0" ,
25
28
"react-test-renderer" : " 18.2.0" ,
26
29
"typescript" : " ^5.3.0"
You can’t perform that action at this time.
0 commit comments