mirror of
https://github.com/kiwix/kiwix-android.git
synced 2025-08-03 02:36:24 -04:00
Updated the CI to run on separate emulator for custom app test cases.
* Upgraded the `uiautomator` version to `2.3.0`. * Upgraded the `appcompat` version to `1.7.0`. * Upgraded the coroutines version to `1.8.1`. * Upgraded the `androidx.test:runner` version to `1.6.1`. * Upgraded the `androidx.test:core` version to `1.6.1`. * Upgraded the `androidx.test:orchestrator` version to `1.5.0`. * Upgraded the `io.mockk:mockk` version to `1.13.12`. * Upgraded the `org.junit.jupiter:junit-jupiter` version to `5.11.0`. * Upgraded the `org.assertj:assertj-core` version to `3.26.3`. * Upgraded the `androidx.annotation:annotation` version to `1.6.0`. * Improved the SearchStateTest. * Fixed some deprecated code which is deprecated in new dependencies.
This commit is contained in:
parent
3f7d0f7214
commit
fce89ef2b3
4
.github/workflows/ci.yml
vendored
4
.github/workflows/ci.yml
vendored
@ -79,7 +79,7 @@ jobs:
|
||||
target: default
|
||||
arch: x86_64
|
||||
profile: pixel_2
|
||||
emulator-options: -no-window -gpu swiftshader_indirect -noaudio -no-boot-anim -camera-back none
|
||||
emulator-options: -no-snapshot-save -no-window -gpu swiftshader_indirect -noaudio -no-boot-anim -camera-back none
|
||||
ram-size: 4096M
|
||||
cores: 4
|
||||
force-avd-creation: false
|
||||
@ -101,7 +101,7 @@ jobs:
|
||||
emulator-options: -no-snapshot-save -no-window -gpu swiftshader_indirect -noaudio -no-boot-anim -camera-back none
|
||||
ram-size: 4096M
|
||||
cores: 4
|
||||
force-avd-creation: false
|
||||
force-avd-creation: true
|
||||
sdcard-path-or-size: 2048M
|
||||
disable-animations: true
|
||||
heap-size: 512M
|
||||
|
@ -32,7 +32,6 @@ import android.os.Parcelable
|
||||
import android.util.AttributeSet
|
||||
import android.view.View
|
||||
import android.view.animation.Interpolator
|
||||
import androidx.core.view.ViewCompat
|
||||
import androidx.interpolator.view.animation.FastOutSlowInInterpolator
|
||||
import androidx.viewpager.widget.ViewPager
|
||||
import androidx.viewpager.widget.ViewPager.OnPageChangeListener
|
||||
@ -510,7 +509,7 @@ class CustomPageIndicator @JvmOverloads constructor(
|
||||
moveSelected.addUpdateListener { valueAnimator -> // todo avoid autoboxing
|
||||
selectedDotX = valueAnimator.animatedValue as Float
|
||||
retreatAnimation!!.startIfNecessary(selectedDotX)
|
||||
ViewCompat.postInvalidateOnAnimation(this@CustomPageIndicator)
|
||||
this@CustomPageIndicator.postInvalidateOnAnimation()
|
||||
}
|
||||
moveSelected.addListener(object : AnimatorListenerAdapter() {
|
||||
override fun onAnimationStart(animation: Animator) {
|
||||
@ -536,20 +535,20 @@ class CustomPageIndicator @JvmOverloads constructor(
|
||||
private fun setJoiningFraction(leftDot: Int, fraction: Float) {
|
||||
if (leftDot < joiningFractions.size) {
|
||||
joiningFractions[leftDot] = fraction
|
||||
ViewCompat.postInvalidateOnAnimation(this)
|
||||
this.postInvalidateOnAnimation()
|
||||
}
|
||||
}
|
||||
|
||||
private fun clearJoiningFractions() {
|
||||
Arrays.fill(joiningFractions, 0f)
|
||||
ViewCompat.postInvalidateOnAnimation(this)
|
||||
this.postInvalidateOnAnimation()
|
||||
}
|
||||
|
||||
private fun setDotRevealFraction(dot: Int, fraction: Float) {
|
||||
if (dot < dotRevealFractions.size) {
|
||||
dotRevealFractions[dot] = fraction
|
||||
}
|
||||
ViewCompat.postInvalidateOnAnimation(this)
|
||||
this.postInvalidateOnAnimation()
|
||||
}
|
||||
|
||||
private fun cancelJoiningAnimations() {
|
||||
@ -608,7 +607,7 @@ class CustomPageIndicator @JvmOverloads constructor(
|
||||
}
|
||||
addUpdateListener { valueAnimator -> // todo avoid autoboxing
|
||||
retreatingJoinX1 = valueAnimator.animatedValue as Float
|
||||
ViewCompat.postInvalidateOnAnimation(this@CustomPageIndicator)
|
||||
this@CustomPageIndicator.postInvalidateOnAnimation()
|
||||
// start any reveal animations if we've passed them
|
||||
for (pendingReveal in revealAnimations) {
|
||||
pendingReveal!!.startIfNecessary(retreatingJoinX1)
|
||||
@ -626,7 +625,7 @@ class CustomPageIndicator @JvmOverloads constructor(
|
||||
}
|
||||
addUpdateListener { valueAnimator -> // todo avoid autoboxing
|
||||
retreatingJoinX2 = valueAnimator.animatedValue as Float
|
||||
ViewCompat.postInvalidateOnAnimation(this@CustomPageIndicator)
|
||||
this@CustomPageIndicator.postInvalidateOnAnimation()
|
||||
// start any reveal animations if we've passed them
|
||||
for (pendingReveal in revealAnimations) {
|
||||
pendingReveal!!.startIfNecessary(retreatingJoinX2)
|
||||
@ -643,13 +642,13 @@ class CustomPageIndicator @JvmOverloads constructor(
|
||||
}
|
||||
retreatingJoinX1 = initialX1
|
||||
retreatingJoinX2 = initialX2
|
||||
ViewCompat.postInvalidateOnAnimation(this@CustomPageIndicator)
|
||||
this@CustomPageIndicator.postInvalidateOnAnimation()
|
||||
}
|
||||
|
||||
override fun onAnimationEnd(animation: Animator) {
|
||||
retreatingJoinX1 = INVALID_FRACTION
|
||||
retreatingJoinX2 = INVALID_FRACTION
|
||||
ViewCompat.postInvalidateOnAnimation(this@CustomPageIndicator)
|
||||
this@CustomPageIndicator.postInvalidateOnAnimation()
|
||||
}
|
||||
})
|
||||
}
|
||||
@ -676,7 +675,7 @@ class CustomPageIndicator @JvmOverloads constructor(
|
||||
addListener(object : AnimatorListenerAdapter() {
|
||||
override fun onAnimationEnd(animation: Animator) {
|
||||
setDotRevealFraction(this@PendingRevealAnimator.dot, 0f)
|
||||
ViewCompat.postInvalidateOnAnimation(this@CustomPageIndicator)
|
||||
this@CustomPageIndicator.postInvalidateOnAnimation()
|
||||
}
|
||||
})
|
||||
}
|
||||
|
@ -14,7 +14,7 @@ object Versions {
|
||||
|
||||
const val document_file_version: String = "1.0.1"
|
||||
|
||||
const val org_jetbrains_kotlinx_kotlinx_coroutines: String = "1.7.3"
|
||||
const val org_jetbrains_kotlinx_kotlinx_coroutines: String = "1.8.1"
|
||||
|
||||
const val androidx_test_espresso: String = "3.5.1"
|
||||
|
||||
@ -30,17 +30,15 @@ object Versions {
|
||||
|
||||
const val com_google_dagger: String = "2.48.1"
|
||||
|
||||
const val com_jakewharton: String = "10.2.3"
|
||||
const val androidx_test: String = "1.6.1"
|
||||
|
||||
const val androidx_test: String = "1.5.2"
|
||||
const val androidx_test_core: String = "1.6.1"
|
||||
|
||||
const val androidx_test_core: String = "1.5.0"
|
||||
|
||||
const val androidx_test_orchestrator: String = "1.4.1"
|
||||
const val androidx_test_orchestrator: String = "1.5.0"
|
||||
|
||||
const val io_objectbox: String = "3.5.0"
|
||||
|
||||
const val io_mockk: String = "1.13.7"
|
||||
const val io_mockk: String = "1.13.12"
|
||||
|
||||
const val android_arch_lifecycle_extensions: String = "1.1.1"
|
||||
|
||||
@ -62,9 +60,9 @@ object Versions {
|
||||
|
||||
const val preference_ktx: String = "1.2.0"
|
||||
|
||||
const val junit_jupiter: String = "5.10.2"
|
||||
const val junit_jupiter: String = "5.11.0"
|
||||
|
||||
const val assertj_core: String = "3.25.3"
|
||||
const val assertj_core: String = "3.26.3"
|
||||
|
||||
const val core_testing: String = "2.2.0"
|
||||
|
||||
@ -74,13 +72,13 @@ object Versions {
|
||||
|
||||
const val threetenabp: String = "1.3.0"
|
||||
|
||||
const val uiautomator: String = "2.3.0-alpha03"
|
||||
const val uiautomator: String = "2.3.0"
|
||||
|
||||
const val annotation: String = "1.2.0"
|
||||
const val annotation: String = "1.6.0"
|
||||
|
||||
const val simple_xml: String = "2.7.1"
|
||||
|
||||
const val appcompat: String = "1.6.1"
|
||||
const val appcompat: String = "1.7.0"
|
||||
|
||||
const val rxandroid: String = "2.1.1"
|
||||
|
||||
|
@ -291,7 +291,7 @@ abstract class CoreMainActivity : BaseActivity(), WebViewProvider {
|
||||
return
|
||||
}
|
||||
if (activeFragments().filterIsInstance<FragmentActivityExtensions>().isEmpty()) {
|
||||
return super.getOnBackPressedDispatcher().onBackPressed()
|
||||
return super.onBackPressedDispatcher.onBackPressed()
|
||||
}
|
||||
activeFragments().filterIsInstance<FragmentActivityExtensions>().forEach {
|
||||
if (it.onBackPressed(this) == FragmentActivityExtensions.Super.ShouldCall) {
|
||||
@ -302,7 +302,7 @@ abstract class CoreMainActivity : BaseActivity(), WebViewProvider {
|
||||
drawerToggle = null
|
||||
finish()
|
||||
} else {
|
||||
super.getOnBackPressedDispatcher().onBackPressed()
|
||||
super.onBackPressedDispatcher.onBackPressed()
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -124,10 +124,10 @@ internal class SearchStateTest {
|
||||
list = searchState.getVisibleResults(0)
|
||||
}
|
||||
|
||||
job.cancelAndJoin()
|
||||
val job1 = launch(Dispatchers.IO) {
|
||||
list1 = searchState.getVisibleResults(0)
|
||||
}
|
||||
job.cancelAndJoin()
|
||||
|
||||
// test the coroutine job is cancelled properly
|
||||
assertThat(job.isCancelled).isTrue
|
||||
|
Loading…
x
Reference in New Issue
Block a user