mirror of
https://github.com/facebook/react-native.git
synced 2025-11-01 09:14:26 +00:00
cd9adda651
Summary: The files in `ReactAndroid/src/androidTest/js` use Haste names; this commit migrates them to use path-based imports. This helps us move RN towards standard path-based requires. All the requires in `androidTest` have been rewritten to use relative requires. [General] [Changed] - Migrate "androidTest" JS from Haste to path-based requires Pull Request resolved: https://github.com/facebook/react-native/pull/24813 Differential Revision: D15318108 Pulled By: cpojer fbshipit-source-id: dddc68f992b8dea48afb01fd4481bd5b846231ca
212 lines
4.8 KiB
JavaScript
212 lines
4.8 KiB
JavaScript
/**
|
|
* Copyright (c) Facebook, Inc. and its affiliates.
|
|
*
|
|
* This source code is licensed under the MIT license found in the
|
|
* LICENSE file in the root directory of this source tree.
|
|
*
|
|
* @format
|
|
*/
|
|
|
|
'use strict';
|
|
|
|
const React = require('react');
|
|
const {StyleSheet, UIManager, View, findNodeHandle} = require('react-native');
|
|
const BatchedBridge = require('react-native/Libraries/BatchedBridge/BatchedBridge');
|
|
|
|
const assertEquals = require('./Asserts').assertEquals;
|
|
|
|
const styles = StyleSheet.create({
|
|
A: {
|
|
width: 500,
|
|
height: 500,
|
|
},
|
|
B: {
|
|
backgroundColor: 'rgb(255, 0, 0)',
|
|
left: 50,
|
|
top: 80,
|
|
width: 200,
|
|
height: 300,
|
|
},
|
|
C: {
|
|
backgroundColor: 'rgb(0, 255, 0)',
|
|
left: 100,
|
|
top: 70,
|
|
width: 50,
|
|
height: 150,
|
|
},
|
|
D: {
|
|
backgroundColor: 'rgb(0, 0, 255)',
|
|
left: 400,
|
|
top: 100,
|
|
width: 50,
|
|
height: 200,
|
|
},
|
|
});
|
|
|
|
let A, B, C, D;
|
|
|
|
class MeasureLayoutTestApp extends React.Component {
|
|
componentDidMount() {
|
|
A = findNodeHandle(this.refs.A);
|
|
B = findNodeHandle(this.refs.B);
|
|
C = findNodeHandle(this.refs.C);
|
|
D = findNodeHandle(this.refs.D);
|
|
}
|
|
|
|
render() {
|
|
return (
|
|
<View ref="A" style={styles.A} collapsable={false}>
|
|
<View ref="B" style={styles.B} collapsable={false}>
|
|
<View ref="C" style={styles.C} collapsable={false} />
|
|
</View>
|
|
<View ref="D" style={styles.D} collapsable={false} />
|
|
</View>
|
|
);
|
|
}
|
|
}
|
|
|
|
function shouldNotCallThisCallback() {
|
|
assertEquals(false, true);
|
|
}
|
|
|
|
const MeasureLayoutTestModule = {
|
|
MeasureLayoutTestApp: MeasureLayoutTestApp,
|
|
verifyMeasureOnViewA: function() {
|
|
UIManager.measure(A, function(a, b, width, height, x, y) {
|
|
assertEquals(500, width);
|
|
assertEquals(500, height);
|
|
assertEquals(0, x);
|
|
assertEquals(0, y);
|
|
});
|
|
},
|
|
verifyMeasureOnViewC: function() {
|
|
UIManager.measure(C, function(a, b, width, height, x, y) {
|
|
assertEquals(50, width);
|
|
assertEquals(150, height);
|
|
assertEquals(150, x);
|
|
assertEquals(150, y);
|
|
});
|
|
},
|
|
verifyMeasureLayoutCRelativeToA: function() {
|
|
UIManager.measureLayout(C, A, shouldNotCallThisCallback, function(
|
|
x,
|
|
y,
|
|
width,
|
|
height,
|
|
) {
|
|
assertEquals(50, width);
|
|
assertEquals(150, height);
|
|
assertEquals(150, x);
|
|
assertEquals(150, y);
|
|
});
|
|
},
|
|
verifyMeasureLayoutCRelativeToB: function() {
|
|
UIManager.measureLayout(C, B, shouldNotCallThisCallback, function(
|
|
x,
|
|
y,
|
|
width,
|
|
height,
|
|
) {
|
|
assertEquals(50, width);
|
|
assertEquals(150, height);
|
|
assertEquals(100, x);
|
|
assertEquals(70, y);
|
|
});
|
|
},
|
|
verifyMeasureLayoutCRelativeToSelf: function() {
|
|
UIManager.measureLayout(C, C, shouldNotCallThisCallback, function(
|
|
x,
|
|
y,
|
|
width,
|
|
height,
|
|
) {
|
|
assertEquals(50, width);
|
|
assertEquals(150, height);
|
|
assertEquals(0, x);
|
|
assertEquals(0, y);
|
|
});
|
|
},
|
|
verifyMeasureLayoutRelativeToParentOnViewA: function() {
|
|
UIManager.measureLayoutRelativeToParent(
|
|
A,
|
|
shouldNotCallThisCallback,
|
|
function(x, y, width, height) {
|
|
assertEquals(500, width);
|
|
assertEquals(500, height);
|
|
assertEquals(0, x);
|
|
assertEquals(0, y);
|
|
},
|
|
);
|
|
},
|
|
verifyMeasureLayoutRelativeToParentOnViewB: function() {
|
|
UIManager.measureLayoutRelativeToParent(
|
|
B,
|
|
shouldNotCallThisCallback,
|
|
function(x, y, width, height) {
|
|
assertEquals(200, width);
|
|
assertEquals(300, height);
|
|
assertEquals(50, x);
|
|
assertEquals(80, y);
|
|
},
|
|
);
|
|
},
|
|
verifyMeasureLayoutRelativeToParentOnViewC: function() {
|
|
UIManager.measureLayoutRelativeToParent(
|
|
C,
|
|
shouldNotCallThisCallback,
|
|
function(x, y, width, height) {
|
|
assertEquals(50, width);
|
|
assertEquals(150, height);
|
|
assertEquals(100, x);
|
|
assertEquals(70, y);
|
|
},
|
|
);
|
|
},
|
|
verifyMeasureLayoutDRelativeToB: function() {
|
|
UIManager.measureLayout(
|
|
D,
|
|
B,
|
|
function() {
|
|
assertEquals(true, true);
|
|
},
|
|
shouldNotCallThisCallback,
|
|
);
|
|
},
|
|
verifyMeasureLayoutNonExistentTag: function() {
|
|
UIManager.measureLayout(
|
|
192,
|
|
A,
|
|
function() {
|
|
assertEquals(true, true);
|
|
},
|
|
shouldNotCallThisCallback,
|
|
);
|
|
},
|
|
verifyMeasureLayoutNonExistentAncestor: function() {
|
|
UIManager.measureLayout(
|
|
B,
|
|
192,
|
|
function() {
|
|
assertEquals(true, true);
|
|
},
|
|
shouldNotCallThisCallback,
|
|
);
|
|
},
|
|
verifyMeasureLayoutRelativeToParentNonExistentTag: function() {
|
|
UIManager.measureLayoutRelativeToParent(
|
|
192,
|
|
function() {
|
|
assertEquals(true, true);
|
|
},
|
|
shouldNotCallThisCallback,
|
|
);
|
|
},
|
|
};
|
|
|
|
BatchedBridge.registerCallableModule(
|
|
'MeasureLayoutTestModule',
|
|
MeasureLayoutTestModule,
|
|
);
|
|
|
|
module.exports = MeasureLayoutTestModule;
|