def test_valid_input_interpolate(): ts_1 = ArrayTimeSeries([1, 2, 3], [0, 5, 10]) ts_2 = ArrayTimeSeries([100, -100], [2.5, 7.5]) ts_interpolate_test_1 = ts_1.interpolate([1]) assert ts_interpolate_test_1._value == [1.2] assert ts_interpolate_test_1._time == [1] ts_interpolate_test_2 = ts_1.interpolate([-100, 100]) assert ts_interpolate_test_2 == ArrayTimeSeries([1, 3], [-100, 100]) ts_interpolate_test_3 = ts_1.interpolate([2.5, 7.5]) assert ts_interpolate_test_3 == ArrayTimeSeries([1.5, 2.5], [2.5, 7.5]) assert ts_1.interpolate(ts_2.itertimes()) == ArrayTimeSeries([1.5, 2.5], [2.5, 7.5])
def test_invalid_input_interpolate(): ts_1 = ArrayTimeSeries([1, 2, 3], [0, 5, 10]) with raises(TypeError): ts_1.interpolate(1)
def test_interpolate_list(): ts = ArrayTimeSeries([0, 5, 10], [1, 2, 3]) assert ts.interpolate([7.5, 15]) == ArrayTimeSeries([7.5, 15], [2.5, 3])
def test_interpolate_big(): ts = ArrayTimeSeries([0, 5, 10], [1, 2, 3]) assert ts.interpolate([15]) == ArrayTimeSeries([15], [3])
def test_interpolate_small(): ts = ArrayTimeSeries([0, 5, 10], [1, 2, 3]) assert ts.interpolate([-5]) == ArrayTimeSeries([-5], [1])
def test_lazy(): ts = ArrayTimeSeries([0, 5, 10], [1, 2, 3]) # Simple cases assert ts.interpolate([-100, 100]).lazy.eval() == ArrayTimeSeries([-100, 100], [1, 3])
def test_interpolate2(): ts = ArrayTimeSeries([0, 5, 10], [1, 2, 3]) # Simple cases assert ts.interpolate([-100, 100]) == ArrayTimeSeries([-100, 100], [1, 3])
def test_interpolate1(): ts = ArrayTimeSeries([0, 5, 10], [1, 2, 3]) # Simple cases assert ts.interpolate([1]) == ArrayTimeSeries([1], [1.2])