Increase test coverage Arrow Core
- Dominant language
- Kotlin
- Stars
- 6.6k
- Forks
- 472
- Avg merge
- 3d 49m
- Merged PRs (30d)
- 4
Description
This ticket tracks classes that are lacking in test coverage. All of this code has been stable for a long time, but it's a good way to get familiar with the Arrow codebase.
If you're looking to contribute to Arrow, and want a small piece of work writing some tests is a good way to get started. If you're not sure if a function, or code branch, is missing coverage in a certain file you can run `./gradlew koverHtmlReport` and open the resulting report.
Or feel free to pick any of the items listed below and add missing tests for the `.kt` file.
# Arrow Core
- [x] [currying.kt](https://github.com/arrow-kt/arrow/blob/main/arrow-libs/core/arrow-core/src/commonMain/kotlin/arrow/core/currying.kt) missing tests for almost all functions in progress by @lgtout
- [x] [Either.kt]](https://github.com/arrow-kt/arrow/blob/main/arrow-libs/core/arrow-core/src/commonMain/kotlin/arrow/core/Either.kt) only has 50% coverage in progress by @poseidon2060
- [x] [Ior.kt]](https://github.com/arrow-kt/arrow/blob/main/arrow-libs/core/arrow-core/src/commonMain/kotlin/arrow/core/Ior.kt) only has 70% coverage in progress by @gutiory
- [ ] [Iterable.kt]](https://github.com/arrow-kt/arrow/blob/main/arrow-libs/core/arrow-core/src/commonMain/kotlin/arrow/core/Iterable.kt) only has 50% coverage.
- [ ] [MapKt.kt]](https://github.com/arrow-kt/arrow/blob/main/arrow-libs/core/arrow-core/src/commonMain/kotlin/arrow/core/Iterable.kt) only has 16% coverage.
- [x] [NonEmptyList.kt]](https://github.com/arrow-kt/arrow/blob/main/arrow-libs/core/arrow-core/src/commonMain/kotlin/arrow/core/NonEmptyList.kt) only has 50% coverage. @l2hyunwoo
- [x] [Option.kt]](https://github.com/arrow-kt/arrow/blob/main/arrow-libs/core/arrow-core/src/commonMain/kotlin/arrow/core/NonEmptyList.kt) only has 75% coverage in progress by @swdevsm
- [ ] [partials.kt]](https://github.com/arrow-kt/arrow/blob/main/arrow-libs/core/arrow-core/src/commonMain/kotlin/arrow/core/partials.kt) only has 2,4% coverage.
- [ ] Missing tests for utilities TupleX.kt
Contributor guide
Research direction
Run `./gradlew koverHtmlReport` and inspect the coverage report for the unchecked Arrow Core files, including Iterable.kt, MapKt.kt, partials.kt, and TupleX.kt utilities. Choose a missing area, add tests for the corresponding `.kt` file, and verify that the coverage report improves without regressing existing tests.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- kotlin
- Domain
- testing
- Issue type
- Feature
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 48/100