paweldomas 6931b8f2fb feat(TestHint): add 'onPress' property
Allows to bind a click handler to a TestHint.

When a mobile test wants to click an UI element it must be able to
locate it through the accessibility layer. Now the problem with that is
that there is currently no uniform way for finding element on both iOS
and Android. This problem is solved by TestHint component which takes
an id parameter which then can be specified in the corresponding java
TestHint class in jitsi-meet-torture to easily find it. By being able to
add a click handler to a TestHint, it's possible to duplicate original
handler under nested TestHint and then find it easily on the torture
side.
2018-04-19 16:49:22 -05:00

38 lines
984 B
JavaScript

/* @flow */
import React, { Component } from 'react';
import { connect } from 'react-redux';
import { Text } from 'react-native';
import type { TestHintProps } from './AbstractTestHint';
import { _mapStateToProps } from './AbstractTestHint';
/**
* This is the iOS version of the TestHint.
*
* Be sure to check the description in TestHint.android and AbstractTestHint
* files to understand what a test hint is and why different iOS and Android
* components are necessary.
*/
class TestHint extends Component<TestHintProps> {
/**
* Renders the test hint on Android.
*
* @returns {ReactElement}
*/
render() {
if (!this.props._testModeEnabled) {
return null;
}
return (
<Text
accessibilityLabel = { this.props.value }
onPress = { this.props.onPress }
testID = { this.props.id } />
);
}
}
export default connect(_mapStateToProps)(TestHint);