예제 #1
0
    def test_get_an_house(self):
        response = self.client.get('/house/1/')
        stream = BytesIO(response.content)
        data = JSONParser().parse(stream)
        house = HouseSerializer(data=data, many=True)

        if house.is_valid():
            assert 1 == len(house.validated_data)
예제 #2
0
def predict(request):
    """
    Renvoie une house avec la MEDV completee
    (Attend une MEDV innexistante)
    """
    if request.method == 'GET':
        return JsonResponse(serializer.errors, status=400)

    elif request.method == 'POST':
        data        = JSONParser().parse(request)
        serializer  = HouseSerializer(data=data)
        if serializer.is_valid():
            data["MEDV"]        = predict_medv(data)
            serializer          = HouseSerializer(data=data)
            if serializer.is_valid():
                serializer.save()
                return JsonResponse(serializer.data  , status=201)
        return     JsonResponse(serializer.errors, status=400)
예제 #3
0
    def test_houses_url_return_10_houses(self):
        request = HttpRequest()
        request.method = "GET"
        response = house_list(request)
        stream = BytesIO(response.content)
        data = JSONParser().parse(stream)
        houses = HouseSerializer(data=data, many=True)

        if houses.is_valid():
            assert 10 == len(houses.validated_data)
예제 #4
0
def house_list(request):
    if request.method == 'GET':
        houses      = House.objects.all()
        serializer  = HouseSerializer(houses, many=True)
        return JsonResponse(serializer.data, safe=False)

    elif request.method == 'POST':
        data        = JSONParser().parse(request)
        serializer  = HouseSerializer(data=data)
        if serializer.is_valid():
            serializer.save()
            return JsonResponse(serializer.data  , status=201)
        return     JsonResponse(serializer.errors, status=400)
예제 #5
0
def house_detail(request, pk):
    print("house_detail")
    try:
        house = House.objects.get(pk=pk)
    except House.DoesNotExist:
        return HttpResponse(status=404)
    if request.method == 'GET':
        serializer = HouseSerializer(house)
        return JsonResponse(serializer.data)
    elif request.method == 'PUT':
        data       = JSONParser().parse(request)
        serializer = HouseSerializer(house, data=data)
        if serializer.is_valid():
            serializer.save()
            return JsonResponse(serializer.data)
        return JsonResponse(serializer.errors, status=400)
    elif request.method == 'DELETE':
        house.delete()
        return HttpResponse(status=204)
    return HttpResponse(status=204)