Coverage for rest_api/data_entry/property_job.py: 16%

25 statements  

« prev     ^ index     » next       coverage.py v7.15.4, created at 2026-08-10 03:22 +0000

1from rest_api.models import Property 

2from rest_api.serializers import PropertySerializer 

3 

4 

5def find_or_create_property( 

6 name, datatype="value_varchar", querytype=None, description=None, default=None 

7): 

8 try: 

9 obj = Property.objects.get(name=name) 

10 created = False 

11 except Property.DoesNotExist: 

12 

13 obj = PropertySerializer( 

14 data={ 

15 "name": name, 

16 "datatype": datatype, 

17 "naquerytypeme": querytype, 

18 "description": description, 

19 "default": default, 

20 } 

21 ) 

22 if obj.is_valid(): 

23 obj.save() 

24 # obj = Property.objects.create(name=name, datatype=datatype, querytype=querytype, description=description) 

25 created = True 

26 else: 

27 obj = None 

28 created = False 

29 except Exception as e: 

30 print(f"Error occurred: {e}") 

31 obj = None 

32 created = False 

33 return obj, created 

34 

35 

36def delete_property(name): 

37 try: 

38 count, _ = Property.objects.filter(name=name).delete() 

39 return count 

40 except Exception as e: 

41 print(f"Error occurred: {e}") 

42 return False