summaryrefslogtreecommitdiff
path: root/ride/difficulty_test.go
diff options
context:
space:
mode:
authorMartin Kagamino Lehoux <martin@lehoux.net>2026-08-01 23:30:36 +0200
committerMartin Kagamino Lehoux <martin@lehoux.net>2026-08-01 23:30:36 +0200
commitab0b68a2b6bebfccd8ab5c3c7d0420f4ae0cb885 (patch)
tree74d5a299a34a8d466c19567edd69dcf15b651d71 /ride/difficulty_test.go
parentb7ef44b22e23126a494614f93e07b248fd6a8f12 (diff)
feat: Add Cotacol difficulty score to climbs
Diffstat (limited to 'ride/difficulty_test.go')
-rw-r--r--ride/difficulty_test.go17
1 files changed, 17 insertions, 0 deletions
diff --git a/ride/difficulty_test.go b/ride/difficulty_test.go
index 7e652cc..5ba14c7 100644
--- a/ride/difficulty_test.go
+++ b/ride/difficulty_test.go
@@ -40,3 +40,20 @@ func TestDifficultyScoreExampleRide(t *testing.T) {
assert.NoError(t, err)
assert.InDelta(t, 3049.0, r.DifficultyScore(), 1)
}
+
+func TestDifficultyScoreClimbNotAtStart(t *testing.T) {
+ r := RideBuilder{precision: 100}.WithSection("1km at 0%").WithSection("2km at 7%").Build()
+ climbs := r.AllClimbs()
+ assert.Len(t, climbs, 1)
+ assert.InDelta(t, 98.0, climbs[0].DifficultyScore(), 1e-9)
+}
+
+func TestDifficultyScoreHautacamClimbfinderReference(t *testing.T) {
+ r, err := ride.ParseFile(parser, "../examples/2022-07-21.Pogacar.gpx")
+ assert.NoError(t, err)
+ climbs := r.AllClimbs()
+ assert.Len(t, climbs, 6)
+ hautacam := climbs[5]
+ assert.InDelta(t, 128.6, hautacam.Start().DistanceM/1000, 0.1)
+ assert.InDelta(t, 930.0, hautacam.DifficultyScore(), 10)
+}