Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Investigate 25 slowest test in Arrow #2908

Closed
24 tasks
nomisRev opened this issue Jan 27, 2023 · 2 comments
Closed
24 tasks

Investigate 25 slowest test in Arrow #2908

nomisRev opened this issue Jan 27, 2023 · 2 comments

Comments

@nomisRev
Copy link
Member

This is a list of the 25 slowest tests in Arrow reported by Gradle Scan. Feel free to pick any of these tests and comment below which one you're working on. A lot of these tests can probably be refactored to run a lot faster without impacting coverage.

  • flatMapMapKTest:arrow-core:iosX64Test | PASSED | 37.424s
  • repeatAsFlow is stack-safeScheduleTest:arrow-fx-coroutines:iosX64Test | PASSED | 17.292s
  • ior bindIorSpec.Concurrent - arrow:arrow-core:iosX64Test | PASSED | 13.377s
  • Iso Law: compose modifyMapTest:arrow-optics:iosX64Test | PASSED | 10.871s
  • (1) Lens law: compose modifyNonEmptyListTest:arrow-optics:iosX64Test | PASSED | 10.426s
  • (1) Lens law: set getNonEmptyListTest:arrow-optics:iosX64Test | PASSED | 10.008s
  • Iso Law: compose modifyMapTest:arrow-optics:watchosX64Test | PASSED | 9.866s
  • (1) Lens law: is set idempotentNonEmptyListTest:arrow-optics:iosX64Test | PASSED | 8.184s
  • can align sequences - 3SequenceKTest:arrow-core:iosX64Test | PASSED | 7.150s
  • can align sequences - 1SequenceKTest:arrow-core:iosX64Test | PASSED | 7.075s
  • DSL is generated for complex model with Every()arrow.optics.plugin.DSLTests:arrow-optics-ksp-plugin:test | PASSED | 39.170s
  • should be stack safe for successful async tasksarrow.fx.coroutines.CircuitBreakerTest:arrow-fx-coroutines:jvmTest | PASSED | 11.974s
  • should be stack safe for successful async tasksarrow.fx.resilience.CircuitBreakerTest:arrow-fx-resilience:jvmTest | PASSED | 11.136s
  • should return IOError when no responsearrow.retrofit.adapter.either.networkhandling.NetworkEitherCallAdapterTestSuite:arrow-core-retrofit:test | PASSED | 10.889s
  • DSL is generated for complex model with At()arrow.optics.plugin.DSLTests:arrow-optics-ksp-plugin:test | PASSED | 10.293s
  • (2) should return IOError when no responsearrow.retrofit.adapter.either.networkhandling.NetworkEitherCallAdapterTestSuite:arrow-core-retrofit:test | PASSED | 10.041s
  • (1) should return IOError when no responsearrow.retrofit.adapter.either.networkhandling.NetworkEitherCallAdapterTestSuite:arrow-core-retrofit:test | PASSED | 9.448s
  • parMapN 8 returns to original context on failurearrow.fx.coroutines.ParMap8JvmTest:arrow-fx-coroutines:jvmTest | PASSED | 4.927s
  • stack safety stress testarrow.core.EvalJvmTest:arrow-core:jvmTest | PASSED | 4.871s
  • DSL works with extensions in the file, issue ["BUG"] Optics and typealias usage in the same file fails with "Duplicate JVM class name" #2803()arrow.optics.plugin.DSLTests:arrow-optics-ksp-plugin:test | PASSED | 4.760s
  • lenses for field, setarrow.optics.ReflectionTest:arrow-optics-reflect:test | PASSED | 4.294s
  • race3 returns to original contextarrow.fx.coroutines.RaceNJvmTest:arrow-fx-coroutines:jvmTest | PASSED | 3.771s |  
  • Isos will be generated for data class with secondary constructors()arrow.optics.plugin.IsoTests:arrow-optics-ksp-plugin:test | PASSED | 3.013s
  • Isos will be generated for data class()arrow.optics.plugin.IsoTests:arrow-optics-ksp-plugin:test
@abendt
Copy link
Contributor

abendt commented Mar 29, 2023

MapKTest.flatMap() has been fixed as part of #2999 and can be removed from the list.

new time is: ~0.5s 🚀

https://scans.gradle.com/s/ogbwpswsaig4q/tests/:arrow-core:iosX64Test/MapKTest/flatMap?top-execution=1

@serras
Copy link
Member

serras commented Feb 8, 2024

Many of those are now obsolete

@serras serras closed this as completed Feb 8, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants