diff --git a/main.py b/main.py index dfeb247..b5429aa 100644 --- a/main.py +++ b/main.py @@ -30,7 +30,6 @@ class DoubleList(Resource): def put(self): return ms.double_list(my_list) - @api.route('/answer') @api.doc(description='The Answer to the Ultimate Question of Life, the Universe, and Everything.') class TheAnswer(Resource): @@ -66,6 +65,12 @@ def put(self, integer, position): my_list.insert(position, integer) return my_list +@math_ns.route('/multiply/') +@math_ns.doc(params={'integer': 'Integer value.'}, description='Multiply list by an integer.') +class MultiplyList(Resource): + def put(self, integer): + return ms.multiply_list(my_list, integer) + port = os.getenv('PORT', '5000') if __name__ == "__main__": - app.run(host='0.0.0.0', port=int(port)) + app.run(host='0.0.0.0', port=int(port)) diff --git a/src/math_services.py b/src/math_services.py index b0dbb6d..03030c3 100644 --- a/src/math_services.py +++ b/src/math_services.py @@ -1,19 +1,22 @@ -def double_list(integer_list): +def multiply_list(integer_list, integer_value): """ - Multiplies every integer in the list by 2. + Multiply every integer in the list by an integer value. Receives -------- integer_list : list - List of integer values. + List of integers. + + integer_value : integer + Integer value by which every element should be multiplied. Returns ------- - doubled_list : list - List of integer values multiplied by 2. + multiplied_list : list + List of integers multiplied by input value. """ - doubled_list = [2*x for x in integer_list] + multiplied_list = [integer_value*x for x in integer_list] integer_list.clear() - integer_list.extend(doubled_list) - return integer_list + integer_list.extend(multiplied_list) + return integer_list \ No newline at end of file diff --git a/test/math_test.py b/test/math_test.py index 0808ba5..e845f6b 100644 --- a/test/math_test.py +++ b/test/math_test.py @@ -7,3 +7,15 @@ def test_double_list(): assert ms.double_list([2]) == [4] assert ms.double_list([1, 2]) == [2, 4] assert ms.double_list([1, 2, 3]) == [2, 4, 6] + +def test_multiply_list(): + assert ms.multiply_list([], 1) == [] + assert ms.multiply_list([1], 0) == [0] + assert ms.multiply_list([1], 1) == [1] + assert ms.multiply_list([1], 2) == [2] + assert ms.multiply_list([1, 2], 0) == [0, 0] + assert ms.multiply_list([1, 2], 1) == [1, 2] + assert ms.multiply_list([1, 2], 2) == [2, 4] + assert ms.multiply_list([1, 2, 3], 0) == [0, 0, 0] + assert ms.multiply_list([1, 2, 3], 1) == [1, 2, 3] + assert ms.multiply_list([1, 2, 3], 2) == [2, 4, 6] \ No newline at end of file