private void UpdateActivityDetails() { // update details missing from summary activity. _fvActivity.Calories = Convert.ToDecimal(_stravaActivity.Calories); _fvActivity.Description = _stravaActivity.Description; // gear?? _fvActivity.EmbedToken = _stravaActivity.EmbedToken; _fvActivity.DeviceName = _stravaActivity.DeviceName; _fvActivity.MapPolyline = _stravaActivity.Map.Polyline; // splits_metric // splits_standard if ((_fvActivity.HasPowerMeter) && (_convertedStream.HasIndividualStream(StreamType.Watts))) { ZoneValueOnDay value = new ZoneValueOnDay(); var ftp = value.GetUserZoneValueOnGivenDate(_userId, enums.ZoneType.BikePower, _fvActivity.Start); if (ftp != null) { BikePower calc = new BikePower(_convertedStream.GetIndividualStream <int?>(enums.StreamType.Watts), ftp.Value); _fvActivity.TSS = calc.TSS(); _fvActivity.IntensityFactor = calc.IntensityFactor(); } } if (_streamSize != null) { _fvActivity.StreamSize = _streamSize; } _fvActivity.DetailsDownloaded = true; _unitOfWork.Complete(); }
public void ActivityAnalytics_ActivityTest() { int ftp = 295; // ftp at time of activity; List <int> testData = FindPeakTest.GetActivityPowerStream(); // results rounded to match values shown on Training Peaks. BikePower cal = new BikePower(testData, ftp); Assert.AreEqual(227, Math.Round(cal.NP(), 0)); Assert.AreEqual(52.8M, Math.Round(cal.TSS(), 1)); Assert.AreEqual(0.77M, Math.Round(cal.IntensityFactor(), 2)); }
public void ActivityAnalytics_OneHourAtFTPTest() { int ftp = 300; List <int> testData = new List <int>(); for (int x = 1; x <= 60 * 60; x++) { testData.Add(ftp); } Assert.AreEqual(60 * 60, testData.Count); BikePower cal = new BikePower(testData, ftp); Assert.AreEqual(ftp, cal.NP()); Assert.AreEqual(100, cal.TSS()); Assert.AreEqual(1.00M, cal.IntensityFactor()); }
public void ActivityAnalytics_NormalisedPowerSpreadsheetTest() { List <int> testData = new List <int>(); for (int x = 1; x <= 4000; x++) { if (x > 31 && x <= 39) { testData.Add(300); } else { testData.Add(200); } } Assert.AreEqual(4000, testData.Count); BikePower cal = new BikePower(testData, 295); Assert.AreEqual(200.241M, cal.NP()); }