def METHOD_NAME(db, create_user, create_reservation, create_blocking, smtp, in_acl, rejected):
    other_user = create_user(123)
    blocking = create_blocking(start_date=date.today(),
                               end_date=date.today() + timedelta(days=1))
    if in_acl:
        blocking.allowed.add(other_user)
        db.session.flush()
    br = blocking.blocked_rooms[0]
    resv = create_reservation(start_dt=datetime.combine(blocking.start_date, time(8)),
                              end_dt=datetime.combine(blocking.start_date, time(10)),
                              created_by_user=other_user,
                              booked_for_user=other_user)
    assert br.state == BlockedRoom.State.pending
    br.approve(notify_blocker=False)
    assert br.state == BlockedRoom.State.accepted
    assert resv.is_rejected == rejected
    assert len(smtp.outbox) == (2 if rejected else 0)