def METHOD_NAME(
    dataset, mock_run_job, rollover_rule
):
    with TemporaryDirectory() as temp_dir:
        rewards_root = create_rewards_latest(temp_dir)
        reward_program = RewardProgram("0x0", "0x0", "http://", temp_dir, rewards_root)
        reward_program.run_rule(rollover_rule)
        output_location = AnyPath(temp_dir).joinpath(
            "rewardProgramID=0x0", "paymentCycle=1200", "parameters.json"
        )
        previous_output_location = AnyPath(temp_dir).joinpath(
            "rewardProgramID=0x0", "paymentCycle=1100", "results.parquet"
        )
        assert mock_run_job.call_count == 1
        assert output_location.exists()
        with output_location.open() as f:
            written_parameters = json.load(f)
            assert (
                written_parameters["run"]["previous_output"]
                == previous_output_location.as_uri()
            )