public WriteResult<T, K> updateMulti(Bson query, Bson update) {
        return update(query, update, false, true);
    }
@Test
    void updateMulti() {
        final var collection = jacksonCollection("simple", Simple.class);

        final var foo = new Simple("000000000000000000000001", "foo");
        final var bar = new Simple("000000000000000000000002", "bar");

        // no upserts allowed, therefore this should be a no-op
        var upsertAttemptResult = collection.updateMulti(
                DBQuery.in("_id", objectId(foo.id()), objectId(bar.id())), new DBUpdate.Builder().set("name", "baz"));
        assertThat(upsertAttemptResult).isNotNull().satisfies(wr -> {
            assertThatThrownBy(wr::getSavedId).isInstanceOf(MongoException.class);
            assertThatThrownBy(wr::getSavedObject).isInstanceOf(MongoException.class);
            assertThat(wr.isUpdateOfExisting()).isFalse();
            assertThat(wr.getN()).isZero();
            assertThat(wr.getUpsertedId()).isNull();
        });
        assertThat(collection.count()).isZero();

        collection.insert(List.of(foo, bar));
        assertThat((Iterable<Simple>) collection.find()).containsExactlyInAnyOrder(foo, bar);

        var updateResult = collection.updateMulti(
                DBQuery.in("_id", objectId(foo.id()), objectId(bar.id())), new DBUpdate.Builder().set("name", "baz"));
        assertThat(updateResult).isNotNull().satisfies(wr -> {
            assertThatThrownBy(wr::getSavedId).isInstanceOf(MongoException.class);
            assertThatThrownBy(wr::getSavedObject).isInstanceOf(MongoException.class);
            assertThat(wr.isUpdateOfExisting()).isTrue();
            assertThat(wr.getN()).isEqualTo(2);
            assertThat(wr.getUpsertedId()).isNull();
        });
        assertThat((Iterable<Simple>) collection.find()).containsExactlyInAnyOrder(
                new Simple(foo.id(), "baz"), new Simple(bar.id(), "baz"));
    }