feat: smart recreate and dedupe
This commit is contained in:
@ -60,6 +60,44 @@ def test_workout_steps_equal_ignores_ids_but_compares_steps() -> None:
|
||||
assert not workout_steps_equal(left, right)
|
||||
|
||||
|
||||
def test_workout_steps_equal_ignores_garmin_upload_defaults() -> None:
|
||||
left = build_dummy_cycling_workout("Left")
|
||||
right = build_dummy_cycling_workout("Right")
|
||||
repeat = right["workoutSegments"][0]["workoutSteps"][1]
|
||||
repeat["stepOrder"] = 2
|
||||
repeat["childStepId"] = 1
|
||||
repeat["smartRepeat"] = False
|
||||
for idx, step in enumerate(right["workoutSegments"][0]["workoutSteps"], start=1):
|
||||
step["stepId"] = 1000 + idx
|
||||
step["stepOrder"] = idx
|
||||
step["equipmentType"] = {
|
||||
"displayOrder": 0,
|
||||
"equipmentTypeId": 0,
|
||||
"equipmentTypeKey": None,
|
||||
}
|
||||
step["strokeType"] = {
|
||||
"displayOrder": 0,
|
||||
"strokeTypeId": 0,
|
||||
"strokeTypeKey": None,
|
||||
}
|
||||
for idx, step in enumerate(repeat["workoutSteps"], start=3):
|
||||
step["childStepId"] = 1
|
||||
step["stepId"] = 1000 + idx
|
||||
step["stepOrder"] = idx
|
||||
step["equipmentType"] = {
|
||||
"displayOrder": 0,
|
||||
"equipmentTypeId": 0,
|
||||
"equipmentTypeKey": None,
|
||||
}
|
||||
step["strokeType"] = {
|
||||
"displayOrder": 0,
|
||||
"strokeTypeId": 0,
|
||||
"strokeTypeKey": None,
|
||||
}
|
||||
|
||||
assert workout_steps_equal(left, right)
|
||||
|
||||
|
||||
def test_existing_clone_names_filters_by_prefix_and_date() -> None:
|
||||
names = existing_clone_names(
|
||||
[
|
||||
|
||||
Reference in New Issue
Block a user