nowinandroid icon indicating copy to clipboard operation
nowinandroid copied to clipboard

TestFixtures refactoring

Open SimonMarquis opened this issue 1 year ago • 5 comments

Support for Kotlin TestFixtures on Android modules was added in AGP 8.5.0!

A lot more cleanup could be done, especially on test classes that redefine over and over again topics, newsResources, etc.

This is a new take on this PR:

  • https://github.com/android/nowinandroid/pull/452

To close this issue from 2022:

  • https://github.com/android/nowinandroid/issues/451

The main changes are split by commits:

  • AGP 8.5.0 update with enableTestFixturesKotlinSupport flag
  • :core:data-test, :sync:test and :core:datastore-test have been merged as testFixtures sourceSet of their respective module.
  • :core:testing content has been migrated when possible to already existing modules.
  • :sync:work has been move to it's parent :sync module that was previously empty.

  • [ ] Regenerate graphs
  • [ ] Wait for android.experimental.enableTestFixturesKotlinSupport to promote from experimental?
  • [ ] Wait for KSP on testFixtures?

SimonMarquis avatar Jun 23 '24 15:06 SimonMarquis

This PR has a lot of conflicts. Do you want to continue and resolve these, @SimonMarquis ?

keyboardsurfer avatar Dec 11 '24 10:12 keyboardsurfer

@keyboardsurfer yes, I'd love to see this integrated in the repository at some point (the initial PoC was on Nov 19, 2022 😅). But before I re-start working on this and fix conflicts, can you tell me if this is definitely something that will be merged in the repository or not? Thanks

SimonMarquis avatar Dec 11 '24 10:12 SimonMarquis

Good to hear that you're interested in picking this back up again. @JoseAlcerreca can you chime in on the likelihood of this PR being integrated into main?

keyboardsurfer avatar Dec 11 '24 10:12 keyboardsurfer

Just to add my 2 pence, I am strongly in favour of anything that tidies up our test architecture and TestFixtures seems to do that.

dturner avatar Dec 19 '24 13:12 dturner

Just to add my 2 pence, I am strongly in favour of anything that tidies up our test architecture and TestFixtures seems to do that.

Does that mean "yes", or "maybe"? 😅

SimonMarquis avatar Sep 14 '25 19:09 SimonMarquis