initial version
This commit is contained in:
79
tests/gpx/test_uneven_effort.gpx
Normal file
79
tests/gpx/test_uneven_effort.gpx
Normal file
@@ -0,0 +1,79 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<gpx version="1.1" creator="Test">
|
||||
<trk>
|
||||
<name>Test Route with Uneven Effort</name>
|
||||
<trkseg>
|
||||
<!-- Day 1: Relatively flat -->
|
||||
<trkpt lat="59.0" lon="18.0"><ele>10</ele></trkpt>
|
||||
<trkpt lat="59.1" lon="18.1"><ele>20</ele></trkpt>
|
||||
<trkpt lat="59.2" lon="18.2"><ele>30</ele></trkpt>
|
||||
<trkpt lat="59.3" lon="18.3"><ele>40</ele></trkpt>
|
||||
<trkpt lat="59.4" lon="18.4"><ele>50</ele></trkpt>
|
||||
<trkpt lat="59.5" lon="18.5"><ele>60</ele></trkpt>
|
||||
<trkpt lat="59.6" lon="18.6"><ele>70</ele></trkpt>
|
||||
<trkpt lat="59.7" lon="18.7"><ele>80</ele></trkpt>
|
||||
<trkpt lat="59.8" lon="18.8"><ele>90</ele></trkpt>
|
||||
<trkpt lat="59.9" lon="18.9"><ele>100</ele></trkpt>
|
||||
|
||||
<!-- Day 2: Some hills -->
|
||||
<trkpt lat="60.0" lon="19.0"><ele>120</ele></trkpt>
|
||||
<trkpt lat="60.1" lon="19.1"><ele>150</ele></trkpt>
|
||||
<trkpt lat="60.2" lon="19.2"><ele>180</ele></trkpt>
|
||||
<trkpt lat="60.3" lon="19.3"><ele>200</ele></trkpt>
|
||||
<trkpt lat="60.4" lon="19.4"><ele>220</ele></trkpt>
|
||||
<trkpt lat="60.5" lon="19.5"><ele>240</ele></trkpt>
|
||||
<trkpt lat="60.6" lon="19.6"><ele>260</ele></trkpt>
|
||||
<trkpt lat="60.7" lon="19.7"><ele>280</ele></trkpt>
|
||||
<trkpt lat="60.8" lon="19.8"><ele>300</ele></trkpt>
|
||||
<trkpt lat="60.9" lon="19.9"><ele>320</ele></trkpt>
|
||||
|
||||
<!-- Day 3: Moderate hills -->
|
||||
<trkpt lat="61.0" lon="20.0"><ele>340</ele></trkpt>
|
||||
<trkpt lat="61.1" lon="20.1"><ele>360</ele></trkpt>
|
||||
<trkpt lat="61.2" lon="20.2"><ele>380</ele></trkpt>
|
||||
<trkpt lat="61.3" lon="20.3"><ele>400</ele></trkpt>
|
||||
<trkpt lat="61.4" lon="20.4"><ele>420</ele></trkpt>
|
||||
<trkpt lat="61.5" lon="20.5"><ele>440</ele></trkpt>
|
||||
<trkpt lat="61.6" lon="20.6"><ele>460</ele></trkpt>
|
||||
<trkpt lat="61.7" lon="20.7"><ele>480</ele></trkpt>
|
||||
<trkpt lat="61.8" lon="20.8"><ele>500</ele></trkpt>
|
||||
<trkpt lat="61.9" lon="20.9"><ele>520</ele></trkpt>
|
||||
|
||||
<!-- Day 4: Steeper hills -->
|
||||
<trkpt lat="62.0" lon="21.0"><ele>550</ele></trkpt>
|
||||
<trkpt lat="62.1" lon="21.1"><ele>600</ele></trkpt>
|
||||
<trkpt lat="62.2" lon="21.2"><ele>650</ele></trkpt>
|
||||
<trkpt lat="62.3" lon="21.3"><ele>700</ele></trkpt>
|
||||
<trkpt lat="62.4" lon="21.4"><ele>750</ele></trkpt>
|
||||
<trkpt lat="62.5" lon="21.5"><ele>800</ele></trkpt>
|
||||
<trkpt lat="62.6" lon="21.6"><ele>850</ele></trkpt>
|
||||
<trkpt lat="62.7" lon="21.7"><ele>900</ele></trkpt>
|
||||
<trkpt lat="62.8" lon="21.8"><ele>950</ele></trkpt>
|
||||
<trkpt lat="62.9" lon="21.9"><ele>1000</ele></trkpt>
|
||||
|
||||
<!-- Day 5: Very steep section -->
|
||||
<trkpt lat="63.0" lon="22.0"><ele>1050</ele></trkpt>
|
||||
<trkpt lat="63.1" lon="22.1"><ele>1150</ele></trkpt>
|
||||
<trkpt lat="63.2" lon="22.2"><ele>1250</ele></trkpt>
|
||||
<trkpt lat="63.3" lon="22.3"><ele>1350</ele></trkpt>
|
||||
<trkpt lat="63.4" lon="22.4"><ele>1450</ele></trkpt>
|
||||
<trkpt lat="63.5" lon="22.5"><ele>1550</ele></trkpt>
|
||||
<trkpt lat="63.6" lon="22.6"><ele>1650</ele></trkpt>
|
||||
<trkpt lat="63.7" lon="22.7"><ele>1750</ele></trkpt>
|
||||
<trkpt lat="63.8" lon="22.8"><ele>1850</ele></trkpt>
|
||||
<trkpt lat="63.9" lon="22.9"><ele>1950</ele></trkpt>
|
||||
|
||||
<!-- Day 6: Extremely steep section -->
|
||||
<trkpt lat="64.0" lon="23.0"><ele>2050</ele></trkpt>
|
||||
<trkpt lat="64.1" lon="23.1"><ele>2200</ele></trkpt>
|
||||
<trkpt lat="64.2" lon="23.2"><ele>2350</ele></trkpt>
|
||||
<trkpt lat="64.3" lon="23.3"><ele>2500</ele></trkpt>
|
||||
<trkpt lat="64.4" lon="23.4"><ele>2650</ele></trkpt>
|
||||
<trkpt lat="64.5" lon="23.5"><ele>2800</ele></trkpt>
|
||||
<trkpt lat="64.6" lon="23.6"><ele>2950</ele></trkpt>
|
||||
<trkpt lat="64.7" lon="23.7"><ele>3100</ele></trkpt>
|
||||
<trkpt lat="64.8" lon="23.8"><ele>3250</ele></trkpt>
|
||||
<trkpt lat="64.9" lon="23.9"><ele>3400</ele></trkpt>
|
||||
</trkseg>
|
||||
</trk>
|
||||
</gpx>
|
36065
tests/gpx/very_long_route.gpx
Normal file
36065
tests/gpx/very_long_route.gpx
Normal file
File diff suppressed because it is too large
Load Diff
35
tests/test_forced_stop.sh
Executable file
35
tests/test_forced_stop.sh
Executable file
@@ -0,0 +1,35 @@
|
||||
#!/bin/bash
|
||||
|
||||
cd "$(dirname "$0")/.."
|
||||
|
||||
# Create a test GPX file with a simple route
|
||||
cat > test_route.gpx << EOF
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<gpx version="1.1" creator="Test">
|
||||
<trk>
|
||||
<name>Test Route</name>
|
||||
<trkseg>
|
||||
<trkpt lat="59.0" lon="18.0"><ele>10</ele></trkpt>
|
||||
<trkpt lat="59.1" lon="18.1"><ele>20</ele></trkpt>
|
||||
<trkpt lat="59.2" lon="18.2"><ele>30</ele></trkpt>
|
||||
<trkpt lat="59.3" lon="18.3"><ele>40</ele></trkpt>
|
||||
<trkpt lat="59.4" lon="18.4"><ele>50</ele></trkpt>
|
||||
<trkpt lat="59.5" lon="18.5"><ele>60</ele></trkpt>
|
||||
<trkpt lat="59.6" lon="18.6"><ele>70</ele></trkpt>
|
||||
<trkpt lat="59.7" lon="18.7"><ele>80</ele></trkpt>
|
||||
<trkpt lat="59.8" lon="18.8"><ele>90</ele></trkpt>
|
||||
<trkpt lat="59.9" lon="18.9"><ele>100</ele></trkpt>
|
||||
</trkseg>
|
||||
</trk>
|
||||
</gpx>
|
||||
EOF
|
||||
|
||||
# Run the bicycle planner with a 1-night forced stop
|
||||
echo "Testing with 1-night forced stop at 59.5,18.5"
|
||||
go run main.go --input="test_route.gpx" --days=5 --elevFactor=4 --forestRadius=5 --resupplyRadius=5000 --multiStop="59.5,18.5:1"
|
||||
|
||||
# The number of segments is now shown in the output
|
||||
echo "Check the output above for the number of segments created"
|
||||
|
||||
# Clean up
|
||||
rm test_route.gpx
|
35
tests/test_multi_night_stop.sh
Executable file
35
tests/test_multi_night_stop.sh
Executable file
@@ -0,0 +1,35 @@
|
||||
#!/bin/bash
|
||||
|
||||
cd "$(dirname "$0")/.."
|
||||
|
||||
# Create a test GPX file with a simple route
|
||||
cat > test_route.gpx << EOF
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<gpx version="1.1" creator="Test">
|
||||
<trk>
|
||||
<name>Test Route</name>
|
||||
<trkseg>
|
||||
<trkpt lat="59.0" lon="18.0"><ele>10</ele></trkpt>
|
||||
<trkpt lat="59.1" lon="18.1"><ele>20</ele></trkpt>
|
||||
<trkpt lat="59.2" lon="18.2"><ele>30</ele></trkpt>
|
||||
<trkpt lat="59.3" lon="18.3"><ele>40</ele></trkpt>
|
||||
<trkpt lat="59.4" lon="18.4"><ele>50</ele></trkpt>
|
||||
<trkpt lat="59.5" lon="18.5"><ele>60</ele></trkpt>
|
||||
<trkpt lat="59.6" lon="18.6"><ele>70</ele></trkpt>
|
||||
<trkpt lat="59.7" lon="18.7"><ele>80</ele></trkpt>
|
||||
<trkpt lat="59.8" lon="18.8"><ele>90</ele></trkpt>
|
||||
<trkpt lat="59.9" lon="18.9"><ele>100</ele></trkpt>
|
||||
</trkseg>
|
||||
</trk>
|
||||
</gpx>
|
||||
EOF
|
||||
|
||||
# Run the bicycle planner with a 2-night forced stop
|
||||
echo "Testing with 2-night forced stop at 59.5,18.5"
|
||||
go run main.go --input="test_route.gpx" --days=6 --elevFactor=4 --forestRadius=5 --resupplyRadius=5000 --multiStop="59.5,18.5:2"
|
||||
|
||||
# The number of segments is now shown in the output
|
||||
echo "Check the output above for the number of segments created"
|
||||
|
||||
# Clean up
|
||||
rm test_route.gpx
|
37
tests/test_town_avoidance.sh
Executable file
37
tests/test_town_avoidance.sh
Executable file
@@ -0,0 +1,37 @@
|
||||
#!/bin/bash
|
||||
|
||||
cd "$(dirname "$0")/.."
|
||||
|
||||
# Create a test GPX file with a simple route
|
||||
cat > test_route.gpx << EOF
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<gpx version="1.1" creator="Test">
|
||||
<trk>
|
||||
<name>Test Route</name>
|
||||
<trkseg>
|
||||
<trkpt lat="59.0" lon="18.0"><ele>10</ele></trkpt>
|
||||
<trkpt lat="59.1" lon="18.1"><ele>20</ele></trkpt>
|
||||
<trkpt lat="59.2" lon="18.2"><ele>30</ele></trkpt>
|
||||
<trkpt lat="59.3" lon="18.3"><ele>40</ele></trkpt>
|
||||
<trkpt lat="59.4" lon="18.4"><ele>50</ele></trkpt>
|
||||
<trkpt lat="59.5" lon="18.5"><ele>60</ele></trkpt>
|
||||
<trkpt lat="59.6" lon="18.6"><ele>70</ele></trkpt>
|
||||
<trkpt lat="59.7" lon="18.7"><ele>80</ele></trkpt>
|
||||
<trkpt lat="59.8" lon="18.8"><ele>90</ele></trkpt>
|
||||
<trkpt lat="59.9" lon="18.9"><ele>100</ele></trkpt>
|
||||
</trkseg>
|
||||
</trk>
|
||||
</gpx>
|
||||
EOF
|
||||
|
||||
# Run the bicycle planner with debug output to see town avoidance in action
|
||||
echo "Testing town avoidance feature with performance improvements"
|
||||
echo "Running first time (no cache)..."
|
||||
time go run main.go --input="test_route.gpx" --days=5 --elevFactor=4 --forestRadius=5 --resupplyRadius=5000
|
||||
|
||||
echo ""
|
||||
echo "Running second time (with cache)..."
|
||||
time go run main.go --input="test_route.gpx" --days=5 --elevFactor=4 --forestRadius=5 --resupplyRadius=5000
|
||||
|
||||
# Clean up
|
||||
rm test_route.gpx
|
6
tests/test_uneven_effort.sh
Executable file
6
tests/test_uneven_effort.sh
Executable file
@@ -0,0 +1,6 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Test script for uneven effort distribution
|
||||
echo "Testing uneven effort distribution..."
|
||||
cd "$(dirname "$0")/.."
|
||||
go run main.go -input tests/gpx/test_uneven_effort.gpx -days 12 -elevFactor 4.0
|
8
tests/test_uneven_effort_with_stops.sh
Executable file
8
tests/test_uneven_effort_with_stops.sh
Executable file
@@ -0,0 +1,8 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Test script for uneven effort distribution with forced stops
|
||||
echo "Testing uneven effort distribution with forced stops..."
|
||||
cd "$(dirname "$0")/.."
|
||||
|
||||
# Run the bicycle planner with the test GPX file and forced stops
|
||||
go run main.go -input tests/gpx/test_uneven_effort.gpx -days 12 -elevFactor 4.0 -multiStop="60.5,19.5:1;62.5,21.5:2;64.5,23.5:1"
|
9
tests/test_very_long_route_with_forced_stops.sh
Executable file
9
tests/test_very_long_route_with_forced_stops.sh
Executable file
@@ -0,0 +1,9 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Test script for the issue with uneven effort distribution
|
||||
echo "Testing issue with uneven effort distribution..."
|
||||
cd "$(dirname "$0")/.."
|
||||
|
||||
# Run the bicycle planner with the specified parameters and debug logging
|
||||
# Filter the output to only show the relevant parts
|
||||
go run main.go -input tests/gpx/very_long_route.gpx -days 12 -forestRadius 5 -resupplyRadius 5000 -multiStop "59.126854,11.380377:1;59.92199,10.744629:2"
|
9
tests/test_very_long_route_with_forced_stops_and_more_days.sh
Executable file
9
tests/test_very_long_route_with_forced_stops_and_more_days.sh
Executable file
@@ -0,0 +1,9 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Test script for the issue with uneven effort distribution
|
||||
echo "Testing issue with uneven effort distribution..."
|
||||
cd "$(dirname "$0")/.."
|
||||
|
||||
# Run the bicycle planner with the specified parameters and debug logging
|
||||
# Filter the output to only show the relevant parts
|
||||
go run main.go -input tests/gpx/very_long_route.gpx -days 14 -forestRadius 5 -resupplyRadius 5000 -multiStop "59.126854,11.380377:1;59.92199,10.744629:2"
|
Reference in New Issue
Block a user