react-native-navigation 7.24.3 → 7.25.0-snapshot.543
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.
- package/lib/android/app/build.gradle +12 -9
- package/lib/android/app/src/main/java/com/reactnativenavigation/NavigationActivity.java +7 -9
- package/lib/android/app/src/main/java/com/reactnativenavigation/options/BottomTabOptions.java +4 -0
- package/lib/android/app/src/main/java/com/reactnativenavigation/options/Options.java +2 -0
- package/lib/android/app/src/main/java/com/reactnativenavigation/options/OverlayOptions.java +3 -2
- package/lib/android/app/src/main/java/com/reactnativenavigation/options/OverlayOptions.kt +31 -0
- package/lib/android/app/src/main/java/com/reactnativenavigation/options/layout/LayoutInsets.kt +44 -0
- package/lib/android/app/src/main/java/com/reactnativenavigation/options/layout/LayoutOptions.kt +71 -0
- package/lib/android/app/src/main/java/com/reactnativenavigation/options/parsers/JSONParser.java +0 -2
- package/lib/android/app/src/main/java/com/reactnativenavigation/utils/PrimitiveExt.kt +9 -0
- package/lib/android/app/src/main/java/com/reactnativenavigation/viewcontrollers/bottomtabs/BottomTabPresenter.java +2 -1
- package/lib/android/app/src/main/java/com/reactnativenavigation/viewcontrollers/bottomtabs/BottomTabsController.java +31 -4
- package/lib/android/app/src/main/java/com/reactnativenavigation/viewcontrollers/child/ChildController.java +6 -13
- package/lib/android/app/src/main/java/com/reactnativenavigation/viewcontrollers/component/ComponentViewController.java +32 -10
- package/lib/android/app/src/main/java/com/reactnativenavigation/viewcontrollers/modal/ModalStack.java +4 -0
- package/lib/android/app/src/main/java/com/reactnativenavigation/viewcontrollers/navigator/Navigator.java +25 -6
- package/lib/android/app/src/main/java/com/reactnativenavigation/viewcontrollers/overlay/OverlayManager.kt +104 -33
- package/lib/android/app/src/main/java/com/reactnativenavigation/viewcontrollers/parent/ParentController.java +86 -9
- package/lib/android/app/src/main/java/com/reactnativenavigation/viewcontrollers/sidemenu/SideMenuController.java +12 -0
- package/lib/android/app/src/main/java/com/reactnativenavigation/viewcontrollers/stack/StackController.java +18 -1
- package/lib/android/app/src/main/java/com/reactnativenavigation/viewcontrollers/stack/StackPresenter.java +51 -0
- package/lib/android/app/src/main/java/com/reactnativenavigation/viewcontrollers/stack/topbar/button/ButtonController.kt +7 -1
- package/lib/android/app/src/main/java/com/reactnativenavigation/viewcontrollers/viewcontroller/Presenter.java +23 -7
- package/lib/android/app/src/main/java/com/reactnativenavigation/viewcontrollers/viewcontroller/RootPresenter.java +0 -1
- package/lib/android/app/src/main/java/com/reactnativenavigation/viewcontrollers/viewcontroller/ViewController.java +24 -3
- package/lib/android/app/src/main/java/com/reactnativenavigation/views/bottomtabs/BottomTabs.java +29 -1
- package/lib/android/app/src/main/java/com/reactnativenavigation/views/bottomtabs/BottomTabsContainer.kt +1 -0
- package/lib/android/app/src/main/java/com/reactnativenavigation/views/bottomtabs/BottomTabsLayout.java +10 -1
- package/lib/android/app/src/main/java/com/reactnativenavigation/views/component/ComponentLayout.java +10 -2
- package/lib/android/app/src/main/java/com/reactnativenavigation/views/overlay/AttachedOverlayContainer.kt +69 -0
- package/lib/android/app/src/main/java/com/reactnativenavigation/views/overlay/ViewTooltip.java +921 -0
- package/lib/android/app/src/main/java/com/reactnativenavigation/views/sidemenu/SideMenuRoot.java +9 -1
- package/lib/android/app/src/main/java/com/reactnativenavigation/views/stack/StackLayout.java +14 -4
- package/lib/android/app/src/main/java/com/reactnativenavigation/views/stack/topbar/TopBar.java +0 -1
- package/lib/android/app/src/main/java/com/reactnativenavigation/views/toptabs/TopTabsStyleHelper.java +0 -1
- package/lib/dist/src/interfaces/Options.d.ts +34 -0
- package/lib/ios/RNNBasePresenter.m +17 -0
- package/lib/ios/RNNBottomTabsController.m +1 -0
- package/lib/ios/RNNComponentViewController.m +5 -0
- package/lib/ios/RNNLayoutOptions.h +2 -1
- package/lib/ios/RNNLayoutOptions.m +4 -0
- package/lib/ios/RNNStackPresenter.m +1 -0
- package/lib/src/interfaces/Options.ts +38 -0
- package/package.json +3 -1
- package/.buildkite/pipeline.yml +0 -59
- package/lib/android/app/src/main/java/com/reactnativenavigation/options/LayoutOptions.java +0 -48
- package/lib/android/app/src/test/java/com/reactnativenavigation/BaseTest.java +0 -178
- package/lib/android/app/src/test/java/com/reactnativenavigation/EnvironmentTest.java +0 -43
- package/lib/android/app/src/test/java/com/reactnativenavigation/TestActivity.java +0 -23
- package/lib/android/app/src/test/java/com/reactnativenavigation/TestApplication.java +0 -35
- package/lib/android/app/src/test/java/com/reactnativenavigation/TestUtils.java +0 -62
- package/lib/android/app/src/test/java/com/reactnativenavigation/fakes/IconResolverFake.kt +0 -8
- package/lib/android/app/src/test/java/com/reactnativenavigation/mocks/BackDrawable.java +0 -30
- package/lib/android/app/src/test/java/com/reactnativenavigation/mocks/ImageLoaderMock.kt +0 -49
- package/lib/android/app/src/test/java/com/reactnativenavigation/mocks/Mocks.kt +0 -18
- package/lib/android/app/src/test/java/com/reactnativenavigation/mocks/SimpleComponentViewController.java +0 -15
- package/lib/android/app/src/test/java/com/reactnativenavigation/mocks/SimpleOverlay.java +0 -54
- package/lib/android/app/src/test/java/com/reactnativenavigation/mocks/SimpleViewController.java +0 -113
- package/lib/android/app/src/test/java/com/reactnativenavigation/mocks/TestComponentLayout.java +0 -79
- package/lib/android/app/src/test/java/com/reactnativenavigation/mocks/TestComponentViewCreator.java +0 -18
- package/lib/android/app/src/test/java/com/reactnativenavigation/mocks/TestReactView.java +0 -71
- package/lib/android/app/src/test/java/com/reactnativenavigation/mocks/TitleBarButtonCreatorMock.java +0 -34
- package/lib/android/app/src/test/java/com/reactnativenavigation/mocks/TitleBarReactViewCreatorMock.java +0 -20
- package/lib/android/app/src/test/java/com/reactnativenavigation/mocks/TopBarBackgroundViewCreatorMock.java +0 -20
- package/lib/android/app/src/test/java/com/reactnativenavigation/mocks/TypefaceLoaderMock.kt +0 -21
- package/lib/android/app/src/test/java/com/reactnativenavigation/options/LayoutNodeParserTest.java +0 -51
- package/lib/android/app/src/test/java/com/reactnativenavigation/options/OptionsTest.java +0 -315
- package/lib/android/app/src/test/java/com/reactnativenavigation/options/OrientationOptionsTest.java +0 -81
- package/lib/android/app/src/test/java/com/reactnativenavigation/options/TopBarButtonsTest.kt +0 -95
- package/lib/android/app/src/test/java/com/reactnativenavigation/options/TransitionAnimationOptionsTest.kt +0 -122
- package/lib/android/app/src/test/java/com/reactnativenavigation/options/parsers/BoolParserTest.java +0 -28
- package/lib/android/app/src/test/java/com/reactnativenavigation/options/parsers/ColorParseTest.java +0 -50
- package/lib/android/app/src/test/java/com/reactnativenavigation/options/parsers/JSONParserTest.java +0 -64
- package/lib/android/app/src/test/java/com/reactnativenavigation/presentation/PresenterTest.java +0 -56
- package/lib/android/app/src/test/java/com/reactnativenavigation/presentation/RenderCheckerTest.java +0 -59
- package/lib/android/app/src/test/java/com/reactnativenavigation/presentation/SideMenuPresenterTest.java +0 -35
- package/lib/android/app/src/test/java/com/reactnativenavigation/react/NavigationModuleTest.java +0 -102
- package/lib/android/app/src/test/java/com/reactnativenavigation/react/ReloadListenerTest.java +0 -24
- package/lib/android/app/src/test/java/com/reactnativenavigation/utils/AnimationHelper.kt +0 -33
- package/lib/android/app/src/test/java/com/reactnativenavigation/utils/ButtonPresenterTest.java +0 -241
- package/lib/android/app/src/test/java/com/reactnativenavigation/utils/ButtonSpanTest.java +0 -57
- package/lib/android/app/src/test/java/com/reactnativenavigation/utils/CompatUtilsTest.java +0 -17
- package/lib/android/app/src/test/java/com/reactnativenavigation/utils/LayoutFactoryTest.java +0 -78
- package/lib/android/app/src/test/java/com/reactnativenavigation/utils/MotionEventTest.kt +0 -47
- package/lib/android/app/src/test/java/com/reactnativenavigation/utils/NativeCommandListenerTest.java +0 -60
- package/lib/android/app/src/test/java/com/reactnativenavigation/utils/OptionHelper.java +0 -16
- package/lib/android/app/src/test/java/com/reactnativenavigation/utils/ReflectionUtilsTest.java +0 -26
- package/lib/android/app/src/test/java/com/reactnativenavigation/utils/StringUtilsTest.java +0 -19
- package/lib/android/app/src/test/java/com/reactnativenavigation/utils/SystemUiUtilsTest.kt +0 -27
- package/lib/android/app/src/test/java/com/reactnativenavigation/utils/TitleAndButtonsMeasurerTest.kt +0 -357
- package/lib/android/app/src/test/java/com/reactnativenavigation/utils/TitleBarHelper.java +0 -54
- package/lib/android/app/src/test/java/com/reactnativenavigation/utils/UiThreadTest.java +0 -29
- package/lib/android/app/src/test/java/com/reactnativenavigation/utils/UiUtilsTest.java +0 -22
- package/lib/android/app/src/test/java/com/reactnativenavigation/utils/ViewHelper.java +0 -9
- package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/OptionsApplyingTest.java +0 -149
- package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/bottomtabs/BottomTabPresenterTest.java +0 -206
- package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/bottomtabs/BottomTabsAttacherTest.java +0 -62
- package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/bottomtabs/BottomTabsControllerTest.kt +0 -589
- package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/bottomtabs/BottomTabsPresenterTest.kt +0 -173
- package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/bottomtabs/attacher/modes/AfterInitialTabTest.java +0 -38
- package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/bottomtabs/attacher/modes/AttachModeTest.java +0 -86
- package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/bottomtabs/attacher/modes/OnSwitchToTabTest.java +0 -31
- package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/bottomtabs/attacher/modes/TogetherTest.java +0 -20
- package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/button/NavigationIconResolverTest.java +0 -78
- package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/child/ChildControllerTest.java +0 -80
- package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/child/ChildControllersRegistryTest.java +0 -56
- package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/component/ComponentViewControllerTest.java +0 -216
- package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/externalcomponent/ExternalComponentViewControllerTest.java +0 -97
- package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/externalcomponent/FragmentCreatorMock.java +0 -34
- package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/externalcomponent/SomeFragment.java +0 -8
- package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/fakes/FakeParentController.kt +0 -33
- package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/modal/ModalAnimatorMock.java +0 -40
- package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/modal/ModalAnimatorTest.kt +0 -213
- package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/modal/ModalPresenterTest.java +0 -319
- package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/modal/ModalStackTest.java +0 -367
- package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/navigator/NavigatorTest.java +0 -898
- package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/navigator/RootPresenterTest.kt +0 -254
- package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/overlay/OverlayManagerTest.java +0 -108
- package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/parent/ParentControllerTest.java +0 -299
- package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/sidemenu/SideMenuControllerTest.java +0 -446
- package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/stack/BackButtonHelperTest.java +0 -77
- package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/stack/FloatingActionButtonTest.java +0 -154
- package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/stack/IdStackTest.java +0 -114
- package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/stack/StackAnimatorTest.kt +0 -241
- package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/stack/StackControllerTest.kt +0 -1165
- package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/stack/StackPresenterTest.kt +0 -1081
- package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/stack/TitleBarButtonControllerTest.java +0 -61
- package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/stack/TitleBarReactViewControllerTest.java +0 -43
- package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/stack/TopBarButtonControllerTest.java +0 -120
- package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/stack/TopBarControllerTest.kt +0 -432
- package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/toptabs/TopTabsViewControllerTest.java +0 -249
- package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/viewcontroller/ViewControllerTest.java +0 -337
- package/lib/android/app/src/test/java/com/reactnativenavigation/viewcontrollers/viewcontroller/YellowBoxDelegateTest.java +0 -68
- package/lib/android/app/src/test/java/com/reactnativenavigation/views/OverlayTouchDelegateTest.java +0 -60
- package/lib/android/app/src/test/java/com/reactnativenavigation/views/TitleAndButtonsContainerTest.kt +0 -477
- package/lib/android/app/src/test/java/com/reactnativenavigation/views/TopBarTest.java +0 -82
- package/lib/android/app/src/test/java/com/reactnativenavigation/views/animations/BaseViewAnimatorTest.kt +0 -109
- package/lib/android/app/src/test/java/com/reactnativenavigation/views/animations/DefaultViewAnimatorCreatorFake.kt +0 -36
- package/lib/android/app/src/test/java/com/reactnativenavigation/views/bottomtabs/BottomTabsContainerTest.kt +0 -101
- package/lib/android/app/src/test/java/com/reactnativenavigation/views/bottomtabs/BottomTabsTest.kt +0 -40
- 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
|
-
}
|
package/lib/android/app/src/test/java/com/reactnativenavigation/views/bottomtabs/BottomTabsTest.kt
DELETED
|
@@ -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
|
-
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
mock-maker-inline
|