Ejemplo n.º 1
0
def test_route():
    """ Testing route method in RegisterUserRouter """

    register_pet_use_case = RegisterPetSpy(PetRepositorySpy(), UserRepositorySpy())
    register_pet_router = RegisterPetController(register_pet_use_case)
    attributes = {
        "name": faker.word(),
        "specie": "Dog",
        "age": faker.random_number(),
        "user_information": {
            "user_id": faker.random_number(),
            "user_name": faker.word(),
        },
    }

    response = register_pet_router.route(HttpRequest(body=attributes))

    # Testing input
    assert register_pet_use_case.registry_param["name"] == attributes["name"]
    assert register_pet_use_case.registry_param["specie"] == attributes["specie"]
    assert register_pet_use_case.registry_param["age"] == attributes["age"]
    assert (
        register_pet_use_case.registry_param["user_information"]
        == attributes["user_information"]
    )

    # Testing output
    assert response.status_code == 200
    assert "error" not in response.body
Ejemplo n.º 2
0
def test_registry_fail_attributes():
    """ Testing registry fail method in RegisterPet by attributes """

    pet_repo = PetRepositorySpy()
    find_user = FindUserSpy(UserRepositorySpy())
    registry_pet = RegisterPet(pet_repo, find_user)

    attributes = {
        "name": faker.name(),
        "specie": faker.random_number(),
        "age": faker.name(),
        "user_information": {
            "user_id": faker.random_number(digits=1),
            "user_name": faker.name(),
        },
    }

    response = registry_pet.registry(
        name=attributes["name"],
        specie=attributes["specie"],
        age=attributes["age"],
        user_information=attributes["user_information"],
    )

    # Testing Inputs
    assert pet_repo.insert_pet_param == {}

    # Testing Outputs
    assert response["Success"] is False
    assert response["Data"] is None
Ejemplo n.º 3
0
def test_route_error_no_body():
    """ Testing route method in RegisterUserRouter """

    register_pet_use_case = RegisterPetSpy(PetRepositorySpy(), UserRepositorySpy())
    register_pet_router = RegisterPetController(register_pet_use_case)

    response = register_pet_router.route(HttpRequest())

    # Testing input
    assert register_pet_use_case.registry_param == {}

    # Testing output
    assert response.status_code == 400
    assert "error" in response.body
Ejemplo n.º 4
0
def test_by_pet_id():
    """ Testing pet_id method in FindPet """

    pet_repo = PetRepositorySpy()
    find_pet = FindPet(pet_repo)

    attribute = {"pet_id": faker.random_number(digits=2)}
    response = find_pet.by_pet_id(pet_id=attribute["pet_id"])

    # Testing Input
    assert pet_repo.select_pet_param["pet_id"] == attribute["pet_id"]

    # Testing Outputs
    assert response["Success"] is True
    assert response["Data"]
Ejemplo n.º 5
0
def test_fail_by_user_id():
    """ Testing by_id fail method in FindPet """

    pet_repo = PetRepositorySpy()
    find_pet = FindPet(pet_repo)

    attribute = {"user_id": faker.word()}
    response = find_pet.by_user_id(user_id=attribute["user_id"])

    # Testing Input
    assert pet_repo.select_pet_param == {}

    # Testing Outputs
    assert response["Success"] is False
    assert response["Data"] is None
Ejemplo n.º 6
0
def test_route_error_wrong_user_information():
    """ Testing route method in RegisterUserRouter """

    register_pet_use_case = RegisterPetSpy(PetRepositorySpy(), UserRepositorySpy())
    register_pet_router = RegisterPetController(register_pet_use_case)

    attributes = {"name": faker.word(), "specie": "Dog", "user_information": {}}

    response = register_pet_router.route(HttpRequest(body=attributes))

    # Testing input
    assert register_pet_use_case.registry_param == {}

    # Testing output
    assert response.status_code == 422
    assert "error" in response.body
Ejemplo n.º 7
0
def test_route_by_pet_id():
    """ Testing route method in FindPetRouter """

    find_pet_use_case = FindPetSpy(PetRepositorySpy())
    find_pet_router = FindPetRouter(find_pet_use_case)
    attributes = {"pet_id": faker.random_number(digits=2)}

    http_request = HttpRequest(query=attributes)

    http_response = find_pet_router.route(http_request)

    # Testing input
    assert find_pet_use_case.by_pet_id_param["pet_id"] == attributes["pet_id"]

    # Testing output
    assert http_response.status_code == 200
    assert "error" not in http_response.body
Ejemplo n.º 8
0
def test_route_error_no_query():
    """ Testing route method in FindPetRouter """

    find_pet_use_case = FindPetSpy(PetRepositorySpy())
    find_pet_router = FindPetRouter(find_pet_use_case)

    http_request = HttpRequest()

    http_response = find_pet_router.route(http_request)

    # Testing input
    assert find_pet_use_case.by_pet_id_param == {}
    assert find_pet_use_case.by_user_id_param == {}
    assert find_pet_use_case.by_pet_id_and_user_id_param == {}

    # Testing output
    assert http_response.status_code == 400
    assert "error" in http_response.body
Ejemplo n.º 9
0
def test_route_error_wrong_query():
    """ Testing route method in FindPetRouter """

    find_pet_use_case = FindPetSpy(PetRepositorySpy())
    find_pet_router = FindPetRouter(find_pet_use_case)

    http_request = HttpRequest(
        query={"something": faker.random_number(digits=2)})

    http_response = find_pet_router.route(http_request)

    # Testing input
    assert find_pet_use_case.by_pet_id_param == {}
    assert find_pet_use_case.by_user_id_param == {}
    assert find_pet_use_case.by_pet_id_and_user_id_param == {}

    # Testing output
    assert http_response.status_code == 422
    assert "error" in http_response.body
Ejemplo n.º 10
0
def test_registry():
    """ Testing registry method in RegisterPet """

    pet_repo = PetRepositorySpy()
    find_user = FindUserSpy(UserRepositorySpy())
    registry_pet = RegisterPet(pet_repo, find_user)

    attributes = {
        "name": faker.name(),
        "specie": faker.name(),
        "age": faker.random_number(digits=1),
        "user_information": {
            "user_id": faker.random_number(digits=1),
            "user_name": faker.name(),
        },
    }

    response = registry_pet.registry(
        name=attributes["name"],
        specie=attributes["specie"],
        age=attributes["age"],
        user_information=attributes["user_information"],
    )

    # Testing Inputs
    assert pet_repo.insert_pet_param["name"] == attributes["name"]
    assert pet_repo.insert_pet_param["specie"] == attributes["specie"]
    assert pet_repo.insert_pet_param["age"] == attributes["age"]
    assert (pet_repo.insert_pet_param["user_id"] ==
            attributes["user_information"]["user_id"])

    # Testing FindUser Inputs
    assert (find_user.by_id_and_user_param["user_id"] ==
            attributes["user_information"]["user_id"])
    assert (find_user.by_id_and_user_param["name"] ==
            attributes["user_information"]["user_name"])

    # Testing Outputs
    assert response["Success"] is True
    assert response["Data"]