Use tag ids for testID

Summary: View tags are currently used for end-to-end test IDs. We'd like to overload the tag field with other information such as nativeID (for native refs) and transitionID (for shared element transitions) in the future. Added a key for testID's tag

Reviewed By: AaaChiuuu

Differential Revision: D4770368

fbshipit-source-id: b76c53a20520aac1b25d435b6d5eb809e8833675
This commit is contained in:
Andrew Y. Chen
2017-04-04 12:25:26 -07:00
committed by Facebook Github Bot
parent 67e54f8bdb
commit 77c19ccf73
6 changed files with 27 additions and 4 deletions

View File

@@ -17,6 +17,7 @@ import android.view.View;
import android.view.ViewGroup;
import com.facebook.react.NativeModuleRegistryBuilder;
import com.facebook.react.R;
import com.facebook.react.ReactInstanceManager;
import com.facebook.react.ReactInstanceManagerBuilder;
import com.facebook.react.bridge.CatalystInstance;
@@ -187,7 +188,9 @@ public class ReactTestHelper {
}
public static String getTestId(View view) {
return view.getTag() instanceof String ? (String) view.getTag() : null;
return view.getTag(R.id.react_test_id) instanceof String
? (String) view.getTag(R.id.react_test_id)
: null;
}
private static View findChild(View root, Predicate<View> predicate) {
@@ -211,7 +214,7 @@ public class ReactTestHelper {
return new Predicate<View>() {
@Override
public boolean apply(View view) {
Object tag = view.getTag();
Object tag = getTestId(view);
return tag != null && tag.equals(tagValue);
}
};