def test_getCudaInfo_success_on_gpu_instance(self, *mocks):
        """
        getCudaInfo returns the correct information when called on a GPU instance
        """
        class MockCudaProperties:
            total_memory = 12 * 1024 ** 3

        with patch('marqo.core.monitoring.monitoring.torch.cuda.get_device_properties',
                   return_value=MockCudaProperties()):
            response = self.monitoring.get_cuda_info()
            self.assertEqual(response.dict(), {
                "cuda_devices": [
                    {
                        "device_id": 0,
                        "device_name": "Tesla T4",
                        "memory_used": "3.0 GiB",
                        "total_memory": "12.0 GiB",
                        "utilization": "58.0 %",
                        "memory_used_percent": "25.0 %"
                    }
                ]
            })

        getCudaInfo returns the correct information when called on a GPU instance
        
tests/integ_tests/core/monitoring/test_monitoring.py