Пример #1
0
 def test_find_by_workOutId_and_order(self):
     user = User(username = '******', password = "******", email = '*****@*****.**')
     db.session.add(user)
     db.session.commit()
     
     exerciseTag1 = ExerciseTag(name="running", unit="minutes")
     workout = Workout(user.id, user.id, name="Get Fit Workout", 
                       description="This is the best way to shed those pounds!", level="Hard", 
                       is_public=True, is_likeable=True, is_commentable=True)
     db.session.add(exerciseTag1)
     db.session.add(workout)
     db.session.commit()
     
     exercise1 = Exercise(workOutId=workout.id, eTagId=exerciseTag1.id, order=1, amount=5, additionalInfo="No Additional Info")
     exercise2 = Exercise(workOutId=workout.id, eTagId=exerciseTag1.id, order=2, amount=10, additionalInfo="No Additional Info")
     db.session.add(exercise1)
     db.session.add(exercise2)
     db.session.commit()
     
     exerciseFound = Exercise.find_by_workOutId_and_order(workout.id, 1)
     assert exerciseFound.amount == 5
     exerciseFound = Exercise.find_by_workOutId_and_order(workout.id, 2)
     assert exerciseFound.amount == 10
Пример #2
0
def edit_workout():
    exercises = request.data
    
    if(len(exercises) == 0):
        result = {"Result":"Failure"}
        return jsonify(result)
    
    jsonExercises = json.loads(exercises)
    
    if jsonExercises == None:
        result = {"Result":"Failure"}
        return jsonify(result)
    else:
        if len(jsonExercises) == 0:
            result = {"Result":"Failure"}
            return jsonify(result)
        else:
            name = jsonExercises['name']
            description = jsonExercises['description']
            level = jsonExercises['level']

            isPublic = jsonExercises['isPublic']
            if isPublic == 'true':
                isPublic = True
            else:
                isPublic = False
            isLikeable = jsonExercises['isLikeable']
            if isLikeable == 'true':
                isLikeable = True
            else:
                isLikeable = False
            isCommentable = jsonExercises['isCommentable']
            if isCommentable == 'true':
                isCommentable = True
            else:
                isCommentable = False
            
            currentWorkout = Workout.find_single_workout_by_name_(name)
            currentWorkout.level = level
            currentWorkout.is_public = isPublic
            currentWorkout.is_likeable = isLikeable
            currentWorkout.is_commentable = isCommentable
            currentWorkout.description = description
            Workout.update_workout_info(currentWorkout)
            
            for exercise in jsonExercises['exercises']:
                order = exercise['order']
                type = exercise['type']
                unit = exercise['unit']
                exerciseTag = ExerciseTag.find_by_name(type)
                if exerciseTag is None:
                    exerciseTag = ExerciseTag(type, unit)
                    ExerciseTag.save_to_db(exerciseTag)
                amount = exercise['amount']
                additionalInfo = exercise['additionalInfo']
                
                currentExercise = Exercise.find_by_workOutId_and_order(currentWorkout.id, order)
                if currentExercise is None:
                    newExercise = Exercise(currentWorkout.id, exerciseTag.id, order, amount, additionalInfo)
                    Exercise.save_to_db(newExercise)
                else:
                    currentExercise.eTagId = exerciseTag.id
                    currentExercise.amount = amount
                    currentExercise.additionalInfo = additionalInfo
                    Exercise.update_exercise_info(currentExercise)
            
            result = {"Result":"Success"}
            return jsonify(result)