react-native-navigation 7.24.3 → 7.25.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (121) hide show
  1. package/lib/android/app/build.gradle +12 -9
  2. package/lib/android/app/src/main/java/com/reactnativenavigation/options/Options.java +2 -0
  3. package/lib/android/app/src/main/java/com/reactnativenavigation/options/layout/LayoutInsets.kt +44 -0
  4. package/lib/android/app/src/main/java/com/reactnativenavigation/options/layout/LayoutOptions.kt +71 -0
  5. package/lib/android/app/src/main/java/com/reactnativenavigation/utils/PrimitiveExt.kt +9 -0
  6. package/lib/android/app/src/main/java/com/reactnativenavigation/viewcontrollers/component/ComponentViewController.java +4 -3
  7. package/lib/android/app/src/main/java/com/reactnativenavigation/viewcontrollers/navigator/Navigator.java +5 -0
  8. package/lib/android/app/src/main/java/com/reactnativenavigation/viewcontrollers/viewcontroller/Presenter.java +23 -7
  9. package/lib/android/app/src/main/java/com/reactnativenavigation/viewcontrollers/viewcontroller/ViewController.java +12 -3
  10. package/lib/dist/src/interfaces/Options.d.ts +10 -0
  11. package/lib/ios/RNNBasePresenter.m +17 -0
  12. package/lib/ios/RNNBottomTabsController.m +1 -0
  13. package/lib/ios/RNNBridgeManager.mm +5 -3
  14. package/lib/ios/RNNComponentViewController.m +5 -0
  15. package/lib/ios/RNNLayoutOptions.h +2 -1
  16. package/lib/ios/RNNLayoutOptions.m +4 -0
  17. package/lib/ios/RNNModalHostViewManagerHandler.h +11 -0
  18. package/lib/ios/RNNModalHostViewManagerHandler.m +40 -0
  19. package/lib/ios/RNNModalManager.h +2 -2
  20. package/lib/ios/RNNModalManager.m +0 -26
  21. package/lib/ios/RNNStackPresenter.m +1 -0
  22. package/lib/ios/ReactNativeNavigation.xcodeproj/project.pbxproj +8 -0
  23. package/lib/src/interfaces/Options.ts +12 -0
  24. package/package.json +3 -1
  25. package/.buildkite/pipeline.yml +0 -59
  26. package/lib/android/app/src/main/java/com/reactnativenavigation/options/LayoutOptions.java +0 -48
  27. package/lib/android/app/src/test/java/com/reactnativenavigation/BaseTest.java +0 -178
  28. package/lib/android/app/src/test/java/com/reactnativenavigation/EnvironmentTest.java +0 -43
  29. package/lib/android/app/src/test/java/com/reactnativenavigation/TestActivity.java +0 -23
  30. package/lib/android/app/src/test/java/com/reactnativenavigation/TestApplication.java +0 -35
  31. package/lib/android/app/src/test/java/com/reactnativenavigation/TestUtils.java +0 -62
  32. package/lib/android/app/src/test/java/com/reactnativenavigation/fakes/IconResolverFake.kt +0 -8
  33. package/lib/android/app/src/test/java/com/reactnativenavigation/mocks/BackDrawable.java +0 -30
  34. package/lib/android/app/src/test/java/com/reactnativenavigation/mocks/ImageLoaderMock.kt +0 -49
  35. package/lib/android/app/src/test/java/com/reactnativenavigation/mocks/Mocks.kt +0 -18
  36. package/lib/android/app/src/test/java/com/reactnativenavigation/mocks/SimpleComponentViewController.java +0 -15
  37. package/lib/android/app/src/test/java/com/reactnativenavigation/mocks/SimpleOverlay.java +0 -54
  38. package/lib/android/app/src/test/java/com/reactnativenavigation/mocks/SimpleViewController.java +0 -113
  39. package/lib/android/app/src/test/java/com/reactnativenavigation/mocks/TestComponentLayout.java +0 -79
  40. package/lib/android/app/src/test/java/com/reactnativenavigation/mocks/TestComponentViewCreator.java +0 -18
  41. package/lib/android/app/src/test/java/com/reactnativenavigation/mocks/TestReactView.java +0 -71
  42. package/lib/android/app/src/test/java/com/reactnativenavigation/mocks/TitleBarButtonCreatorMock.java +0 -34
  43. package/lib/android/app/src/test/java/com/reactnativenavigation/mocks/TitleBarReactViewCreatorMock.java +0 -20
  44. package/lib/android/app/src/test/java/com/reactnativenavigation/mocks/TopBarBackgroundViewCreatorMock.java +0 -20
  45. package/lib/android/app/src/test/java/com/reactnativenavigation/mocks/TypefaceLoaderMock.kt +0 -21
  46. package/lib/android/app/src/test/java/com/reactnativenavigation/options/LayoutNodeParserTest.java +0 -51
  47. package/lib/android/app/src/test/java/com/reactnativenavigation/options/OptionsTest.java +0 -315
  48. package/lib/android/app/src/test/java/com/reactnativenavigation/options/OrientationOptionsTest.java +0 -81
  49. package/lib/android/app/src/test/java/com/reactnativenavigation/options/TopBarButtonsTest.kt +0 -95
  50. package/lib/android/app/src/test/java/com/reactnativenavigation/options/TransitionAnimationOptionsTest.kt +0 -122
  51. package/lib/android/app/src/test/java/com/reactnativenavigation/options/parsers/BoolParserTest.java +0 -28
  52. package/lib/android/app/src/test/java/com/reactnativenavigation/options/parsers/ColorParseTest.java +0 -50
  53. package/lib/android/app/src/test/java/com/reactnativenavigation/options/parsers/JSONParserTest.java +0 -64
  54. package/lib/android/app/src/test/java/com/reactnativenavigation/presentation/PresenterTest.java +0 -56
  55. package/lib/android/app/src/test/java/com/reactnativenavigation/presentation/RenderCheckerTest.java +0 -59
  56. package/lib/android/app/src/test/java/com/reactnativenavigation/presentation/SideMenuPresenterTest.java +0 -35
  57. package/lib/android/app/src/test/java/com/reactnativenavigation/react/NavigationModuleTest.java +0 -102
  58. package/lib/android/app/src/test/java/com/reactnativenavigation/react/ReloadListenerTest.java +0 -24
  59. package/lib/android/app/src/test/java/com/reactnativenavigation/utils/AnimationHelper.kt +0 -33
  60. package/lib/android/app/src/test/java/com/reactnativenavigation/utils/ButtonPresenterTest.java +0 -241
  61. package/lib/android/app/src/test/java/com/reactnativenavigation/utils/ButtonSpanTest.java +0 -57
  62. package/lib/android/app/src/test/java/com/reactnativenavigation/utils/CompatUtilsTest.java +0 -17
  63. package/lib/android/app/src/test/java/com/reactnativenavigation/utils/LayoutFactoryTest.java +0 -78
  64. package/lib/android/app/src/test/java/com/reactnativenavigation/utils/MotionEventTest.kt +0 -47
  65. package/lib/android/app/src/test/java/com/reactnativenavigation/utils/NativeCommandListenerTest.java +0 -60
  66. package/lib/android/app/src/test/java/com/reactnativenavigation/utils/OptionHelper.java +0 -16
  67. package/lib/android/app/src/test/java/com/reactnativenavigation/utils/ReflectionUtilsTest.java +0 -26
  68. package/lib/android/app/src/test/java/com/reactnativenavigation/utils/StringUtilsTest.java +0 -19
  69. package/lib/android/app/src/test/java/com/reactnativenavigation/utils/SystemUiUtilsTest.kt +0 -27
  70. package/lib/android/app/src/test/java/com/reactnativenavigation/utils/TitleAndButtonsMeasurerTest.kt +0 -357
  71. package/lib/android/app/src/test/java/com/reactnativenavigation/utils/TitleBarHelper.java +0 -54
  72. package/lib/android/app/src/test/java/com/reactnativenavigation/utils/UiThreadTest.java +0 -29
  73. package/lib/android/app/src/test/java/com/reactnativenavigation/utils/UiUtilsTest.java +0 -22
  74. package/lib/android/app/src/test/java/com/reactnativenavigation/utils/ViewHelper.java +0 -9
  75. package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/OptionsApplyingTest.java +0 -149
  76. package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/bottomtabs/BottomTabPresenterTest.java +0 -206
  77. package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/bottomtabs/BottomTabsAttacherTest.java +0 -62
  78. package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/bottomtabs/BottomTabsControllerTest.kt +0 -589
  79. package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/bottomtabs/BottomTabsPresenterTest.kt +0 -173
  80. package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/bottomtabs/attacher/modes/AfterInitialTabTest.java +0 -38
  81. package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/bottomtabs/attacher/modes/AttachModeTest.java +0 -86
  82. package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/bottomtabs/attacher/modes/OnSwitchToTabTest.java +0 -31
  83. package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/bottomtabs/attacher/modes/TogetherTest.java +0 -20
  84. package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/button/NavigationIconResolverTest.java +0 -78
  85. package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/child/ChildControllerTest.java +0 -80
  86. package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/child/ChildControllersRegistryTest.java +0 -56
  87. package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/component/ComponentViewControllerTest.java +0 -216
  88. package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/externalcomponent/ExternalComponentViewControllerTest.java +0 -97
  89. package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/externalcomponent/FragmentCreatorMock.java +0 -34
  90. package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/externalcomponent/SomeFragment.java +0 -8
  91. package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/fakes/FakeParentController.kt +0 -33
  92. package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/modal/ModalAnimatorMock.java +0 -40
  93. package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/modal/ModalAnimatorTest.kt +0 -213
  94. package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/modal/ModalPresenterTest.java +0 -319
  95. package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/modal/ModalStackTest.java +0 -367
  96. package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/navigator/NavigatorTest.java +0 -898
  97. package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/navigator/RootPresenterTest.kt +0 -254
  98. package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/overlay/OverlayManagerTest.java +0 -108
  99. package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/parent/ParentControllerTest.java +0 -299
  100. package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/sidemenu/SideMenuControllerTest.java +0 -446
  101. package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/stack/BackButtonHelperTest.java +0 -77
  102. package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/stack/FloatingActionButtonTest.java +0 -154
  103. package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/stack/IdStackTest.java +0 -114
  104. package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/stack/StackAnimatorTest.kt +0 -241
  105. package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/stack/StackControllerTest.kt +0 -1165
  106. package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/stack/StackPresenterTest.kt +0 -1081
  107. package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/stack/TitleBarButtonControllerTest.java +0 -61
  108. package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/stack/TitleBarReactViewControllerTest.java +0 -43
  109. package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/stack/TopBarButtonControllerTest.java +0 -120
  110. package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/stack/TopBarControllerTest.kt +0 -432
  111. package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/toptabs/TopTabsViewControllerTest.java +0 -249
  112. package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/viewcontroller/ViewControllerTest.java +0 -337
  113. package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/viewcontroller/YellowBoxDelegateTest.java +0 -68
  114. package/lib/android/app/src/test/java/com/reactnativenavigation/views/OverlayTouchDelegateTest.java +0 -60
  115. package/lib/android/app/src/test/java/com/reactnativenavigation/views/TitleAndButtonsContainerTest.kt +0 -477
  116. package/lib/android/app/src/test/java/com/reactnativenavigation/views/TopBarTest.java +0 -82
  117. package/lib/android/app/src/test/java/com/reactnativenavigation/views/animations/BaseViewAnimatorTest.kt +0 -109
  118. package/lib/android/app/src/test/java/com/reactnativenavigation/views/animations/DefaultViewAnimatorCreatorFake.kt +0 -36
  119. package/lib/android/app/src/test/java/com/reactnativenavigation/views/bottomtabs/BottomTabsContainerTest.kt +0 -101
  120. package/lib/android/app/src/test/java/com/reactnativenavigation/views/bottomtabs/BottomTabsTest.kt +0 -40
  121. package/lib/android/app/src/test/resources/mockito-extensions/org.mockito.plugins.MockMaker +0 -1
