Exemple #1
0
        private static void Main(string[] args)
        {
            var athlete = new Athlete
            {
                TPData = new TrainingPeaksAthleteData
                {
                    LoginName     = "jscbutler",
                    LoginPassword = "******",
                    AccountType   = TrainingPeaksAthleteAccountTypes.SelfCoachedPremium
                },
                FTBikePower = 260,
                WeightKilos = 86.3
            };

            Console.Out.WriteLine("Starting connection to TrainingPeaks....");

            var conn = new TrainingPeaksClient();

            Console.Out.WriteLine("Initialised SOAP Client - starting to request Person Data");
            conn.GetAthleteData(athlete);
            Console.Out.WriteLine("Received Person Data - " + athlete.TPData.AthleteName + " ID:" +
                                  athlete.TPData.PersonID);
            Console.Out.WriteLine("Accesing last workout for " + athlete.TPData.AthleteName);
            //var workout = conn.GetLastWorkoutIn30Days(athlete);
            //pwx pwxData = conn.GetExtendedWorkoutData(athlete, workout);
            var fromDate = DateTime.ParseExact("20/03/2016", "dd/MM/yyyy", CultureInfo.InvariantCulture);
            var toDate   = DateTime.ParseExact("30/03/2016", "dd/MM/yyyy", CultureInfo.InvariantCulture);
            var workouts = conn.GetAllWorkoutsInDateRange(athlete, fromDate, toDate);

            foreach (var workout in workouts)
            {
                if (workout.SportType == SportType.Bike)
                {
                    var pwxData        = conn.GetExtendedWorkoutData(athlete, workout);
                    var extractor      = new PWXDataExtractor(pwxData);
                    var workoutSamples = extractor.ExtractData();
                    var calculator     = new WorkoutSamplesCalculator(workoutSamples, athlete);
                    Console.Out.WriteLine(workout.SportType + " on " + workout.StartDate + " TSS: " + workoutSamples.SummaryTrainingStressScore + " Duration: " + workout.Duration);
                    var cadenceRanges = calculator.ClassifyWorkoutCadenceRanges();
                    foreach (var cadenceRange in cadenceRanges)
                    {
                        Console.WriteLine(cadenceRange);
                    }
                    Console.WriteLine("==========================================");
                }
            }

            Console.In.ReadLine();
        }
Exemple #2
0
        public TrainingPeaksClient SetupFakeTpClient(int numAthletes = 1)
        {
            if (testFakeClient != null)
            {
                return(testFakeClient);
            }
            var fakeClient = A.Fake <ServiceSoap>();

            var client = new TrainingPeaksClient(fakeClient);

            A.CallTo(() => fakeClient.GetAccessibleAthletes(VALIDUSERNAME, VALIDPASSWORD, VALIDACCOUNT))
            .Returns(FakePerson(numAthletes));

            A.CallTo(
                () =>
                fakeClient.GetWorkoutsForAccessibleAthlete(VALIDUSERNAME, VALIDPASSWORD, A <int> .Ignored,
                                                           A <DateTime> .Ignored, A <DateTime> .Ignored)).Returns(new[] { FakeWorkout(), FakeWorkout() });
            ;
            A.CallTo(
                () =>
                fakeClient.GetExtendedWorkoutDataForAccessibleAthlete(VALIDUSERNAME, VALIDPASSWORD, A <int> .Ignored,
                                                                      A <int> .Ignored)).Returns(GetSamplePWXFile());
            return(client);
        }
Exemple #3
0
        public void TestTrainingPeaskConstructor()
        {
            var client = new TrainingPeaksClient();

            Assert.IsType <TrainingPeaksClient>(client);
        }
 public void TestTrainingPeaskConstructor()
 {
     var client = new TrainingPeaksClient();
     Assert.IsType<TrainingPeaksClient>(client);
 }
        public TrainingPeaksClient SetupFakeTpClient(int numAthletes =1)
        {
            if (testFakeClient != null)
                return testFakeClient;
            var fakeClient = A.Fake<ServiceSoap>();

            var client = new TrainingPeaksClient(fakeClient);
            A.CallTo(() => fakeClient.GetAccessibleAthletes(VALIDUSERNAME, VALIDPASSWORD, VALIDACCOUNT))
                .Returns(FakePerson(numAthletes));

            A.CallTo(
                () =>
                    fakeClient.GetWorkoutsForAccessibleAthlete(VALIDUSERNAME, VALIDPASSWORD, A<int>.Ignored,
                        A<DateTime>.Ignored, A<DateTime>.Ignored)).Returns(new[] {FakeWorkout(), FakeWorkout()});
               ;
            A.CallTo(
                () =>
                    fakeClient.GetExtendedWorkoutDataForAccessibleAthlete(VALIDUSERNAME, VALIDPASSWORD, A<int>.Ignored,
                        A<int>.Ignored)).Returns(GetSamplePWXFile());
            return client;
        }