1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
|
package ride_test
import (
"fmt"
"testing"
"github.com/bradleyjkemp/cupaloy"
"github.com/martinlehoux/biking_home/ride"
"github.com/stretchr/testify/assert"
)
func TestRideClimbLaCride(t *testing.T) {
ride19Jan, err := ride.ParseFile(parser, "../examples/activity_18043356988.gpx")
assert.NoError(t, err)
ride30Mar, err := ride.ParseFile(parser, "../examples/activity_18679866717.gpx")
assert.NoError(t, err)
ride20Apr, err := ride.ParseFile(parser, "../examples/activity_18880605641.gpx")
assert.NoError(t, err)
index := ride.NewFlatRideClimbsIndex(30)
index.Insert(ride19Jan)
index.Insert(ride30Mar)
logs := []string{}
for _, climb := range ride20Apr.AllClimbs() {
logs = append(logs, fmt.Sprintf("Climb %s (%s, %.1fkm/h)", climb, climb.Duration(), climb.Speed()*3.6))
if len(index.Similar(ride20Apr, climb)) > 0 {
for _, similar := range index.Similar(ride20Apr, climb) {
logs = append(logs, fmt.Sprintf(" %s (%s, %.1fkm/h)", similar, similar.Duration(), similar.Speed()*3.6))
}
}
}
cupaloy.SnapshotT(t, logs)
}
|