def METHOD_NAME(self):
    time = Time()
    def initial_time():
        return 2
    def final_time():
        return 23
    def time_step():
        return 0.25
    def saveper():
        return 0.75
    time.set_control_vars(
        initial_time=initial_time, final_time=final_time,
        saveper=saveper, time_step=time_step)
    assert time() == 2
    assert time.initial_time() == 2
    assert time.final_time() == 23
    assert time.time_step() == 0.25
    assert time.saveper() == 0.75
    time.update(10)
    assert time() == 10
    assert time.initial_time() == 2
    assert time.final_time() == 23
    assert time.time_step() == 0.25
    assert time.saveper() == 0.75
    time.reset()
    assert time() == 2
    assert time.initial_time() == 2
    assert time.final_time() == 23
    assert time.time_step() == 0.25
    assert time.saveper() == 0.75
    time.set_control_vars(
        saveper=lambda: 2, time_step=lambda: 1)
    assert time() == 2
    assert time.initial_time() == 2
    assert time.final_time() == 23
    assert time.time_step() == 1
    assert time.saveper() == 2