Pass minTimeLeftInFrameForNonBatchedOperationMs from above

Reviewed By: AaaChiuuu

Differential Revision: D5658066

fbshipit-source-id: f89a8bcfc180210f7361b03f718f65b1d59cbf85
This commit is contained in:
Alexey Lang
2017-08-20 17:23:50 -07:00
committed by Facebook Github Bot
parent a777517651
commit 992777b765
23 changed files with 268 additions and 296 deletions

View File

@@ -9,19 +9,19 @@
package com.facebook.react.uimanager;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
import static org.fest.assertions.api.Assertions.assertThat;
import static org.fest.assertions.api.Assertions.fail;
import android.view.View;
import com.facebook.react.bridge.ReactApplicationContext;
import com.facebook.react.bridge.ReadableArray;
import com.facebook.react.bridge.ReadableMap;
import com.facebook.react.common.MapBuilder;
import com.facebook.react.uimanager.annotations.ReactProp;
import com.facebook.react.uimanager.annotations.ReactPropGroup;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
import org.junit.Rule;
import org.junit.Test;
import org.junit.runner.RunWith;
@@ -30,9 +30,6 @@ import org.powermock.modules.junit4.rule.PowerMockRule;
import org.robolectric.RobolectricTestRunner;
import org.robolectric.RuntimeEnvironment;
import static org.fest.assertions.api.Assertions.assertThat;
import static org.fest.assertions.api.Assertions.fail;
/**
* Verifies that prop constants are generated properly based on {@code ReactProp} annotation.
*/
@@ -145,11 +142,8 @@ public class ReactPropConstantsTest {
public void testNativePropsIncludeCorrectTypes() {
List<ViewManager> viewManagers = Arrays.<ViewManager>asList(new ViewManagerUnderTest());
ReactApplicationContext reactContext = new ReactApplicationContext(RuntimeEnvironment.application);
UIManagerModule uiManagerModule = new UIManagerModule(
reactContext,
viewManagers,
new UIImplementationProvider(),
false);
UIManagerModule uiManagerModule =
new UIManagerModule(reactContext, viewManagers, new UIImplementationProvider(), false, 0);
Map<String, String> constants =
(Map) valueAtPath(uiManagerModule.getConstants(), "SomeView", "NativeProps");
assertThat(constants).isEqualTo(

View File

@@ -9,14 +9,18 @@
package com.facebook.react.uimanager;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
import static org.fest.assertions.api.Assertions.assertThat;
import static org.mockito.Matchers.any;
import static org.mockito.Matchers.anyInt;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.when;
import com.facebook.react.bridge.ReactApplicationContext;
import com.facebook.react.common.MapBuilder;
import com.facebook.react.uimanager.events.EventDispatcher;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
import org.fest.assertions.data.MapEntry;
import org.junit.Before;
import org.junit.Rule;
@@ -27,11 +31,6 @@ import org.powermock.modules.junit4.rule.PowerMockRule;
import org.robolectric.RobolectricTestRunner;
import org.robolectric.RuntimeEnvironment;
import static org.fest.assertions.api.Assertions.assertThat;
import static org.mockito.Matchers.any;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.when;
@RunWith(RobolectricTestRunner.class)
@PowerMockIgnore({"org.mockito.*", "org.robolectric.*", "android.*"})
public class UIManagerModuleConstantsTest {
@@ -59,20 +58,18 @@ public class UIManagerModuleConstantsTest {
mReactContext = new ReactApplicationContext(RuntimeEnvironment.application);
mUIImplementationProvider = mock(UIImplementationProvider.class);
when(mUIImplementationProvider.createUIImplementation(
any(ReactApplicationContext.class),
any(List.class),
any(EventDispatcher.class)))
.thenReturn(mock(UIImplementation.class));
any(ReactApplicationContext.class),
any(List.class),
any(EventDispatcher.class),
anyInt()))
.thenReturn(mock(UIImplementation.class));
}
@Test
public void testNoCustomConstants() {
List<ViewManager> viewManagers = Arrays.asList(mock(ViewManager.class));
UIManagerModule uiManagerModule = new UIManagerModule(
mReactContext,
viewManagers,
mUIImplementationProvider,
false);
UIManagerModule uiManagerModule =
new UIManagerModule(mReactContext, viewManagers, mUIImplementationProvider, false, 0);
Map<String, Object> constants = uiManagerModule.getConstants();
assertThat(constants)
.containsKey(CUSTOM_BUBBLING_EVENT_TYPES)
@@ -86,11 +83,8 @@ public class UIManagerModuleConstantsTest {
List<ViewManager> viewManagers = Arrays.asList(mockViewManager);
when(mockViewManager.getExportedCustomBubblingEventTypeConstants())
.thenReturn(MapBuilder.of("onTwirl", TWIRL_BUBBLING_EVENT_MAP));
UIManagerModule uiManagerModule = new UIManagerModule(
mReactContext,
viewManagers,
mUIImplementationProvider,
false);
UIManagerModule uiManagerModule =
new UIManagerModule(mReactContext, viewManagers, mUIImplementationProvider, false, 0);
Map<String, Object> constants = uiManagerModule.getConstants();
assertThat((Map) constants.get(CUSTOM_BUBBLING_EVENT_TYPES))
.contains(MapEntry.entry("onTwirl", TWIRL_BUBBLING_EVENT_MAP))
@@ -103,11 +97,8 @@ public class UIManagerModuleConstantsTest {
List<ViewManager> viewManagers = Arrays.asList(mockViewManager);
when(mockViewManager.getExportedCustomDirectEventTypeConstants())
.thenReturn(MapBuilder.of("onTwirl", TWIRL_DIRECT_EVENT_MAP));
UIManagerModule uiManagerModule = new UIManagerModule(
mReactContext,
viewManagers,
mUIImplementationProvider,
false);
UIManagerModule uiManagerModule =
new UIManagerModule(mReactContext, viewManagers, mUIImplementationProvider, false, 0);
Map<String, Object> constants = uiManagerModule.getConstants();
assertThat((Map) constants.get(CUSTOM_DIRECT_EVENT_TYPES))
.contains(MapEntry.entry("onTwirl", TWIRL_DIRECT_EVENT_MAP))
@@ -121,11 +112,8 @@ public class UIManagerModuleConstantsTest {
when(mockViewManager.getName()).thenReturn("RedPandaPhotoOfTheDayView");
when(mockViewManager.getExportedViewConstants())
.thenReturn(MapBuilder.of("PhotoSizeType", MapBuilder.of("Small", 1, "Large", 2)));
UIManagerModule uiManagerModule = new UIManagerModule(
mReactContext,
viewManagers,
mUIImplementationProvider,
false);
UIManagerModule uiManagerModule =
new UIManagerModule(mReactContext, viewManagers, mUIImplementationProvider, false, 0);
Map<String, Object> constants = uiManagerModule.getConstants();
assertThat(constants).containsKey("RedPandaPhotoOfTheDayView");
assertThat((Map) constants.get("RedPandaPhotoOfTheDayView")).containsKey("Constants");
@@ -140,11 +128,8 @@ public class UIManagerModuleConstantsTest {
when(mockViewManager.getName()).thenReturn("SomeView");
when(mockViewManager.getNativeProps())
.thenReturn(MapBuilder.of("fooProp", "number"));
UIManagerModule uiManagerModule = new UIManagerModule(
mReactContext,
viewManagers,
mUIImplementationProvider,
false);
UIManagerModule uiManagerModule =
new UIManagerModule(mReactContext, viewManagers, mUIImplementationProvider, false, 0);
Map<String, Object> constants = uiManagerModule.getConstants();
assertThat((String) valueAtPath(constants, "SomeView", "NativeProps", "fooProp"))
.isEqualTo("number");
@@ -175,11 +160,8 @@ public class UIManagerModuleConstantsTest {
MapBuilder.of("keyToOverride", "innerValueY", "extraKey", "valueY"))));
List<ViewManager> viewManagers = Arrays.asList(managerX, managerY);
UIManagerModule uiManagerModule = new UIManagerModule(
mReactContext,
viewManagers,
mUIImplementationProvider,
false);
UIManagerModule uiManagerModule =
new UIManagerModule(mReactContext, viewManagers, mUIImplementationProvider, false, 0);
Map<String, Object> constants = uiManagerModule.getConstants();
assertThat((Map) constants.get(CUSTOM_DIRECT_EVENT_TYPES)).containsKey("onTwirl");

View File

@@ -9,15 +9,19 @@
package com.facebook.react.uimanager;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import static org.fest.assertions.api.Assertions.assertThat;
import static org.mockito.Matchers.any;
import static org.mockito.Mockito.doAnswer;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.spy;
import static org.mockito.Mockito.times;
import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when;
import android.graphics.Color;
import android.view.View;
import android.view.ViewGroup;
import android.widget.TextView;
import com.facebook.react.ReactRootView;
import com.facebook.react.animation.Animation;
import com.facebook.react.animation.AnimationPropertyUpdater;
@@ -35,7 +39,9 @@ import com.facebook.react.views.text.ReactTextShadowNode;
import com.facebook.react.views.text.ReactTextViewManager;
import com.facebook.react.views.view.ReactViewGroup;
import com.facebook.react.views.view.ReactViewManager;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import org.junit.Before;
import org.junit.Rule;
import org.junit.Test;
@@ -49,15 +55,6 @@ import org.powermock.modules.junit4.rule.PowerMockRule;
import org.robolectric.RobolectricTestRunner;
import org.robolectric.RuntimeEnvironment;
import static org.fest.assertions.api.Assertions.assertThat;
import static org.mockito.Matchers.any;
import static org.mockito.Mockito.doAnswer;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.spy;
import static org.mockito.Mockito.times;
import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when;
/**
* Tests for {@link UIManagerModule}.
*/
@@ -818,11 +815,8 @@ public class UIManagerModuleTest {
new ReactViewManager(),
new ReactTextViewManager(),
new ReactRawTextManager());
UIManagerModule uiManagerModule = new UIManagerModule(
mReactContext,
viewManagers,
new UIImplementationProvider(),
false);
UIManagerModule uiManagerModule =
new UIManagerModule(mReactContext, viewManagers, new UIImplementationProvider(), false, 0);
uiManagerModule.onHostResume();
return uiManagerModule;
}

View File

@@ -9,9 +9,10 @@
package com.facebook.react.views.text;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import static org.fest.assertions.api.Assertions.assertThat;
import static org.mockito.Matchers.any;
import static org.mockito.Mockito.doAnswer;
import static org.mockito.Mockito.mock;
import android.annotation.TargetApi;
import android.graphics.Color;
@@ -24,7 +25,6 @@ import android.text.style.AbsoluteSizeSpan;
import android.text.style.StrikethroughSpan;
import android.text.style.UnderlineSpan;
import android.widget.TextView;
import com.facebook.react.ReactRootView;
import com.facebook.react.bridge.Arguments;
import com.facebook.react.bridge.JavaOnlyArray;
@@ -38,7 +38,9 @@ import com.facebook.react.uimanager.UIManagerModule;
import com.facebook.react.uimanager.ViewManager;
import com.facebook.react.uimanager.ViewProps;
import com.facebook.react.views.view.ReactViewBackgroundDrawable;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import org.junit.Before;
import org.junit.Rule;
import org.junit.Test;
@@ -52,11 +54,6 @@ import org.powermock.modules.junit4.rule.PowerMockRule;
import org.robolectric.RobolectricTestRunner;
import org.robolectric.RuntimeEnvironment;
import static org.fest.assertions.api.Assertions.assertThat;
import static org.mockito.Matchers.any;
import static org.mockito.Mockito.doAnswer;
import static org.mockito.Mockito.mock;
/**
* Tests for {@link UIManagerModule} specifically for React Text/RawText.
*/
@@ -431,11 +428,8 @@ public class ReactTextTest {
new ReactTextViewManager(),
new ReactRawTextManager(),
});
UIManagerModule uiManagerModule = new UIManagerModule(
reactContext,
viewManagers,
new UIImplementationProvider(),
false);
UIManagerModule uiManagerModule =
new UIManagerModule(reactContext, viewManagers, new UIImplementationProvider(), false, 0);
uiManagerModule.onHostResume();
return uiManagerModule;
}

View File

@@ -9,12 +9,12 @@
package com.facebook.react.views.textinput;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import static org.fest.assertions.api.Assertions.assertThat;
import static org.mockito.Matchers.any;
import static org.mockito.Mockito.doAnswer;
import static org.mockito.Mockito.mock;
import android.widget.EditText;
import com.facebook.react.ReactRootView;
import com.facebook.react.bridge.Arguments;
import com.facebook.react.bridge.JavaOnlyArray;
@@ -27,7 +27,9 @@ import com.facebook.react.uimanager.UIImplementationProvider;
import com.facebook.react.uimanager.UIManagerModule;
import com.facebook.react.uimanager.ViewManager;
import com.facebook.react.uimanager.ViewProps;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import org.junit.Before;
import org.junit.Rule;
import org.junit.Test;
@@ -41,11 +43,6 @@ import org.powermock.modules.junit4.rule.PowerMockRule;
import org.robolectric.RobolectricTestRunner;
import org.robolectric.RuntimeEnvironment;
import static org.fest.assertions.api.Assertions.assertThat;
import static org.mockito.Matchers.any;
import static org.mockito.Mockito.doAnswer;
import static org.mockito.Mockito.mock;
/**
* Tests for TextInput.
*/
@@ -182,11 +179,8 @@ public class TextInputTest {
new ViewManager[] {
new ReactTextInputManager(),
});
UIManagerModule uiManagerModule = new UIManagerModule(
reactContext,
viewManagers,
new UIImplementationProvider(),
false);
UIManagerModule uiManagerModule =
new UIManagerModule(reactContext, viewManagers, new UIImplementationProvider(), false, 0);
uiManagerModule.onHostResume();
return uiManagerModule;
}