First snapshot test, rendering "native" React component.

Reviewed By: frantic

Differential Revision: D3449781

fbshipit-source-id: 7abf9280f98cee06d04d7e222b884de1744afb8d
This commit is contained in:
Christoph Pojer 2016-06-29 21:52:00 -07:00 committed by Facebook Github Bot 6
parent 52d5450ced
commit 7c53addcd5
6 changed files with 144 additions and 2 deletions

View File

@ -1,5 +1,11 @@
/**
* Copyright 2004-present Facebook. All Rights Reserved.
* Copyright (c) 2013-present, Facebook, Inc.
* All rights reserved.
*
* This source code is licensed under the BSD-style license found in the
* LICENSE file in the root directory of this source tree. An additional grant
* of patent rights can be found in the PATENTS file in the same directory.
*
*/
'use strict';
@ -27,7 +33,14 @@ var NativeModules = {
UIManager: {
customBubblingEventTypes: {},
customDirectEventTypes: {},
Dimensions: {},
Dimensions: {
window: {
width: 750,
height: 1334,
scale: 2,
fontScale: 2,
}
},
RCTModalFullscreenView: {
Constants: {},
},

View File

@ -0,0 +1,32 @@
/**
* Copyright (c) 2015-present, Facebook, Inc.
* All rights reserved.
*
* This source code is licensed under the BSD-style license found in the
* LICENSE file in the root directory of this source tree. An additional grant
* of patent rights can be found in the PATENTS file in the same directory.
*/
jest.disableAutomock();
jest.mock('NativeModules')
.mock('Text')
.mock('ensureComponentIsNative')
.mock('View');
const React = require('React');
const ReactTestRenderer = require('ReactTestRenderer');
const Text = require('Text');
const TouchableHighlight = require('TouchableHighlight');
describe('TouchableHighlight', () => {
it('renders correctly', () => {
const instance = ReactTestRenderer.create(
<TouchableHighlight style={{}}>
<Text>Touchable</Text>
</TouchableHighlight>
);
expect(instance.toJSON()).toMatchSnapshot();
});
});

View File

@ -0,0 +1,26 @@
exports[`TouchableHighlight renders correctly 0`] = `
<View
accessible={true}
accessibilityLabel={undefined}
accessibilityComponentType={undefined}
accessibilityTraits={undefined}
style={
Array [
4,
Object {}
]
}
onLayout={undefined}
hitSlop={undefined}
onStartShouldSetResponder={[Function bound touchableHandleStartShouldSetResponder]}
onResponderTerminationRequest={[Function bound touchableHandleResponderTerminationRequest]}
onResponderGrant={[Function bound touchableHandleResponderGrant]}
onResponderMove={[Function bound touchableHandleResponderMove]}
onResponderRelease={[Function bound touchableHandleResponderRelease]}
onResponderTerminate={[Function bound touchableHandleResponderTerminate]}
testID={undefined}>
<Text>
Touchable
</Text>
</View>
`;

View File

@ -0,0 +1,27 @@
/**
* Copyright (c) 2015-present, Facebook, Inc.
* All rights reserved.
*
* This source code is licensed under the BSD-style license found in the
* LICENSE file in the root directory of this source tree. An additional grant
* of patent rights can be found in the PATENTS file in the same directory.
*
*/
'use strict';
const React = require('React');
const StyleSheetPropType = require('StyleSheetPropType');
const ViewStylePropTypes = require('ViewStylePropTypes');
class View extends React.Component {
render() {
const {children, ...props} = this.props;
return React.createElement('View', props, children);
}
}
View.propTypes = {
style: StyleSheetPropType(ViewStylePropTypes),
};
module.exports = View;

View File

@ -0,0 +1,22 @@
/**
* Copyright (c) 2015-present, Facebook, Inc.
* All rights reserved.
*
* This source code is licensed under the BSD-style license found in the
* LICENSE file in the root directory of this source tree. An additional grant
* of patent rights can be found in the PATENTS file in the same directory.
*
*/
'use strict';
const React = require('React');
const {Component} = React;
class Image extends Component {
render() {
const {children, ...props} = this.props;
return React.createElement('Image', props, children);
}
}
module.exports = Image;

View File

@ -0,0 +1,22 @@
/**
* Copyright (c) 2015-present, Facebook, Inc.
* All rights reserved.
*
* This source code is licensed under the BSD-style license found in the
* LICENSE file in the root directory of this source tree. An additional grant
* of patent rights can be found in the PATENTS file in the same directory.
*
*/
'use strict';
const React = require('React');
const {Component} = React;
class Text extends Component {
render() {
const {children, ...props} = this.props;
return React.createElement('Text', props, children);
}
}
module.exports = Text;