react-native-navigation 7.24.0 → 7.24.3-snapshot.492

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 (113) hide show
  1. package/lib/Mock/Components/ComponentScreen.tsx +1 -1
  2. package/lib/Mock/Components/NavigationButton.tsx +1 -1
  3. package/lib/Mock/Components/TopBar.tsx +6 -2
  4. package/lib/android/app/build.gradle +12 -9
  5. package/lib/android/app/src/main/java/com/reactnativenavigation/react/ReactView.java +13 -9
  6. package/lib/android/app/src/main/java/com/reactnativenavigation/utils/SystemUiUtils.kt +3 -2
  7. package/lib/android/app/src/main/java/com/reactnativenavigation/viewcontrollers/bottomtabs/BottomTabsController.java +1 -0
  8. package/lib/android/app/src/main/java/com/reactnativenavigation/viewcontrollers/component/ComponentViewController.java +2 -0
  9. package/lib/android/app/src/main/java/com/reactnativenavigation/viewcontrollers/modal/ModalPresenter.java +4 -6
  10. package/lib/android/app/src/main/java/com/reactnativenavigation/viewcontrollers/stack/StackController.java +2 -4
  11. package/lib/android/app/src/main/java/com/reactnativenavigation/views/bottomtabs/BottomTabs.java +6 -0
  12. package/lib/dist/Mock/Components/ComponentScreen.js +2 -2
  13. package/lib/dist/Mock/Components/NavigationButton.d.ts +1 -1
  14. package/lib/dist/Mock/Components/NavigationButton.js +3 -3
  15. package/lib/dist/Mock/Components/TopBar.d.ts +1 -2
  16. package/lib/dist/Mock/Components/TopBar.js +3 -3
  17. package/lib/ios/RNNComponentRootView.m +0 -14
  18. package/package.json +1 -1
  19. package/.buildkite/pipeline.yml +0 -59
  20. package/lib/android/app/src/test/java/com/reactnativenavigation/BaseTest.java +0 -178
  21. package/lib/android/app/src/test/java/com/reactnativenavigation/EnvironmentTest.java +0 -43
  22. package/lib/android/app/src/test/java/com/reactnativenavigation/TestActivity.java +0 -23
  23. package/lib/android/app/src/test/java/com/reactnativenavigation/TestApplication.java +0 -35
  24. package/lib/android/app/src/test/java/com/reactnativenavigation/TestUtils.java +0 -62
  25. package/lib/android/app/src/test/java/com/reactnativenavigation/fakes/IconResolverFake.kt +0 -8
  26. package/lib/android/app/src/test/java/com/reactnativenavigation/mocks/BackDrawable.java +0 -30
  27. package/lib/android/app/src/test/java/com/reactnativenavigation/mocks/ImageLoaderMock.kt +0 -49
  28. package/lib/android/app/src/test/java/com/reactnativenavigation/mocks/Mocks.kt +0 -18
  29. package/lib/android/app/src/test/java/com/reactnativenavigation/mocks/SimpleComponentViewController.java +0 -15
  30. package/lib/android/app/src/test/java/com/reactnativenavigation/mocks/SimpleOverlay.java +0 -54
  31. package/lib/android/app/src/test/java/com/reactnativenavigation/mocks/SimpleViewController.java +0 -113
  32. package/lib/android/app/src/test/java/com/reactnativenavigation/mocks/TestComponentLayout.java +0 -79
  33. package/lib/android/app/src/test/java/com/reactnativenavigation/mocks/TestComponentViewCreator.java +0 -18
  34. package/lib/android/app/src/test/java/com/reactnativenavigation/mocks/TestReactView.java +0 -71
  35. package/lib/android/app/src/test/java/com/reactnativenavigation/mocks/TitleBarButtonCreatorMock.java +0 -34
  36. package/lib/android/app/src/test/java/com/reactnativenavigation/mocks/TitleBarReactViewCreatorMock.java +0 -20
  37. package/lib/android/app/src/test/java/com/reactnativenavigation/mocks/TopBarBackgroundViewCreatorMock.java +0 -20
  38. package/lib/android/app/src/test/java/com/reactnativenavigation/mocks/TypefaceLoaderMock.kt +0 -21
  39. package/lib/android/app/src/test/java/com/reactnativenavigation/options/LayoutNodeParserTest.java +0 -51
  40. package/lib/android/app/src/test/java/com/reactnativenavigation/options/OptionsTest.java +0 -315
  41. package/lib/android/app/src/test/java/com/reactnativenavigation/options/OrientationOptionsTest.java +0 -81
  42. package/lib/android/app/src/test/java/com/reactnativenavigation/options/TopBarButtonsTest.kt +0 -95
  43. package/lib/android/app/src/test/java/com/reactnativenavigation/options/TransitionAnimationOptionsTest.kt +0 -122
  44. package/lib/android/app/src/test/java/com/reactnativenavigation/options/parsers/BoolParserTest.java +0 -28
  45. package/lib/android/app/src/test/java/com/reactnativenavigation/options/parsers/ColorParseTest.java +0 -50
  46. package/lib/android/app/src/test/java/com/reactnativenavigation/options/parsers/JSONParserTest.java +0 -64
  47. package/lib/android/app/src/test/java/com/reactnativenavigation/presentation/PresenterTest.java +0 -56
  48. package/lib/android/app/src/test/java/com/reactnativenavigation/presentation/RenderCheckerTest.java +0 -59
  49. package/lib/android/app/src/test/java/com/reactnativenavigation/presentation/SideMenuPresenterTest.java +0 -35
  50. package/lib/android/app/src/test/java/com/reactnativenavigation/react/NavigationModuleTest.java +0 -102
  51. package/lib/android/app/src/test/java/com/reactnativenavigation/react/ReloadListenerTest.java +0 -24
  52. package/lib/android/app/src/test/java/com/reactnativenavigation/utils/AnimationHelper.kt +0 -33
  53. package/lib/android/app/src/test/java/com/reactnativenavigation/utils/ButtonPresenterTest.java +0 -241
  54. package/lib/android/app/src/test/java/com/reactnativenavigation/utils/ButtonSpanTest.java +0 -57
  55. package/lib/android/app/src/test/java/com/reactnativenavigation/utils/CompatUtilsTest.java +0 -17
  56. package/lib/android/app/src/test/java/com/reactnativenavigation/utils/LayoutFactoryTest.java +0 -78
  57. package/lib/android/app/src/test/java/com/reactnativenavigation/utils/MotionEventTest.kt +0 -47
  58. package/lib/android/app/src/test/java/com/reactnativenavigation/utils/NativeCommandListenerTest.java +0 -60
  59. package/lib/android/app/src/test/java/com/reactnativenavigation/utils/OptionHelper.java +0 -16
  60. package/lib/android/app/src/test/java/com/reactnativenavigation/utils/ReflectionUtilsTest.java +0 -26
  61. package/lib/android/app/src/test/java/com/reactnativenavigation/utils/StringUtilsTest.java +0 -19
  62. package/lib/android/app/src/test/java/com/reactnativenavigation/utils/TitleAndButtonsMeasurerTest.kt +0 -357
  63. package/lib/android/app/src/test/java/com/reactnativenavigation/utils/TitleBarHelper.java +0 -54
  64. package/lib/android/app/src/test/java/com/reactnativenavigation/utils/UiThreadTest.java +0 -29
  65. package/lib/android/app/src/test/java/com/reactnativenavigation/utils/UiUtilsTest.java +0 -22
  66. package/lib/android/app/src/test/java/com/reactnativenavigation/utils/ViewHelper.java +0 -9
  67. package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/OptionsApplyingTest.java +0 -149
  68. package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/bottomtabs/BottomTabPresenterTest.java +0 -206
  69. package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/bottomtabs/BottomTabsAttacherTest.java +0 -62
  70. package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/bottomtabs/BottomTabsControllerTest.kt +0 -572
  71. package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/bottomtabs/BottomTabsPresenterTest.kt +0 -173
  72. package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/bottomtabs/attacher/modes/AfterInitialTabTest.java +0 -38
  73. package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/bottomtabs/attacher/modes/AttachModeTest.java +0 -86
  74. package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/bottomtabs/attacher/modes/OnSwitchToTabTest.java +0 -31
  75. package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/bottomtabs/attacher/modes/TogetherTest.java +0 -20
  76. package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/button/NavigationIconResolverTest.java +0 -78
  77. package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/child/ChildControllerTest.java +0 -80
  78. package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/child/ChildControllersRegistryTest.java +0 -56
  79. package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/component/ComponentViewControllerTest.java +0 -191
  80. package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/externalcomponent/ExternalComponentViewControllerTest.java +0 -97
  81. package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/externalcomponent/FragmentCreatorMock.java +0 -34
  82. package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/externalcomponent/SomeFragment.java +0 -8
  83. package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/fakes/FakeParentController.kt +0 -33
  84. package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/modal/ModalAnimatorMock.java +0 -40
  85. package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/modal/ModalAnimatorTest.kt +0 -213
  86. package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/modal/ModalPresenterTest.java +0 -319
  87. package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/modal/ModalStackTest.java +0 -368
  88. package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/navigator/NavigatorTest.java +0 -898
  89. package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/navigator/RootPresenterTest.kt +0 -254
  90. package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/overlay/OverlayManagerTest.java +0 -108
  91. package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/parent/ParentControllerTest.java +0 -299
  92. package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/sidemenu/SideMenuControllerTest.java +0 -446
  93. package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/stack/BackButtonHelperTest.java +0 -77
  94. package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/stack/FloatingActionButtonTest.java +0 -154
  95. package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/stack/IdStackTest.java +0 -114
  96. package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/stack/StackAnimatorTest.kt +0 -241
  97. package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/stack/StackControllerTest.kt +0 -1165
  98. package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/stack/StackPresenterTest.kt +0 -1081
  99. package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/stack/TitleBarButtonControllerTest.java +0 -61
  100. package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/stack/TitleBarReactViewControllerTest.java +0 -43
  101. package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/stack/TopBarButtonControllerTest.java +0 -120
  102. package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/stack/TopBarControllerTest.kt +0 -432
  103. package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/toptabs/TopTabsViewControllerTest.java +0 -247
  104. package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/viewcontroller/ViewControllerTest.java +0 -337
  105. package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/viewcontroller/YellowBoxDelegateTest.java +0 -68
  106. package/lib/android/app/src/test/java/com/reactnativenavigation/views/OverlayTouchDelegateTest.java +0 -60
  107. package/lib/android/app/src/test/java/com/reactnativenavigation/views/TitleAndButtonsContainerTest.kt +0 -477
  108. package/lib/android/app/src/test/java/com/reactnativenavigation/views/TopBarTest.java +0 -82
  109. package/lib/android/app/src/test/java/com/reactnativenavigation/views/animations/BaseViewAnimatorTest.kt +0 -109
  110. package/lib/android/app/src/test/java/com/reactnativenavigation/views/animations/DefaultViewAnimatorCreatorFake.kt +0 -36
  111. package/lib/android/app/src/test/java/com/reactnativenavigation/views/bottomtabs/BottomTabsContainerTest.kt +0 -101
  112. package/lib/android/app/src/test/java/com/reactnativenavigation/views/bottomtabs/BottomTabsTest.kt +0 -40
  113. 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
- }