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,109 +0,0 @@
1
- package com.reactnativenavigation.views.animations
2
-
3
- import android.animation.Animator
4
- import android.view.View
5
- import com.reactnativenavigation.BaseTest
6
- import com.reactnativenavigation.options.AnimationOptions
7
- import org.assertj.core.api.Java6Assertions.assertThat
8
- import org.junit.Test
9
- import org.mockito.kotlin.mock
10
- import org.mockito.kotlin.spy
11
- import org.mockito.kotlin.verify
12
- import org.mockito.kotlin.whenever
13
-
14
- class BaseViewAnimatorTest : BaseTest() {
15
- private lateinit var uut: BaseViewAnimator<View>
16
- private lateinit var view: View
17
- private lateinit var defaultAnimatorCreator: ViewAnimatorCreator
18
-
19
- private val defaultShowAnimator: Animator
20
- get() = defaultAnimatorCreator.getShowAnimator(view, BaseViewAnimator.HideDirection.Up, 0f)
21
- private val defaultHideAnimator: Animator
22
- get() = defaultAnimatorCreator.getHideAnimator(view, BaseViewAnimator.HideDirection.Up, 0f)
23
-
24
-
25
- override fun beforeEach() {
26
- view = View(newActivity())
27
- defaultAnimatorCreator = DefaultViewAnimatorCreatorFake()
28
- uut = BaseViewAnimator(
29
- hideDirection = BaseViewAnimator.HideDirection.Up,
30
- view = view,
31
- defaultAnimatorCreator = defaultAnimatorCreator
32
- )
33
- }
34
-
35
- @Test
36
- fun show() {
37
- view.visibility = View.GONE
38
-
39
- assertNotAnimating()
40
- uut.show()
41
- assertAnimatingShow()
42
- }
43
-
44
- @Test
45
- fun show_doesNothingIsAlreadyAnimatingShow() {
46
- view.visibility = View.GONE
47
- uut.show()
48
-
49
- val animator = uut.showAnimator
50
- uut.show()
51
- assertThat(animator).isEqualTo(uut.showAnimator)
52
- }
53
-
54
- @Test
55
- fun show_updatesTranslationDy() {
56
- view.visibility = View.GONE
57
- val options = spy<AnimationOptions>()
58
- whenever(options.hasValue()).thenReturn(true)
59
-
60
- uut.show(options, 123f)
61
- verify(options).setValueDy(View.TRANSLATION_Y, -123f, 0f)
62
- }
63
-
64
- @Test
65
- fun show_usesDefaultShowAnimatorIfAnimationIsNotSpecifiedInOptions() {
66
- view.visibility = View.GONE
67
- uut.show(mock())
68
- assertThat(uut.showAnimator).isEqualTo(defaultShowAnimator)
69
- }
70
-
71
- @Test
72
- fun hide() {
73
- assertNotAnimating()
74
- val onAnimationEnd = mock<Runnable>()
75
- uut.hide(mock(), 0f, onAnimationEnd)
76
- assertAnimatingHide()
77
-
78
- uut.hideAnimator.end()
79
- verify(onAnimationEnd).run()
80
- }
81
-
82
- @Test
83
- fun hide_doesNothingIfAlreadyAnimatingHide() {
84
- uut.hide(mock())
85
-
86
- val animator = uut.hideAnimator
87
- uut.hide(mock())
88
- assertThat(animator).isEqualTo(uut.hideAnimator)
89
- }
90
-
91
- @Test
92
- fun hide_updatesTranslationDy() {
93
- val options = spy<AnimationOptions>()
94
- whenever(options.hasValue()).thenReturn(true)
95
-
96
- uut.hide(options, 123f)
97
- verify(options).setValueDy(View.TRANSLATION_Y, 0f, -123f)
98
- }
99
-
100
- @Test
101
- fun hide_usesDefaultHideAnimatorIfAnimationIsNotSpecifiedInOptions() {
102
- uut.hide(mock())
103
- assertThat(uut.hideAnimator).isEqualTo(defaultHideAnimator)
104
- }
105
-
106
- private fun assertNotAnimating() = assertThat(uut.isAnimatingHide() && uut.isAnimatingShow()).isFalse()
107
- private fun assertAnimatingShow() = assertThat(uut.isAnimatingShow() && !uut.isAnimatingHide()).isTrue()
108
- private fun assertAnimatingHide() = assertThat(uut.isAnimatingHide() && !uut.isAnimatingShow()).isTrue()
109
- }
@@ -1,36 +0,0 @@
1
- package com.reactnativenavigation.views.animations
2
-
3
- import android.animation.Animator
4
- import android.animation.ObjectAnimator
5
- import android.view.View
6
- import com.reactnativenavigation.utils.ViewUtils
7
-
8
- class DefaultViewAnimatorCreatorFake : ViewAnimatorCreator {
9
- private var showAnimator: Animator? = null
10
- private var hideAnimator: Animator? = null
11
-
12
- override fun getShowAnimator(view: View, hideDirection: BaseViewAnimator.HideDirection, translationStart: Float): Animator {
13
- if (showAnimator == null) {
14
- val direction = if (hideDirection == BaseViewAnimator.HideDirection.Up) 1 else -1
15
- showAnimator = ObjectAnimator.ofFloat(
16
- view,
17
- View.TRANSLATION_Y,
18
- direction * (-ViewUtils.getHeight(view) - translationStart),
19
- 0f)
20
- }
21
- return showAnimator!!
22
- }
23
-
24
- override fun getHideAnimator(view: View, hideDirection: BaseViewAnimator.HideDirection, additionalDy: Float): Animator {
25
- if (hideAnimator == null) {
26
- val direction = if (hideDirection == BaseViewAnimator.HideDirection.Up) -1 else 1
27
- hideAnimator = ObjectAnimator.ofFloat(
28
- view,
29
- View.TRANSLATION_Y,
30
- view.translationY,
31
- direction * (view.measuredHeight + additionalDy)
32
- )
33
- }
34
- return hideAnimator!!
35
- }
36
- }
@@ -1,101 +0,0 @@
1
- package com.reactnativenavigation.views.bottomtabs
2
-
3
- import android.app.Activity
4
- import android.graphics.Color
5
- import android.graphics.drawable.ColorDrawable
6
- import android.view.View
7
- import android.widget.LinearLayout
8
- import androidx.core.graphics.ColorUtils
9
- import org.mockito.kotlin.*
10
- import com.reactnativenavigation.BaseTest
11
- import org.assertj.core.api.Assertions.assertThat
12
- import org.junit.Test
13
- import kotlin.math.roundToInt
14
-
15
- class BottomTabsContainerTest : BaseTest() {
16
- private lateinit var uut: BottomTabsContainer
17
- private lateinit var bottomTabs: BottomTabs
18
-
19
- private lateinit var activity: Activity
20
-
21
- override fun beforeEach() {
22
- this.bottomTabs = mock()
23
- this.activity = newActivity()
24
- uut = spy(BottomTabsContainer(activity, bottomTabs))
25
- }
26
-
27
- @Test
28
- fun `init - should have only one child as vertical LinearLayout with border and bottom tabs`() {
29
- assertThat(uut.childCount).isEqualTo(1)
30
- val childAt = uut.getChildAt(0)
31
- assertThat(childAt).isInstanceOf(LinearLayout::class.java)
32
- val linearLayout = childAt as LinearLayout
33
- assertThat(linearLayout.getChildAt(0)).isInstanceOf(TopOutlineView::class.java)
34
- assertThat(linearLayout.getChildAt(1)).isInstanceOf(BottomTabs::class.java)
35
- }
36
-
37
- @Test
38
- fun `init - should have defaults set for shadow and topOutline`() {
39
- val topOutLineView = uut.topOutLineView
40
- val background = topOutLineView.background as? ColorDrawable
41
- assertThat(background?.color).isEqualTo(DEFAULT_TOP_OUTLINE_COLOR)
42
- assertThat(topOutLineView.layoutParams.height).isEqualTo(DEFAULT_TOP_OUTLINE_SIZE_PX)
43
- assertThat(uut.shadowColor).isEqualTo(DEFAULT_SHADOW_COLOR)
44
- assertThat(uut.shadowDistance).isEqualTo(DEFAULT_SHADOW_DISTANCE)
45
- assertThat(uut.shadowAngle).isEqualTo(DEFAULT_SHADOW_ANGLE)
46
-
47
- }
48
-
49
- @Test
50
- fun `should change top outline color, no visible changes`() {
51
- uut.setTopOutLineColor(Color.RED)
52
- val topOutLineView = uut.topOutLineView
53
- val background = topOutLineView.background as? ColorDrawable
54
- assertThat(background?.color).isEqualTo(Color.RED)
55
- assertThat(topOutLineView.visibility).isEqualTo(View.GONE)
56
- }
57
-
58
- @Test
59
- fun `should change top outline width, no visible changes`() {
60
- uut.setTopOutlineWidth(10)
61
- val topOutLineView = uut.topOutLineView
62
- assertThat(topOutLineView.layoutParams.height).isEqualTo(10)
63
- assertThat(topOutLineView.visibility).isEqualTo(View.GONE)
64
- }
65
-
66
- @Test
67
- fun `should show top outline when calling show`() {
68
- val topOutLineView = uut.topOutLineView
69
- assertThat(topOutLineView.visibility).isEqualTo(View.GONE)
70
-
71
- uut.showTopLine()
72
- assertThat(topOutLineView.visibility).isEqualTo(View.VISIBLE)
73
- }
74
-
75
- @Test
76
- fun `should clear top outline when calling show`() {
77
- val topOutLineView = uut.topOutLineView
78
- uut.showTopLine()
79
- assertThat(topOutLineView.visibility).isEqualTo(View.VISIBLE)
80
-
81
- uut.clearTopOutline()
82
- assertThat(topOutLineView.visibility).isEqualTo(View.GONE)
83
- }
84
-
85
- @Test
86
- fun `should update layout upon shadow color change`() {
87
- uut.shadowColor = Color.RED
88
- verify(uut, times(1)).requestLayout()
89
- assertThat(uut.shadowColor).isEqualTo(Color.RED)
90
- }
91
-
92
- @Test
93
- fun `should update color alpha upon changing opacity`() {
94
- uut.shadowColor = Color.RED
95
- assertThat(uut.shadowColor).isEqualTo(Color.RED)
96
- uut.setShadowOpacity(0.5f)
97
- assertThat(uut.shadowColor).isEqualTo(ColorUtils.setAlphaComponent(Color.RED, (0.5f * 0xFF).roundToInt()))
98
- }
99
-
100
-
101
- }
@@ -1,40 +0,0 @@
1
- package com.reactnativenavigation.views.bottomtabs
2
-
3
- import org.mockito.kotlin.never
4
- import org.mockito.kotlin.spy
5
- import org.mockito.kotlin.times
6
- import org.mockito.kotlin.verify
7
- import com.reactnativenavigation.BaseTest
8
- import org.junit.Test
9
-
10
- class BottomTabsTest : BaseTest() {
11
- private lateinit var uut: BottomTabs
12
-
13
- override fun beforeEach() {
14
- uut = spy(BottomTabs(newActivity()))
15
- }
16
-
17
- @Test
18
- fun createItems_triggersSuperCall() {
19
- uut.createItems()
20
- verify(uut).superCreateItems()
21
- }
22
-
23
- @Test
24
- fun createItems_superNotInvokedWhenDisabled() {
25
- uut.disableItemsCreation()
26
- uut.createItems()
27
- verify(uut, never()).superCreateItems()
28
- }
29
-
30
- @Test
31
- fun createItems_superInvokedAfterItemCreationIsEnabledOnlyOnce() {
32
- uut.disableItemsCreation()
33
- uut.createItems()
34
- verify(uut, never()).superCreateItems()
35
-
36
- uut.enableItemsCreation()
37
- uut.enableItemsCreation()
38
- verify(uut, times(1)).superCreateItems()
39
- }
40
- }