public void E_GetAllWorkOutsByUserApiTest()
        {
            IEnumerable <WorkoutCollection> result;
            var user       = _userService.GetUsers().FirstOrDefault();
            var controller = new WorkoutTrackerController(workoutService, categoryService, _logManager);
            var input      = Helper.CastObject <User>(user);

            controller.Request       = new HttpRequestMessage();
            controller.Configuration = new HttpConfiguration();
            controller.Request.Headers.Add("Accept", "application/json");
            var response = controller.GetAllWorkOutsByUser(input);

            result = response.Content.ReadAsAsync <IEnumerable <WorkoutCollection> >().Result;
            Assert.AreEqual(HttpStatusCode.OK, response.StatusCode);
            if (result != null && result.Count() > 0)
            {
                Assert.AreNotEqual(null, result);
                Assert.AreNotEqual(0, result.Count());
            }
            response.Dispose();
        }
        public void O_WorkoutLoadTest()
        {
            double    expectedTime = 1;
            var       locker       = new Object();
            int       count        = 0;
            Stopwatch stopwatch    = new Stopwatch();

            stopwatch.Start();
            System.Threading.Tasks.Parallel.For
                (0
                , 1000
                , new System.Threading.Tasks.ParallelOptions {
                MaxDegreeOfParallelism = 5
            }
                , (i) =>
            {
                System.Threading.Interlocked.Increment(ref count);
                lock (locker)
                {
                    IEnumerable <WorkoutCollection> result;
                    var user                 = _userService.GetUsers().FirstOrDefault();
                    var controller           = new WorkoutTrackerController(workoutService, categoryService, _logManager);
                    var input                = Helper.CastObject <User>(user);
                    controller.Request       = new HttpRequestMessage();
                    controller.Configuration = new HttpConfiguration();
                    controller.Request.Headers.Add("Accept", "application/json");
                    var response = controller.GetAllWorkOutsByUser(input);
                    result       = response.Content.ReadAsAsync <IEnumerable <WorkoutCollection> >().Result;
                    response.Dispose();
                    System.Threading.Thread.Sleep(10);
                }
                System.Threading.Interlocked.Decrement(ref count);
            }
                );

            stopwatch.Stop();
            var res = stopwatch.Elapsed.TotalMinutes <= expectedTime;

            Assert.IsTrue(res);
        }