public HttpResponseMessage EndWorkout(WorkoutActive wa)
        {
            WorkoutActive     activeWorkout = new WorkoutActive();
            WorkoutCollection result        = new WorkoutCollection();

            try
            {
                activeWorkout.sid        = wa.sid;
                activeWorkout.workout_id = wa.workout_id;
                activeWorkout.start_date = wa.start_date;
                activeWorkout.start_time = wa.start_time;
                activeWorkout.end_date   = wa.end_date;
                activeWorkout.end_time   = wa.end_time;
                activeWorkout.comment    = wa.comment;
                activeWorkout.status     = true;
                var input = Helper.CastObject <workout_active>(activeWorkout);
                _workoutService.EndWorkout(input);
                var res = _workoutService.GetWorkout(activeWorkout.workout_id);
                MapCollection(res, ref result);
            }
            catch (Exception ex)
            {
                _logManager.WriteLog(ex);
            }
            return(ToJson(result));
        }
        public void F_AddWorkoutApiTest()
        {
            WorkoutCollection result;
            var category_name    = "WebApiTestCategoryUpdated";
            var cat              = categoryService.GetWorkoutCategories().Where(c => c.category_name.Equals(category_name, StringComparison.InvariantCultureIgnoreCase)).FirstOrDefault();
            var user             = _userService.GetUsers().FirstOrDefault();
            var catCon           = Helper.CastObject <WorkoutCategory>(cat);
            var userCon          = Helper.CastObject <User>(user);
            WorkoutCollection wc = new WorkoutCollection()
            {
                workout_id            = 0,
                workout_title         = "TestApiWorkout",
                workout_note          = string.Empty,
                workout_category      = catCon,
                workout_active        = null,
                calories_burn_per_min = 0,
                category_id           = catCon.category_id,
                user    = userCon,
                user_id = userCon.user_id
            };
            var controller = new WorkoutTrackerController(workoutService, categoryService, _logManager);

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

            result = response.Content.ReadAsAsync <WorkoutCollection>().Result;
            Assert.AreEqual(HttpStatusCode.OK, response.StatusCode);
            Assert.AreNotEqual(null, result);
            Assert.AreNotEqual(0, result.workout_id);
            response.Dispose();
        }
 private void MapCollection(workout_collection source, ref WorkoutCollection des)
 {
     des.workout_id            = source.workout_id;
     des.workout_title         = source.workout_title;
     des.workout_note          = source.workout_note;
     des.category_id           = source.category_id;
     des.user_id               = source.user_id;
     des.calories_burn_per_min = source.calories_burn_per_min;
     des.workout_category      = Helper.CastObject <WorkoutCategory>(source.workout_category);
     des.workout_active        = Helper.CastObject <IList <WorkoutActive> >(source.workout_active);
     des.user = Helper.CastObject <User>(source.user);
 }
 public HttpResponseMessage DeleteWorkout(WorkoutCollection wc)
 {
     try
     {
         var input = Helper.CastObject <workout_collection>(wc);
         _workoutService.DeleteWorkout(input);
     }
     catch (Exception ex)
     {
         _logManager.WriteLog(ex);
     }
     return(ToJson(wc));
 }
        public HttpResponseMessage GetActiveWorkout(WorkoutCollection wc)
        {
            WorkoutActive result = new WorkoutActive();

            try
            {
                var res = _workoutService.GetActiveWorkouts(wc.workout_id);
                MapActive(res.FirstOrDefault(), ref result);
            }
            catch (Exception ex)
            {
                _logManager.WriteLog(ex);
            }
            return(ToJson(result));
        }
        public HttpResponseMessage GetWorkout(WorkoutCollection wc)
        {
            WorkoutCollection result = new WorkoutCollection();

            try
            {
                var res = _workoutService.GetWorkout(wc.workout_id);
                MapCollection(res, ref result);
            }
            catch (Exception ex)
            {
                _logManager.WriteLog(ex);
            }
            return(ToJson(result));
        }
        public HttpResponseMessage AddWorkout(WorkoutCollection wc)
        {
            WorkoutCollection result = new WorkoutCollection();

            try
            {
                var input = Helper.CastObject <workout_collection>(wc);
                var res   = _workoutService.Create(input);
                MapCollection(res, ref result);
            }
            catch (Exception ex)
            {
                _logManager.WriteLog(ex);
            }
            return(ToJson(result));
        }
        public void N_WorkoutAddPerformanceTest()
        {
            int               noOfCalls    = 500;
            double            expectedTime = 1;
            WorkoutCollection result;
            var               cat        = categoryService.GetWorkoutCategories().FirstOrDefault();
            var               user       = _userService.GetUsers().FirstOrDefault();
            var               catCon     = Helper.CastObject <WorkoutCategory>(cat);
            var               userCon    = Helper.CastObject <User>(user);
            var               controller = new WorkoutTrackerController(workoutService, categoryService, _logManager);

            Stopwatch stopwatch = new Stopwatch();

            stopwatch.Start();
            for (int i = 0; i < noOfCalls; i++)
            {
                WorkoutCollection wc = new WorkoutCollection()
                {
                    workout_id            = 0,
                    workout_title         = "TestApiWorkout_LoadTest" + i.ToString(),
                    workout_note          = "MockUser",
                    workout_category      = catCon,
                    workout_active        = null,
                    calories_burn_per_min = i * 10,
                    category_id           = catCon.category_id,
                    user    = userCon,
                    user_id = userCon.user_id
                };
                controller.Request       = new HttpRequestMessage();
                controller.Configuration = new HttpConfiguration();
                controller.Request.Headers.Add("Accept", "application/json");
                var response = controller.AddWorkout(wc);
                result = response.Content.ReadAsAsync <WorkoutCollection>().Result;
                response.Dispose();
            }
            stopwatch.Stop();
            var res = stopwatch.Elapsed.TotalMinutes <= expectedTime;

            Assert.IsTrue(res);
        }
Beispiel #9
0
        public IHttpActionResult Get()
        {
            var ObjRepository = new WorkoutCollection();

            return(Ok(ObjRepository.ListAllCollection()));
        }