UPDATE
This commit is contained in:
@@ -4,10 +4,10 @@ from django.conf import settings
|
||||
from django.db import transaction
|
||||
|
||||
from crop_zoning.services import (
|
||||
create_zones_and_dispatch,
|
||||
get_default_area_feature,
|
||||
get_initial_zones_payload,
|
||||
normalize_area_feature,
|
||||
ensure_latest_area_ready_for_processing,
|
||||
)
|
||||
from external_api_adapter import request as external_api_request
|
||||
from external_api_adapter.exceptions import ExternalAPIRequestError
|
||||
@@ -22,7 +22,11 @@ class FarmDataSyncError(Exception):
|
||||
|
||||
|
||||
def dispatch_farm_zoning(area_feature, farm):
|
||||
crop_area, _zones = create_zones_and_dispatch(normalize_area_feature(area_feature), farm=farm)
|
||||
crop_area = ensure_latest_area_ready_for_processing(
|
||||
farm_uuid=farm.farm_uuid,
|
||||
area_feature=normalize_area_feature(area_feature),
|
||||
owner=farm.owner,
|
||||
)
|
||||
return crop_area, get_initial_zones_payload(crop_area)
|
||||
|
||||
|
||||
|
||||
+3
-1
@@ -97,12 +97,14 @@ class FarmListCreateViewTests(TestCase):
|
||||
self.assertEqual(len(response.data["data"]["sensors"]), 1)
|
||||
self.assertEqual(response.data["data"]["sensors"][0]["sensor_catalog_uuid"], str(self.weather_station.uuid))
|
||||
self.assertEqual(response.data["data"]["sensors"][0]["physical_device_uuid"], physical_device_uuid)
|
||||
self.assertGreater(response.data["data"]["zoning"]["zone_count"], 1)
|
||||
self.assertEqual(response.data["data"]["zoning"]["zone_count"], 0)
|
||||
self.assertEqual(response.data["data"]["zoning"]["zones"], [])
|
||||
self.assertEqual(
|
||||
response.data["data"]["zoning"]["zone_count"],
|
||||
CropArea.objects.get().zone_count,
|
||||
)
|
||||
self.assertEqual(CropArea.objects.count(), 1)
|
||||
self.assertEqual(CropArea.objects.get().geometry, AREA_GEOJSON)
|
||||
mock_external_api_request.assert_called_once_with(
|
||||
"ai",
|
||||
"/api/farm-data/",
|
||||
|
||||
Reference in New Issue
Block a user