mirror of
https://github.com/10h30/wp-strava.git
synced 2026-07-17 13:43:50 +09:00
Added System of Measure (English) unit tests;
Fixed a bug in pace formatting
This commit is contained in:
+12
-2
@@ -29,10 +29,20 @@ abstract class WPStrava_SOM {
|
||||
abstract public function pace( $mps );
|
||||
abstract public function get_pace_label();
|
||||
|
||||
/**
|
||||
* Create a time string of hours:minutes:seconds from just seconds.
|
||||
*
|
||||
* @return string Time formatted as 'H:i:s'.
|
||||
*/
|
||||
public function time( $seconds ) {
|
||||
return date( 'H:i:s', mktime( 0, 0, $seconds ) );
|
||||
}
|
||||
|
||||
/**
|
||||
* Label for hours.
|
||||
*
|
||||
* @return string 'hours'
|
||||
*/
|
||||
public function get_time_label() {
|
||||
return __( 'hours', 'wp-strava' );
|
||||
}
|
||||
@@ -49,8 +59,8 @@ abstract class WPStrava_SOM {
|
||||
/**
|
||||
* Change meters per second to Minutes Per 100 Meters. Same for English/metric.
|
||||
*
|
||||
* @param float $mps Meters per second.
|
||||
* @return float Minutes Per 100 Meters.
|
||||
* @param float|string $mps Meters per second.
|
||||
* @return string Minutes Per 100 Meters.
|
||||
*/
|
||||
public function swimpace( $mps ) {
|
||||
|
||||
|
||||
+12
-12
@@ -10,8 +10,8 @@ class WPStrava_SOMEnglish extends WPStrava_SOM {
|
||||
/**
|
||||
* Change meters to miles.
|
||||
*
|
||||
* @param float $m Distance in meters.
|
||||
* @return float Distance in miles.
|
||||
* @param float|string $m Distance in meters.
|
||||
* @return string Distance in miles.
|
||||
*/
|
||||
public function distance( $m ) {
|
||||
return number_format( $m / 1609.344, 2 );
|
||||
@@ -20,11 +20,11 @@ class WPStrava_SOMEnglish extends WPStrava_SOM {
|
||||
/**
|
||||
* Change miles to meters.
|
||||
*
|
||||
* @param float $dist Distance in miles.
|
||||
* @return float Distance in meters.
|
||||
* @param float|string $dist Distance in miles.
|
||||
* @return string Distance in meters.
|
||||
*/
|
||||
public function distance_inverse( $dist ) {
|
||||
return $dist * 1609.344;
|
||||
return number_format( $dist * 1609.344, 2 );
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -39,8 +39,8 @@ class WPStrava_SOMEnglish extends WPStrava_SOM {
|
||||
/**
|
||||
* Change meters per second to miles per hour.
|
||||
*
|
||||
* @param float $mps Meters per second.
|
||||
* @return float Miles per hour.
|
||||
* @param float|string $mps Meters per second.
|
||||
* @return string Miles per hour.
|
||||
*/
|
||||
public function speed( $mps ) {
|
||||
return number_format( $mps * 2.2369, 2 );
|
||||
@@ -58,8 +58,8 @@ class WPStrava_SOMEnglish extends WPStrava_SOM {
|
||||
/**
|
||||
* Change meters per second to minutes per mile.
|
||||
*
|
||||
* @param float $mps Meters per second.
|
||||
* @return float Minutes Per Mile.
|
||||
* @param float|string $mps Meters per second.
|
||||
* @return string Minutes Per Mile.
|
||||
*/
|
||||
public function pace( $mps ) {
|
||||
|
||||
@@ -71,7 +71,7 @@ class WPStrava_SOMEnglish extends WPStrava_SOM {
|
||||
$s = 3600 / $mph;
|
||||
$ss = $s / 60;
|
||||
$ms = floor( $ss ) * 60;
|
||||
$sec = round( $s - $ms );
|
||||
$sec = sprintf( '%02d', round( $s - $ms ) );
|
||||
$min = floor( $ss );
|
||||
|
||||
return "{$min}:{$sec}";
|
||||
@@ -89,8 +89,8 @@ class WPStrava_SOMEnglish extends WPStrava_SOM {
|
||||
/**
|
||||
* Change meters to feet.
|
||||
*
|
||||
* @param float $m Elevation in meters.
|
||||
* @return float Elevation in feet.
|
||||
* @param float|string $m Elevation in meters.
|
||||
* @return string Elevation in feet.
|
||||
*/
|
||||
public function elevation( $m ) {
|
||||
return number_format( $m / 0.3048, 2 );
|
||||
|
||||
+11
-11
@@ -10,8 +10,8 @@ class WPStrava_SOMMetric extends WPStrava_SOM {
|
||||
/**
|
||||
* Change meters to kilometers.
|
||||
*
|
||||
* @param float $m Distance in meters.
|
||||
* @return float Distance in kilometers.
|
||||
* @param float|string $m Distance in meters.
|
||||
* @return string Distance in kilometers.
|
||||
*/
|
||||
public function distance( $m ) {
|
||||
return number_format( $m / 1000, 2 );
|
||||
@@ -20,11 +20,11 @@ class WPStrava_SOMMetric extends WPStrava_SOM {
|
||||
/**
|
||||
* Change kilometers to meters.
|
||||
*
|
||||
* @param float $dist Distance in kilometers.
|
||||
* @return float Distance in meters.
|
||||
* @param float|string $dist Distance in kilometers.
|
||||
* @return string Distance in meters.
|
||||
*/
|
||||
public function distance_inverse( $dist ) {
|
||||
return $dist * 1000;
|
||||
return number_format( $dist * 1000, 2 );
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -39,8 +39,8 @@ class WPStrava_SOMMetric extends WPStrava_SOM {
|
||||
/**
|
||||
* Change meters per second to kilometers per hour.
|
||||
*
|
||||
* @param float $mps Meters per second.
|
||||
* @return float Kilometers per hour.
|
||||
* @param float|string $mps Meters per second.
|
||||
* @return string Kilometers per hour.
|
||||
*/
|
||||
public function speed( $mps ) {
|
||||
return number_format( $mps * 3.6, 2 );
|
||||
@@ -58,8 +58,8 @@ class WPStrava_SOMMetric extends WPStrava_SOM {
|
||||
/**
|
||||
* Change meters per second to minutes per kilometer.
|
||||
*
|
||||
* @param float $mps Meters per second.
|
||||
* @return float Kilometers per hour.
|
||||
* @param float|string $mps Meters per second.
|
||||
* @return string Minutes per kilometer.
|
||||
*/
|
||||
public function pace( $mps ) {
|
||||
|
||||
@@ -72,7 +72,7 @@ class WPStrava_SOMMetric extends WPStrava_SOM {
|
||||
$s = 3600 / $kmh;
|
||||
$ss = $s / 60;
|
||||
$ms = floor( $ss ) * 60;
|
||||
$sec = round( $s - $ms );
|
||||
$sec = sprintf( '%02d', round( $s - $ms ) );
|
||||
$min = floor( $ss );
|
||||
|
||||
return "{$min}:{$sec}";
|
||||
@@ -90,7 +90,7 @@ class WPStrava_SOMMetric extends WPStrava_SOM {
|
||||
/**
|
||||
* Change meters to meters };^)
|
||||
*
|
||||
* @param $m Elevation in meters.
|
||||
* @param float|string $m Elevation in meters.
|
||||
* @return string Elevation in meters.
|
||||
*/
|
||||
public function elevation( $m ) {
|
||||
|
||||
Reference in New Issue
Block a user