@@ -533,142 +533,3 @@ def test_get_items_from_patient_id_no_records(self):
533533
534534 # Assert
535535 self .assertEqual (result , [])
536-
537-
538- class TestIedsCheckExists (TestIedsDbOperations ):
539-
540- def setUp (self ):
541- """Set up test fixtures"""
542- super ().setUp ()
543-
544- # Mock get_items_from_patient_id instead of table.query
545- self .get_items_from_patient_id_patcher = patch ('ieds_db_operations.get_items_from_patient_id' )
546- self .mock_get_items_from_patient_id = self .get_items_from_patient_id_patcher .start ()
547-
548- def tearDown (self ):
549- """Clean up patches"""
550- super ().tearDown ()
551-
552- def test_ieds_check_exist_record_exists (self ):
553- """Test when record exists in IEDS table"""
554- # Arrange
555- patient_id = "test-patient-123"
556- mock_items = [{'PK' : 'Patient#test-patient-123' , 'PatientPK' : 'Patient#test-patient-123' }]
557- self .mock_get_items_from_patient_id .return_value = mock_items
558-
559- # Act
560- result = ieds_db_operations .ieds_check_exist (patient_id )
561-
562- # Assert
563- self .assertTrue (result )
564-
565- # Verify get_items_from_patient_id was called with correct parameters
566- self .mock_get_items_from_patient_id .assert_called_once_with (patient_id , 1 )
567-
568- def test_ieds_check_exist_record_not_exists (self ):
569- """Test when no record exists in IEDS table"""
570- # Arrange
571- patient_id = "test-patient-456"
572- self .mock_get_items_from_patient_id .return_value = []
573-
574- # Act
575- result = ieds_db_operations .ieds_check_exist (patient_id )
576-
577- # Assert
578- self .assertFalse (result )
579-
580- # Verify get_items_from_patient_id was called
581- self .mock_get_items_from_patient_id .assert_called_once_with (patient_id , 1 )
582-
583- def test_ieds_check_exist_empty_id (self ):
584- """Test with empty patient ID"""
585- # Arrange
586- patient_id = ""
587- self .mock_get_items_from_patient_id .return_value = []
588-
589- # Act
590- result = ieds_db_operations .ieds_check_exist (patient_id )
591-
592- # Assert
593- self .assertFalse (result )
594-
595- # Verify get_items_from_patient_id was called with empty ID
596- self .mock_get_items_from_patient_id .assert_called_once_with (patient_id , 1 )
597-
598- def test_ieds_check_exist_none_id (self ):
599- """Test with None patient ID"""
600- # Arrange
601- patient_id = None
602- self .mock_get_items_from_patient_id .return_value = []
603-
604- # Act
605- result = ieds_db_operations .ieds_check_exist (patient_id )
606-
607- # Assert
608- self .assertFalse (result )
609-
610- # Verify get_items_from_patient_id was called with None ID
611- self .mock_get_items_from_patient_id .assert_called_once_with (patient_id , 1 )
612-
613- def test_ieds_check_exist_query_exception (self ):
614- """Test exception handling during get_items_from_patient_id"""
615- # Arrange
616- patient_id = "test-patient-error"
617- test_exception = Exception ("DynamoDB query failed" )
618- self .mock_get_items_from_patient_id .side_effect = test_exception
619-
620- # Act & Assert
621- with self .assertRaises (Exception ) as context :
622- ieds_db_operations .ieds_check_exist (patient_id )
623-
624- self .assertEqual (str (context .exception ), "DynamoDB query failed" )
625-
626- # Verify get_items_from_patient_id was attempted
627- self .mock_get_items_from_patient_id .assert_called_once_with (patient_id , 1 )
628-
629- def test_ieds_check_exist_multiple_items_found (self ):
630- """Test when multiple items are found (should still return True)"""
631- # Arrange
632- patient_id = "test-patient-multiple"
633- mock_items = [
634- {'PK' : 'Patient#test-patient-multiple' , 'PatientPK' : 'Patient#test-patient-multiple' },
635- {'PK' : 'Patient#test-patient-multiple#record1' , 'PatientPK' : 'Patient#test-patient-multiple' }
636- ]
637- self .mock_get_items_from_patient_id .return_value = mock_items
638-
639- # Act
640- result = ieds_db_operations .ieds_check_exist (patient_id )
641-
642- # Assert
643- self .assertTrue (result )
644-
645- # Verify get_items_from_patient_id was called with limit=1
646- self .mock_get_items_from_patient_id .assert_called_once_with (patient_id , 1 )
647-
648- def test_ieds_check_exist_single_item_found (self ):
649- """Test when exactly one item is found"""
650- # Arrange
651- patient_id = "test-patient-single"
652- mock_items = [{'PK' : 'Patient#test-patient-single' , 'PatientPK' : 'Patient#test-patient-single' }]
653- self .mock_get_items_from_patient_id .return_value = mock_items
654-
655- # Act
656- result = ieds_db_operations .ieds_check_exist (patient_id )
657-
658- # Assert
659- self .assertTrue (result )
660-
661- # Verify get_items_from_patient_id was called
662- self .mock_get_items_from_patient_id .assert_called_once_with (patient_id , 1 )
663-
664- def test_ieds_check_exist_limit_parameter (self ):
665- """Test that the function passes limit=1 to get_items_from_patient_id"""
666- # Arrange
667- patient_id = "test-patient-limit"
668- self .mock_get_items_from_patient_id .return_value = []
669-
670- # Act
671- ieds_db_operations .ieds_check_exist (patient_id )
672-
673- # Assert - Verify the limit parameter is correctly passed
674- self .mock_get_items_from_patient_id .assert_called_once_with (patient_id , 1 )
0 commit comments