(source_results: Vec<SourceResult>)
| 579 | } |
| 580 | |
| 581 | fn get_median(source_results: Vec<SourceResult>) -> f64 { |
| 582 | let mut prices: Vec<f64> = source_results.iter().map(|r| r.price).collect(); |
| 583 | prices.sort_by(|a, b| a.partial_cmp(b).unwrap()); |
| 584 | let mid = prices.len() / 2; |
| 585 | if prices.len() % 2 == 1 { |
| 586 | prices[mid] |
| 587 | } else { |
| 588 | f64::midpoint(prices[mid - 1], prices[mid]) |
| 589 | } |
| 590 | } |
no test coverage detected