def METHOD_NAME(self):
    """Test ODE function generator with time param."""
    t_param = Parameter("t")
    observable = SparsePauliOp(
        ["II", "ZZ", "IZ", "ZI", "YY", "XX"],
        np.array([t_param, 0.5716, 0.3435, -0.4347, 0.091, 0.091]),
    )
    d = 2
    ansatz = EfficientSU2(observable.num_qubits, reps=d)
    # Define a set of initial parameters
    parameters = list(ansatz.parameters)
    param_dict = {param: np.pi / 4 for param in parameters}
    var_principle = ImaginaryMcLachlanPrinciple()
    time = 2
    linear_solver = None
    varqte_linear_solver = VarQTELinearSolver(
        var_principle,
        observable,
        ansatz,
        parameters,
        t_param,
        linear_solver,
    )
    ode_function_generator = OdeFunction(
        varqte_linear_solver, t_param=t_param, param_dict=param_dict
    )
    qte_ode_function = ode_function_generator.var_qte_ode_function(time, param_dict.values())
    expected_qte_ode_function = [
        0.442145,
        -0.022081,
        0.106223,
        -0.117468,
        0.251233,
        0.321256,
        -0.062728,
        -0.036209,
        -0.509219,
        -0.183459,
        -0.050739,
        -0.093163,
    ]
    np.testing.assert_array_almost_equal(expected_qte_ode_function, qte_ode_function, decimal=5)