This change tries to robustify a failing test when running in a multi-router setup.
The test creates a collection with the default collaion, then drops it and recreates it with a different collation. It then queries the collection and assumes that the new collation is in place.
This cannot be guaranteed if the collection is recreated on a different mongos instance than the one the query runs on. The query may still see an outdated version of the collection properties, if its mongos instance hasn't updated its local catalog information yet.
To work around this, the test wraps all assertions following the collection recreation in assert.soonNoExcept() calls. These are expected to succeed eventually, after the catalog information update has spread to all mongos instances.