Skip to content
This repository has been archived by the owner on Jul 22, 2024. It is now read-only.

Create /math/power resource #21

Open
neumannrf opened this issue Mar 15, 2019 · 0 comments
Open

Create /math/power resource #21

neumannrf opened this issue Mar 15, 2019 · 0 comments
Labels
enhancement New feature or request

Comments

@neumannrf
Copy link
Collaborator

As a user
I need to power each element in the list by an integer value
So that so that calculations can be automated.

Assumptions:

  • There should be a main.py file with the following content.
@math_ns.route('/power/<int:integer>')
@math_ns.doc(params={'integer': 'Integer value.'}, description='Power list to an integer.')
class PowerList(Resource):
    def put(self, integer):
        return ms.power_list(my_list, integer)
  • The main.py file should include an external file above the from src import basic_services as bs line.
from src import math_services as ms
  • There should be a src/math_services.py file with the following content
def power_list(integer_list, integer_value):
    """
    Power every integer in the list to an integer value.

    Receives
    --------
    integer_list : list
        List of integers.

    integer_value : integer
        Integer value to which every element should be powered.

    Returns
    -------
    powered_list : list
        List of integers powered to input value.
    """

    powered_list = [x**integer_value for x in integer_list]
    integer_list.clear()
    integer_list.extend(powered_list)
    return integer_list
  • There should be a test/math_test.py file with the following content.
from src import math_services as ms


def test_power_list():
    assert ms.power_list([], 1) == []
    assert ms.power_list([1], 0) == [1]
    assert ms.power_list([1], 1) == [1]
    assert ms.power_list([1], 2) == [1]
    assert ms.power_list([1], 3) == [1]
    assert ms.power_list([1, 2], 0) == [1, 1]
    assert ms.power_list([1, 2], 1) == [1, 2]
    assert ms.power_list([1, 2], 2) == [1, 4]
    assert ms.power_list([1, 2], 3) == [1, 8]
    assert ms.power_list([1, 2, 3], 0) == [1, 1, 1]
    assert ms.power_list([1, 2, 3], 1) == [1, 2, 3]
    assert ms.power_list([1, 2, 3], 2) == [1, 4, 9]
    assert ms.power_list([1, 2, 3], 3) == [1, 8, 27]

Acceptance criteria:

Given that the application stores a list of integers
When this resource is called
Then each number in the list is powered to an integer value.
@neumannrf neumannrf added the enhancement New feature or request label Mar 15, 2019
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

1 participant