소스 검색

abstract ViewController

Daniel Zlotin 8 년 전
부모
커밋
b064e1f355

+ 2
- 4
lib/android/app/src/main/java/com/reactnativenavigation/viewcontrollers/ViewController.java 파일 보기

4
 import android.support.annotation.Nullable;
4
 import android.support.annotation.Nullable;
5
 import android.view.View;
5
 import android.view.View;
6
 
6
 
7
-public class ViewController {
7
+public abstract class ViewController {
8
 	private final Activity activity;
8
 	private final Activity activity;
9
 	private final View view;
9
 	private final View view;
10
 	private StackController stackController;
10
 	private StackController stackController;
14
 		this.view = onCreateView();
14
 		this.view = onCreateView();
15
 	}
15
 	}
16
 
16
 
17
-	protected View onCreateView() {
18
-		return new View(getActivity());
19
-	}
17
+	protected abstract View onCreateView();
20
 
18
 
21
 	public boolean handleBack() {
19
 	public boolean handleBack() {
22
 		return false;
20
 		return false;

+ 17
- 0
lib/android/app/src/test/java/com/reactnativenavigation/mocks/SimpleViewController.java 파일 보기

1
+package com.reactnativenavigation.mocks;
2
+
3
+import android.app.Activity;
4
+import android.view.View;
5
+
6
+import com.reactnativenavigation.viewcontrollers.ViewController;
7
+
8
+public class SimpleViewController extends ViewController {
9
+	public SimpleViewController(final Activity activity) {
10
+		super(activity);
11
+	}
12
+
13
+	@Override
14
+	protected View onCreateView() {
15
+		return new View(getActivity());
16
+	}
17
+}

+ 4
- 3
lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/StackControllerTest.java 파일 보기

5
 import android.widget.FrameLayout;
5
 import android.widget.FrameLayout;
6
 
6
 
7
 import com.reactnativenavigation.BaseTest;
7
 import com.reactnativenavigation.BaseTest;
8
+import com.reactnativenavigation.mocks.SimpleViewController;
8
 
9
 
9
 import org.junit.Ignore;
10
 import org.junit.Ignore;
10
 import org.junit.Test;
11
 import org.junit.Test;
25
 		super.beforeEach();
26
 		super.beforeEach();
26
 		activity = newActivity();
27
 		activity = newActivity();
27
 		uut = new StackController(activity);
28
 		uut = new StackController(activity);
28
-		child1 = new ViewController(activity);
29
-		child2 = new ViewController(activity);
30
-		child3 = new ViewController(activity);
29
+		child1 = new SimpleViewController(activity);
30
+		child2 = new SimpleViewController(activity);
31
+		child3 = new SimpleViewController(activity);
31
 	}
32
 	}
32
 
33
 
33
 	@Test
34
 	@Test

+ 2
- 1
lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/ViewControllerTest.java 파일 보기

4
 import android.view.View;
4
 import android.view.View;
5
 
5
 
6
 import com.reactnativenavigation.BaseTest;
6
 import com.reactnativenavigation.BaseTest;
7
+import com.reactnativenavigation.mocks.SimpleViewController;
7
 
8
 
8
 import org.junit.Test;
9
 import org.junit.Test;
9
 
10
 
18
 	public void beforeEach() {
19
 	public void beforeEach() {
19
 		super.beforeEach();
20
 		super.beforeEach();
20
 		activity = newActivity();
21
 		activity = newActivity();
21
-		uut = new ViewController(activity);
22
+		uut = new SimpleViewController(activity);
22
 	}
23
 	}
23
 
24
 
24
 	@Test
25
 	@Test