Пример #1
0
        public async Task <IActionResult> DeletePractice(int practiceId)
        {
            try
            {
                if (practiceId <= 0)
                {
                    return(BadRequest());
                }

                var result = await _service.DeletePractice(practiceId);

                return(CreatedAtRoute("default", result));
            }
            catch (Exception ex)
            {
                Log.Error(ex, ex.Message);
                return(BadRequest(ex.Message));
            }
        }
Пример #2
0
        public async Task BenchmarksPractice()
        {
            try
            {
                //Insert
                var random   = new Random();
                var ind      = random.Next(1, 1000);
                var practice = new PracticeDto()
                {
                    Coach = null,
                    EstimatedTrainingLoad = 525,
                    IsModified            = false,
                    Name = $"Test Practice #{ind}",
                    Note = null,
                    RecommendedTrainingLoad = 375,
                    Session        = null,
                    SessionId      = 1,
                    Side           = null,
                    SubTopic       = "Test Subtopic",
                    TeamId         = 1,
                    Topic          = "Test Topic",
                    PracticeDrills = new List <PracticeDrillDto>()
                    {
                        new PracticeDrillDto()
                        {
                            CalculatedTrainingLoad = 175,
                            Drill           = null,
                            DrillId         = 2,
                            Duration        = 30,
                            IsModified      = false,
                            Note            = null,
                            NoteId          = 0,
                            NumberOfPlayers = 10,
                            Practice        = null,
                            PracticeId      = 0,
                            Sequence        = 1,
                            Size            = "60x60"
                        }, new PracticeDrillDto()
                        {
                            CalculatedTrainingLoad = 200,
                            Drill           = null,
                            DrillId         = 4,
                            Duration        = 30,
                            IsModified      = false,
                            Note            = null,
                            NoteId          = 0,
                            NumberOfPlayers = 7,
                            Practice        = null,
                            PracticeId      = 0,
                            Sequence        = 2,
                            Size            = "18x18"
                        }
                    }
                };

                var apiCallUrl = $"{this._apibaseUrl}/api/v1/practices";
                var startTime  = DateTime.UtcNow;
                var result     = await PostItemAsync <PracticeDto>(apiCallUrl, practice);

                if (result.IsSuccessStatusCode)
                {
                    var endTime     = DateTime.UtcNow;
                    var elapsedTime = (endTime - startTime).Milliseconds;

                    //Write the benchmark data
                    await _svcBenchmark.AddBenchmark(new Benchmark
                    {
                        Controller = "Practice",
                        Method     = "CreatePractice",
                        Operation  = "Insert",
                        Time       = elapsedTime,
                        LastRun    = DateTime.UtcNow
                    });

                    //Clean the test data
                    var practiceId = await result.Content.ReadAsStringAsync();

                    await _svcPractice.DeletePractice(Int32.Parse(practiceId));
                }



                //Retrieve all practices
                apiCallUrl = $"{this._apibaseUrl}/api/v1/practices";
                startTime  = DateTime.UtcNow;
                var practices = await GetItemAsync <List <PracticeDto> >(apiCallUrl);

                if (practices != null)
                {
                    var endTime     = DateTime.UtcNow;
                    var elapsedTime = (endTime - startTime).Milliseconds;

                    //Write the benchmark data
                    await _svcBenchmark.AddBenchmark(new Benchmark
                    {
                        Controller = "Practice",
                        Method     = "GetAllPractices",
                        Operation  = "Select All",
                        Time       = elapsedTime,
                        LastRun    = DateTime.UtcNow
                    });
                }


                //Retrieve the practice
                int id = 1;
                apiCallUrl = $"{this._apibaseUrl}/api/v1/practices/id/{id}";
                startTime  = DateTime.UtcNow;
                var dtoPractice = await GetItemAsync <PracticeDto>(apiCallUrl);

                if (dtoPractice != null)
                {
                    var endTime     = DateTime.UtcNow;
                    var elapsedTime = (endTime - startTime).Milliseconds;

                    //Write the benchmark data
                    await _svcBenchmark.AddBenchmark(new Benchmark
                    {
                        Controller = "Practice",
                        Method     = "GetPractice",
                        Operation  = "Select by Id",
                        Time       = elapsedTime,
                        LastRun    = DateTime.UtcNow
                    });
                }


                //Update practice
                ind         = random.Next(1, 1000);
                dtoPractice = dtoPractice ?? await _svcPractice.GetPractice(1);

                dtoPractice.IsModified = true;
                apiCallUrl             = $"{this._apibaseUrl}/api/v1/practices/update";
                startTime = DateTime.UtcNow;
                result    = await PostItemAsync <PracticeDto>(apiCallUrl, dtoPractice);

                if (result.IsSuccessStatusCode)
                {
                    var endTime     = DateTime.UtcNow;
                    var elapsedTime = (endTime - startTime).Milliseconds;

                    //Write the benchmark data
                    await _svcBenchmark.AddBenchmark(new Benchmark
                    {
                        Controller = "Practice",
                        Method     = "UpdatePractice",
                        Operation  = "Update",
                        Time       = elapsedTime,
                        LastRun    = DateTime.UtcNow
                    });
                }
            }
            catch (Exception e)
            {
                Console.WriteLine(e);
            }
        }