Coverage for application/image_reference/routes.py: 44%

16 statements  

« prev     ^ index     » next       coverage.py v7.9.1, created at 2025-06-23 02:22 +0000

1import requests 

2from flask import current_app, flash, render_template, redirect, request 

3 

4from . import image_reference_bp 

5 

6 

7@image_reference_bp.get('') 

8def image_reference_page(): 

9 res = requests.get(f'{current_app.config.get("DARC_REVIEW_URL")}/image-reference') 

10 if res.status_code != 200: 

11 flash('Error retrieving image reference data', 'error') 

12 redirect('/') 

13 return render_template('image_reference/image-reference.html', image_references=res.text) 

14 

15 

16@image_reference_bp.post('') 

17def add_image_reference(): 

18 if not request.form.get('scientific_name'): 

19 res = requests.post( 

20 url=f'{current_app.config.get("DARC_REVIEW_URL")}/image-reference', 

21 headers=current_app.config.get('DARC_REVIEW_HEADERS'), 

22 data={'tator_localization_id': request.form.get('localizationId')}, 

23 ) 

24 else: 

25 res = requests.post( 

26 url=f'{current_app.config.get("DARC_REVIEW_URL")}/image-reference', 

27 headers=current_app.config.get('DARC_REVIEW_HEADERS'), 

28 json={ 

29 'scientific_name': request.form.get('scientific_name'), 

30 'morphospecies': request.form.get('morphospecies'), 

31 'tentative_id': request.form.get('tentative_id'), 

32 'deployment_name': request.form.get('deployment_name'), 

33 'section_id': request.form.get('section_id'), 

34 'tator_elemental_id': request.form.get('tator_elemental_id'), 

35 'localization_media_id': request.form.get('localization_media_id'), 

36 'localization_frame': request.form.get('localization_frame'), 

37 'localization_type': request.form.get('localization_type'), 

38 'normalized_top_left_x_y': (request.form.get('x'), request.form.get('y')), 

39 'normalized_dimensions': (request.form.get('width'), request.form.get('height')), 

40 'depth_m': request.form.get('depth_m'), 

41 'temp_c': request.form.get('temp_c'), 

42 'salinity_m_l': request.form.get('salinity_m_l'), 

43 }, 

44 ) 

45 return res.json(), res.status_code