paweldomas adec8e6438 ref(TestHint): render only in test mode
Adds the logic to render TestHint only when the test mode is enabled
in order to be able to put independent TestHints in other places than
the TestConnectionInfo component.
2018-04-19 16:49:22 -05:00

56 lines
1.3 KiB
JavaScript

/* @flow */
import { isTestModeEnabled } from '../functions';
/**
* Describes the {@link TestHint}'s properties.
*
* A test hint is meant to resemble the lack of the ability to execute
* JavaScript by the mobile torture tests. They are used to expose some of
* the app's internal state that is not always expressed in a feasible manner by
* the UI.
*/
export type TestHintProps = {
/**
* The indicator which determines whether the test mode is enabled.
* {@link TestHint} components are rendered only if this flag is set to
* {@code true}.
*/
_testModeEnabled: boolean,
/**
* The test hint's identifier string. Must be unique in the app instance
* scope.
*/
id: string,
/**
* The test hint's (text) value which is to be consumed by the tests.
*/
value: string
}
/**
* Maps (parts of) the redux state to {@link TestHint}'s React {@code Component}
* props.
*
* @param {Object} state - The redux store/state.
* @private
* @returns {{
* _testModeEnabled: boolean
* }}
*/
export function _mapStateToProps(state: Object) {
return {
/**
* The indicator which determines whether the test mode is enabled.
*
* @protected
* @type {boolean}
*/
_testModeEnabled: isTestModeEnabled(state)
};
}