@@ -1,113 +0,0 @@
1
- package com.reactnativenavigation.mocks;
2
-
3
- import android.app.Activity;
4
- import android.content.Context;
5
- import android.view.MotionEvent;
6
-
7
- import androidx.annotation.NonNull;
8
-
9
- import com.facebook.react.ReactInstanceManager;
10
- import com.reactnativenavigation.options.Options;
11
- import com.reactnativenavigation.react.ReactView;
12
- import com.reactnativenavigation.viewcontrollers.child.ChildController;
13
- import com.reactnativenavigation.viewcontrollers.child.ChildControllersRegistry;
14
- import com.reactnativenavigation.viewcontrollers.component.ComponentPresenterBase;
15
- import com.reactnativenavigation.viewcontrollers.viewcontroller.Presenter;
16
- import com.reactnativenavigation.viewcontrollers.viewcontroller.ScrollEventListener;
17
- import com.reactnativenavigation.views.component.ReactComponent;
18
-
19
- import org.mockito.Mockito;
20
-
21
- import static com.reactnativenavigation.utils.ObjectUtils.perform;
22
-
23
- public class SimpleViewController extends ChildController<SimpleViewController.SimpleView> {
24
- private final ComponentPresenterBase presenter = new ComponentPresenterBase();
25
-
26
- public SimpleViewController(Activity activity, ChildControllersRegistry childRegistry, String id, Options options) {
27
- this(activity, childRegistry, id, new Presenter(activity, new Options()), options);
28
- }
29
-
30
- public SimpleViewController(Activity activity, ChildControllersRegistry childRegistry, String id, Presenter presenter, Options options) {
31
- super(activity, childRegistry, id, presenter, options);
32
- }
33
-
34
- @Override
35
- public SimpleView createView() {
36
- return new SimpleView(getActivity());
37
- }
38
-
39
- @Override
40
- public void sendOnNavigationButtonPressed(String buttonId) {
41
- getView().sendOnNavigationButtonPressed(buttonId);
42
- }
43
-
44
- @Override
45
- public void destroy() {
46
- if (!isDestroyed()) performOnParentController(parent -> parent.onChildDestroyed(this));
47
- super.destroy();
48
- }
49
-
50
- @NonNull
51
- @Override
52
- public String toString() {
53
- return "SimpleViewController " + getId();
54
- }
55
-
56
- @Override
57
- public int getTopInset() {
58
- int statusBarInset = resolveCurrentOptions().statusBar.isHiddenOrDrawBehind() ? 0 : 63;
59
- return statusBarInset + perform(getParentController(), 0, p -> p.getTopInset(this));
60
- }
61
-
62
- @Override
63
- public void applyBottomInset() {
64
- if (view != null) presenter.applyBottomInset(view, getBottomInset());
65
- }
66
-
67
- @Override
68
- public String getCurrentComponentName() {
69
- return null;
70
- }
71
-
72
- public static class SimpleView extends ReactView implements ReactComponent {
73
-
74
- public SimpleView(@NonNull Context context) {
75
- super(context, Mockito.mock(ReactInstanceManager.class), "compId", "compName");
76
- }
77
-
78
- @Override
79
- public boolean isRendered() {
80
- return getChildCount() >= 1;
81
- }
82
-
83
- @Override
84
- public boolean isReady() {
85
- return false;
86
- }
87
-
88
- @Override
89
- public ReactView asView() {
90
- return this;
91
- }
92
-
93
- @Override
94
- public void destroy() {
95
-
96
- }
97
-
98
- @Override
99
- public void sendOnNavigationButtonPressed(String buttonId) {
100
-
101
- }
102
-
103
- @Override
104
- public ScrollEventListener getScrollEventListener() {
105
- return null;
106
- }
107
-
108
- @Override
109
- public void dispatchTouchEventToJs(MotionEvent event) {
110
-
111
- }
112
- }
113
- }
@@ -1,79 +0,0 @@
1
- package com.reactnativenavigation.mocks;
2
-
3
- import android.content.Context;
4
- import android.view.MotionEvent;
5
- import android.view.ViewGroup;
6
-
7
- import androidx.annotation.NonNull;
8
-
9
- import com.reactnativenavigation.options.ButtonOptions;
10
- import com.reactnativenavigation.viewcontrollers.viewcontroller.ScrollEventListener;
11
- import com.reactnativenavigation.options.Options;
12
- import com.reactnativenavigation.react.ReactView;
13
- import com.reactnativenavigation.react.events.ComponentType;
14
- import com.reactnativenavigation.viewcontrollers.stack.topbar.button.ButtonController;
15
- import com.reactnativenavigation.views.component.ComponentLayout;
16
-
17
- public class TestComponentLayout extends ComponentLayout implements ButtonController.OnClickListener {
18
-
19
- private ReactView reactView;
20
-
21
- public TestComponentLayout(final Context context, ReactView reactView) {
22
- super(context, reactView);
23
- this.reactView = reactView;
24
- }
25
-
26
- @Override
27
- public boolean isReady() {
28
- return false;
29
- }
30
-
31
- @Override
32
- public ViewGroup asView() {
33
- return this;
34
- }
35
-
36
- @Override
37
- public void destroy() {
38
- }
39
-
40
- @Override
41
- public void sendComponentWillStart() {
42
- reactView.sendComponentStart(ComponentType.Component);
43
- }
44
-
45
- @Override
46
- public void sendComponentStart() {
47
- reactView.sendComponentStart(ComponentType.Component);
48
- }
49
-
50
- @Override
51
- public void sendComponentStop() {
52
- reactView.sendComponentStop(ComponentType.Component);
53
- }
54
-
55
- @Override
56
- public void applyOptions(Options options) {
57
-
58
- }
59
-
60
- @Override
61
- public void sendOnNavigationButtonPressed(String id) {
62
-
63
- }
64
-
65
- @Override
66
- public ScrollEventListener getScrollEventListener() {
67
- return null;
68
- }
69
-
70
- @Override
71
- public void dispatchTouchEventToJs(MotionEvent event) {
72
-
73
- }
74
-
75
- @Override
76
- public void onPress(@NonNull ButtonOptions button) {
77
-
78
- }
79
- }
@@ -1,18 +0,0 @@
1
- package com.reactnativenavigation.mocks;
2
-
3
- import android.app.Activity;
4
-
5
- import com.reactnativenavigation.react.ReactView;
6
- import com.reactnativenavigation.viewcontrollers.viewcontroller.ReactViewCreator;
7
- import com.reactnativenavigation.views.component.ComponentLayout;
8
- import com.reactnativenavigation.views.component.ReactComponent;
9
-
10
- import static org.mockito.Mockito.spy;
11
-
12
- public class TestComponentViewCreator implements ReactViewCreator {
13
- @Override
14
- public ReactComponent create(final Activity activity, final String componentId, final String componentName) {
15
- ReactView reactView = spy(new TestReactView(activity));
16
- return new ComponentLayout(activity, reactView);
17
- }
18
- }
@@ -1,71 +0,0 @@
1
- package com.reactnativenavigation.mocks;
2
-
3
- import android.content.Context;
4
- import android.os.Bundle;
5
- import android.view.MotionEvent;
6
-
7
- import com.facebook.react.ReactInstanceManager;
8
- import com.reactnativenavigation.viewcontrollers.viewcontroller.ScrollEventListener;
9
- import com.reactnativenavigation.react.ReactView;
10
- import com.reactnativenavigation.react.events.ComponentType;
11
- import com.reactnativenavigation.viewcontrollers.viewcontroller.IReactView;
12
-
13
- import androidx.annotation.NonNull;
14
- import androidx.annotation.Nullable;
15
-
16
- public class TestReactView extends ReactView implements IReactView {
17
-
18
- public TestReactView(@NonNull Context context) {
19
- super(context, null, "", "");
20
- }
21
-
22
- @Override
23
- public void startReactApplication(ReactInstanceManager reactInstanceManager, String moduleName, @Nullable Bundle initialProperties, @Nullable String initialUITemplate) {
24
-
25
- }
26
-
27
- @Override
28
- public void sendComponentWillStart(ComponentType type) {
29
-
30
- }
31
-
32
- @Override
33
- public void sendComponentStart(ComponentType type) {
34
-
35
- }
36
-
37
- @Override
38
- public void sendComponentStop(ComponentType type) {
39
-
40
- }
41
-
42
- @Override
43
- public boolean isReady() {
44
- return false;
45
- }
46
-
47
- @Override
48
- public void destroy() {
49
-
50
- }
51
-
52
- @Override
53
- public void sendOnNavigationButtonPressed(String buttonId) {
54
-
55
- }
56
-
57
- @Override
58
- public ScrollEventListener getScrollEventListener() {
59
- return null;
60
- }
61
-
62
- @Override
63
- public void dispatchTouchEventToJs(MotionEvent event) {
64
-
65
- }
66
-
67
- @Override
68
- public boolean isRendered() {
69
- return getChildCount() >= 1;
70
- }
71
- }
@@ -1,34 +0,0 @@
1
- package com.reactnativenavigation.mocks;
2
-
3
- import android.app.Activity;
4
-
5
- import com.facebook.react.ReactInstanceManager;
6
- import com.reactnativenavigation.options.ComponentOptions;
7
- import com.reactnativenavigation.react.events.ComponentType;
8
- import com.reactnativenavigation.views.stack.topbar.titlebar.TitleBarButtonCreator;
9
- import com.reactnativenavigation.views.stack.topbar.titlebar.TitleBarReactButtonView;
10
-
11
- import static org.mockito.Mockito.mock;
12
-
13
- public class TitleBarButtonCreatorMock extends TitleBarButtonCreator {
14
-
15
- public TitleBarButtonCreatorMock() {
16
- super(null);
17
- }
18
-
19
- @Override
20
- public TitleBarReactButtonView create(Activity activity, ComponentOptions component) {
21
- final ReactInstanceManager reactInstanceManager = mock(ReactInstanceManager.class);
22
- return new TitleBarReactButtonView(activity, reactInstanceManager, component) {
23
- @Override
24
- public void sendComponentStart(ComponentType type) {
25
-
26
- }
27
-
28
- @Override
29
- public void sendComponentStop(ComponentType type) {
30
-
31
- }
32
- };
33
- }
34
- }
@@ -1,20 +0,0 @@
1
- package com.reactnativenavigation.mocks;
2
-
3
- import android.app.Activity;
4
-
5
- import com.facebook.react.ReactInstanceManager;
6
- import com.reactnativenavigation.views.stack.topbar.titlebar.TitleBarReactView;
7
- import com.reactnativenavigation.views.stack.topbar.titlebar.TitleBarReactViewCreator;
8
-
9
- import static org.mockito.Mockito.mock;
10
-
11
- public class TitleBarReactViewCreatorMock extends TitleBarReactViewCreator {
12
- public TitleBarReactViewCreatorMock() {
13
- super(mock(ReactInstanceManager.class));
14
- }
15
-
16
- @Override
17
- public TitleBarReactView create(Activity activity, String componentId, String componentName) {
18
- return new TitleBarReactView(activity, instanceManager, componentId, componentName);
19
- }
20
- }
@@ -1,20 +0,0 @@
1
- package com.reactnativenavigation.mocks;
2
-
3
- import android.app.Activity;
4
-
5
- import com.facebook.react.ReactInstanceManager;
6
- import com.reactnativenavigation.views.stack.topbar.TopBarBackgroundView;
7
- import com.reactnativenavigation.views.stack.topbar.TopBarBackgroundViewCreator;
8
-
9
- import static org.mockito.Mockito.mock;
10
-
11
- public class TopBarBackgroundViewCreatorMock extends TopBarBackgroundViewCreator {
12
- public TopBarBackgroundViewCreatorMock() {
13
- super(mock(ReactInstanceManager.class));
14
- }
15
-
16
- @Override
17
- public TopBarBackgroundView create(Activity activity, String componentId, String componentName) {
18
- return new TopBarBackgroundView(activity, instanceManager, componentId, componentName);
19
- }
20
- }
@@ -1,21 +0,0 @@
1
- package com.reactnativenavigation.mocks
2
-
3
- import android.graphics.Typeface
4
- import com.reactnativenavigation.options.parsers.TypefaceLoader
5
- import org.mockito.kotlin.mock
6
-
7
- class TypefaceLoaderMock() : TypefaceLoader(mock()) {
8
- private var mockTypefaces: Map<String, Typeface>? = null
9
-
10
- constructor(mockTypefaces: Map<String, Typeface>?) : this() {
11
- this.mockTypefaces = mockTypefaces
12
-
13
- }
14
-
15
- override val defaultTypeFace: Typeface
16
- get() = Typeface.DEFAULT
17
-
18
- override fun getTypeFace(fontFamilyName: String?, fontStyle: String?, fontWeight: String?, defaultTypeFace: Typeface?): Typeface? {
19
- return mockTypefaces?.getOrDefault(fontFamilyName, defaultTypeFace) ?: defaultTypeFace
20
- }
21
- }
@@ -1,51 +0,0 @@
1
- package com.reactnativenavigation.options;
2
-
3
- import com.reactnativenavigation.*;
4
- import com.reactnativenavigation.options.parsers.LayoutNodeParser;
5
-
6
- import org.json.*;
7
- import org.junit.*;
8
-
9
- import static org.assertj.core.api.Java6Assertions.*;
10
-
11
- public class LayoutNodeParserTest extends BaseTest {
12
- @Test
13
- public void dto() throws Exception {
14
- LayoutNode node = new LayoutNode("the id", LayoutNode.Type.Component);
15
- assertThat(node.id).isEqualTo("the id");
16
- assertThat(node.type).isEqualTo(LayoutNode.Type.Component);
17
- assertThat(node.data.keys()).isEmpty();
18
- assertThat(node.children).isEmpty();
19
- }
20
-
21
- @Test
22
- public void parseType() throws Exception {
23
- assertThat(LayoutNode.Type.valueOf("Component")).isEqualTo(LayoutNode.Type.Component);
24
- }
25
-
26
- @Test(expected = RuntimeException.class)
27
- public void invalidType() throws Exception {
28
- LayoutNode.Type.valueOf("some type");
29
- }
30
-
31
- @Test
32
- public void parseFromTree() throws Exception {
33
- JSONObject tree = new JSONObject("{id: node1, " +
34
- "type: Stack, " +
35
- "data: {dataKey: dataValue}, " +
36
- "children: [{id: childId1, type: Component}]}");
37
-
38
- LayoutNode result = LayoutNodeParser.parse(tree);
39
-
40
- assertThat(result).isNotNull();
41
- assertThat(result.id).isEqualTo("node1");
42
- assertThat(result.type).isEqualTo(LayoutNode.Type.Stack);
43
- assertThat(result.data.length()).isEqualTo(1);
44
- assertThat(result.data.getString("dataKey")).isEqualTo("dataValue");
45
- assertThat(result.children).hasSize(1);
46
- assertThat(result.children.get(0).id).isEqualTo("childId1");
47
- assertThat(result.children.get(0).type).isEqualTo(LayoutNode.Type.Component);
48
- assertThat(result.children.get(0).data.keys()).isEmpty();
49
- assertThat(result.children.get(0).children).isEmpty();
50
- }
51
- }