Daniel Zlotin 7 gadus atpakaļ
vecāks
revīzija
b56002672a

+ 2
- 0
AndroidE2E/app/src/androidTest/java/com/reactnativenavigation/e2e/androide2e/ApplicationLifecycleTest.java Parādīt failu

@@ -3,10 +3,12 @@ package com.reactnativenavigation.e2e.androide2e;
3 3
 import android.support.test.uiautomator.By;
4 4
 
5 5
 import org.junit.FixMethodOrder;
6
+import org.junit.Ignore;
6 7
 import org.junit.Test;
7 8
 import org.junit.runners.MethodSorters;
8 9
 
9 10
 @FixMethodOrder(MethodSorters.NAME_ASCENDING)
11
+@Ignore
10 12
 public class ApplicationLifecycleTest extends BaseTest {
11 13
 
12 14
 	@Test

+ 1
- 1
AndroidE2E/app/src/androidTest/java/com/reactnativenavigation/e2e/androide2e/BaseTest.java Parādīt failu

@@ -71,7 +71,7 @@ public abstract class BaseTest {
71 71
 		assertThat(device().wait(Until.hasObject(selector), TIMEOUT)).isTrue();
72 72
 	}
73 73
 
74
-	public void swipeRight() {
74
+	public void swipeRightOpenSideMenu() {
75 75
 		device().swipe(5, 152, 500, 152, 15);
76 76
 	}
77 77
 }

+ 1
- 2
AndroidE2E/app/src/androidTest/java/com/reactnativenavigation/e2e/androide2e/TopLevelApiTest.java Parādīt failu

@@ -22,12 +22,11 @@ public class TopLevelApiTest extends BaseTest {
22 22
 		assertMainShown();
23 23
 		elementByText("SWITCH TO APP WITH SIDE MENUS").click();
24 24
 		assertExists(By.textStartsWith("This is a side menu center screen tab 1"));
25
-		swipeRight();
25
+		swipeRightOpenSideMenu();
26 26
 		assertExists(By.text("This is a left side menu screen"));
27 27
 	}
28 28
 
29 29
 	@Test
30
-	@Ignore
31 30
 	public void screenLifecycle() throws Exception {
32 31
 		launchTheApp();
33 32
 		assertMainShown();

+ 1
- 0
lib/android/app/src/main/java/com/reactnativenavigation/layout/containers/Container.java Parādīt failu

@@ -22,6 +22,7 @@ public class Container extends FrameLayout {
22 22
 		this.id = id;
23 23
 		this.name = name;
24 24
 		addView(createReactRootView());
25
+
25 26
 	}
26 27
 
27 28
 	private View createReactRootView() {

+ 17
- 0
lib/android/app/src/main/java/com/reactnativenavigation/utils/UiUtils.java Parādīt failu

@@ -0,0 +1,17 @@
1
+package com.reactnativenavigation.utils;
2
+
3
+import android.view.View;
4
+import android.view.ViewTreeObserver;
5
+
6
+public class UiUtils {
7
+	public static void runOnPreDraw(final View view, final Runnable task) {
8
+		view.getViewTreeObserver().addOnPreDrawListener(new ViewTreeObserver.OnPreDrawListener() {
9
+			@Override
10
+			public boolean onPreDraw() {
11
+				view.getViewTreeObserver().removeOnPreDrawListener(this);
12
+				task.run();
13
+				return true;
14
+			}
15
+		});
16
+	}
17
+}

+ 26
- 0
lib/android/app/src/test/java/com/reactnativenavigation/utils/UiUtilsTest.java Parādīt failu

@@ -0,0 +1,26 @@
1
+package com.reactnativenavigation.utils;
2
+
3
+import android.view.View;
4
+
5
+import com.reactnativenavigation.BaseTest;
6
+
7
+import org.junit.Test;
8
+import org.robolectric.shadow.api.Shadow;
9
+
10
+import static org.mockito.Mockito.mock;
11
+import static org.mockito.Mockito.times;
12
+import static org.mockito.Mockito.verify;
13
+import static org.mockito.Mockito.verifyZeroInteractions;
14
+
15
+public class UiUtilsTest extends BaseTest {
16
+	@Test
17
+	public void runOnPreDraw() throws Exception {
18
+		View view = Shadow.newInstanceOf(View.class);
19
+		Runnable task = mock(Runnable.class);
20
+		verifyZeroInteractions(task);
21
+
22
+		UiUtils.runOnPreDraw(view, task);
23
+		view.getViewTreeObserver().dispatchOnPreDraw();
24
+		verify(task, times(1)).run();
25
+	}
26
+}