Skip to content

Commit

Permalink
Add test case
Browse files Browse the repository at this point in the history
  • Loading branch information
tboba committed Sep 3, 2024
1 parent f371fe5 commit e3972d7
Show file tree
Hide file tree
Showing 2 changed files with 87 additions and 1 deletion.
86 changes: 86 additions & 0 deletions apps/src/tests/Test2332.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,86 @@
/**
*
* IMPORTANT! READ BEFORE TESTING!
* Remember to switch windowSoftInputMode to `adjustPan` in AndroidManifest.xml file.
*
*/

import React, { useLayoutEffect } from 'react';
import { NavigationContainer } from '@react-navigation/native';
import { createNativeStackNavigator } from '@react-navigation/native-stack';
import { useNavigation } from '@react-navigation/native';
import { Button, Text, TextInput, View } from 'react-native';
import { NativeStackNavigationProp } from '@react-navigation/native-stack';
import { HeaderButton } from '@react-navigation/elements';
type RootStackNavigatorParamsList = {
Home: undefined;
Details: undefined;
};
const Stack = createNativeStackNavigator();
const HomeScreen = () => {
const navigation =
useNavigation<NativeStackNavigationProp<RootStackNavigatorParamsList>>();
const onHandlePress = () => {
navigation.navigate('Details');
};
return (
<View>
<Text>HomeScreen</Text>
<View>
<Button title="Go to Details" onPress={onHandlePress} />
</View>
</View>
);
};
const DetailsScreen = () => {
const [text, setText] = React.useState('');
const navigation =
useNavigation<NativeStackNavigationProp<RootStackNavigatorParamsList>>();
useLayoutEffect(() => {
navigation.setOptions({
headerTitle: 'Detail Screen',
headerRight: () => {
if (text.length === 0) {
return null;
}
return (
<HeaderButton>
<Text>X</Text>
</HeaderButton>
);
},
});
}, [navigation, text]);
const onHandlePress = () => {
navigation.goBack();
};

return (
<View>
<Text>RegisterScreen</Text>
<View>
<TextInput
style={{ backgroundColor: 'grey', height: 40, borderColor: 'black' }}
placeholder="Enter text"
value={text}
onChangeText={text => {
setText(text);
}}
/>
<Button title="Go to Home" onPress={onHandlePress} />
<Button title="Go to Details" onPress={onHandlePress} />
</View>
</View>
);
};
function App() {
return (
<NavigationContainer>
<Stack.Navigator>
<Stack.Screen name="Home" component={HomeScreen} />
<Stack.Screen name="Details" component={DetailsScreen} />
</Stack.Navigator>
</NavigationContainer>
);
}
export default App;
2 changes: 1 addition & 1 deletion apps/src/tests/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -111,6 +111,6 @@ export { default as Test2235 } from './Test2235';
export { default as Test2252 } from './Test2252';
export { default as Test2271 } from './Test2271';
export { default as Test2282 } from './Test2282';
export { default as Test2232 } from './Test2332';
export { default as TestScreenAnimation } from './TestScreenAnimation';
export { default as TestHeader } from './TestHeader';

0 comments on commit e3972d7

Please sign in to comment.