beb40484dd
- This commit moves all session invalidation tests from the IDE which are non-cyclic to the Analysis API. Cyclic session invalidation tests cannot be moved because the Kotlin test infrastructure doesn't support cyclic module dependencies. - In fact, these new tests cover more cases, because the IDE tests only covered global module state and module out-of-block modification events. Crucially, global source modification events are now supported, which require libraries to be left alone. - Module out-of-block modification for libraries is technically undefined, but the test still checks this behavior. The current session invalidation implementation behaves the same for any kind of module-level modification event, so it is possible to publish a module OOBM event for libraries. If this changes in the future, we can disable those tests. But for now, it's good that these tests run, because they will alert us to (accidental) changes to this behavior. ^KT-56288 fixed ^KT-65265 fixed