DrishtiSharma commited on
Commit
e45c62b
·
verified ·
1 Parent(s): 4071419

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +16 -4
app.py CHANGED
@@ -359,16 +359,28 @@ def generate_pdf_report(result, charts=None, table_data=None, metadata=None, key
359
  def validate_analyst_output(analyst_output):
360
  if not analyst_output:
361
  st.warning("No data available for analysis.")
 
362
  return None
363
- if not isinstance(analyst_output, list) or not all(isinstance(item, dict) for item in analyst_output):
 
364
  st.warning("Analyst output must be a list of dictionaries.")
 
365
  return None
 
366
  required_keys = {'Category', 'Values'}
367
- if not all(required_keys.issubset(item.keys()) for item in analyst_output):
368
- st.warning(f"Each dictionary must contain keys: {required_keys}")
369
- return None
 
 
 
 
 
 
 
370
  return analyst_output
371
 
 
372
  # Visualization and Table Display
373
  def create_visualizations(analyst_output):
374
  chart_paths = []
 
359
  def validate_analyst_output(analyst_output):
360
  if not analyst_output:
361
  st.warning("No data available for analysis.")
362
+ logging.warning("Validation Failed: Analyst output is empty.")
363
  return None
364
+
365
+ if not isinstance(analyst_output, list):
366
  st.warning("Analyst output must be a list of dictionaries.")
367
+ logging.warning(f"Validation Failed: Analyst output is not a list. Type: {type(analyst_output)}")
368
  return None
369
+
370
  required_keys = {'Category', 'Values'}
371
+ for idx, item in enumerate(analyst_output):
372
+ if not isinstance(item, dict):
373
+ st.warning(f"Item at index {idx} is not a dictionary.")
374
+ logging.warning(f"Validation Failed: Item {idx} is not a dictionary. Item: {item}")
375
+ return None
376
+ if not required_keys.issubset(item.keys()):
377
+ st.warning(f"Item at index {idx} missing keys: {required_keys - set(item.keys())}")
378
+ logging.warning(f"Validation Failed: Item {idx} missing keys: {required_keys - set(item.keys())}")
379
+ return None
380
+
381
  return analyst_output
382
 
383
+
384
  # Visualization and Table Display
385
  def create_visualizations(analyst_output):
386
  chart_paths = []