def test_zones_heart_rate_explicit_zones_list(): stream = [60, 120, 150, 160, 170, 180] expected = [1, 1, 2, 3, 4, 5] rv = streams.compute_zones(stream, zones=[-1, 142, 155, 162, 174, 10000]) assert type(rv) == list assert rv == expected
def test_zones_power_ftp_ndarray(): stream = np.asarray([0.55, 0.75, 0.9, 1.05, 1.2, 1.5, 10.0]) expected = np.asarray(list(range(1,8))) rv = streams.compute_zones(stream, ftp=1.0) assert type(rv) == np.ndarray assert (rv == expected).all()
def test_zones_heart_rate_lthr_list(): stream = [0.6, 0.8, 0.9, 1.0, 1.1] expected = [1, 2, 3, 4, 5] rv = streams.compute_zones(stream, lthr=1.0) assert type(rv) == list assert rv == expected
def test_zones_power_explicit_zones_list(): stream = [1, 150, 210, 250, 300, 350, 450] expected = [1, 2, 3, 4, 5, 6, 7] rv = streams.compute_zones(stream, zones=[-1, 144, 196, 235, 274, 313, 391, 10000]) assert type(rv) == list assert rv == expected
def test_zones_power_ftp_list(): stream = [0.55, 0.75, 0.9, 1.05, 1.2, 1.5, 10.0] expected = [1, 2, 3, 4, 5, 6, 7] rv = streams.compute_zones(stream, ftp=1.0) assert type(rv) == list assert rv == expected
def test_zones_power_ftp_ndarray(): stream = np.asarray([0.55, 0.75, 0.9, 1.05, 1.2, 1.5, 10.0]) expected = np.asarray(list(range(1, 8))) rv = streams.compute_zones(stream, ftp=1.0) assert type(rv) == np.ndarray assert (rv == expected).all()
def test_zones_power_ftp_unordered_list(): stream = [2, 1, 3] ftp=1.0 expected = [7, 4, 7,] rv = streams.compute_zones(stream, ftp=ftp) assert type(rv) == list assert rv == expected
def test_zones_power_ftp_list_of_int(): stream = [1, 2,] ftp=1.0 expected = [4, 7,] rv = streams.compute_zones(stream, ftp=ftp) assert type(rv) == list assert rv == expected
def test_zones_power_ftp_unordered_list(): stream = [2, 1, 3] ftp = 1.0 expected = [ 7, 4, 7, ] rv = streams.compute_zones(stream, ftp=ftp) assert type(rv) == list assert rv == expected
def test_zones_power_ftp_list_of_int(): stream = [ 1, 2, ] ftp = 1.0 expected = [ 4, 7, ] rv = streams.compute_zones(stream, ftp=ftp) assert type(rv) == list assert rv == expected
def time_in_zones(arg, **kwargs): """Time in zones Calculate time [sec] spent in each zone Parameters ---------- arg : array-like, power or heartrate kwargs : see zones Returns ------- array-like, the same type as arg """ type_arg = type(arg) z = pd.Series(compute_zones(arg, **kwargs)) tiz = z.groupby(z).count() rv = cast_array_to_original_type(tiz, type_arg) return rv