• Jesse Hallam's avatar
    Ensure unittest isolation (#9819) · a7891317
    Jesse Hallam authored
    * api4: fix TestGetUsersNotInTeam assertions
    This test was relying on data from a previous test run. With the data cleared before each test, the assertions much match reality.
    * *testlib: always InitSystemAdmin
    Some tests implicitly relied on the basic user having system
    administrator privileges because it was the first user created as such.
    Eliminate `InitSystemAdmin` and explicitly create the system admin user
    instead to avoid this ambiguity going forward.
    * *testlib: drop all tables before each test
    * api4: split up TestChannelDelete to avoid duplicate InitBasic
    * api4: teardown in TestResetPassword, for when this test comes back
    * invalidate cache on DropAllTables
    This is necessary since the test store persists across tests.
    * disable parallel tests
    While tests within a package must be explicitly parallelized using `t.Parallel()`, tests across packages are run in parallel by default.  This causes problems given that the tests all currently share the same database instance.
    Unfortunately, this also means that running the tests is much slower, but we can return to this later.