U
    h)                  
   @   s  d dl mZmZ d dlmZ d dlmZ d dlZd dlm	Z	 e	  e
de Zede  eeZedded	Zze Zed
 eedZdd eD Zede  eed Zede  eed Zede  ed edZeeZed eD ],Zeded  ded   ded   qW 5 Q R X W nF ek
r Z z&ede  edeej  W 5 dZ[X Y nX dS )    )create_enginetext)sessionmaker)ConfigN)load_dotenvDATABASE_URLzDatabase URL: F)Z
autocommitZ	autoflushZbindu#   ✅ Database connection successful!z
            SELECT table_name 
            FROM information_schema.tables 
            WHERE table_schema = 'public' 
            AND table_name IN ('developers', 'activity_records')
        c                 C   s   g | ]}|d  qS )r    ).0rowr   r   ./test_db_connection.py
<listcomp>   s     r   z
Existing tables: zSELECT COUNT(*) FROM developersz
Developers in database: z%SELECT COUNT(*) FROM activity_recordszActivity records in database: z
 Testing join query...aR  
            SELECT 
                d.developer_id,
                d.name,
                COUNT(ar.id) as activity_count
            FROM developers d
            LEFT JOIN activity_records ar ON d.developer_id = ar.developer_id
            WHERE d.active = true
            GROUP BY d.developer_id, d.name
            LIMIT 5
        zJoin query successful!z  Developer:    z (ID: z) - Activities:    u   ❌ Error: zError type: )Z
sqlalchemyr   r   Zsqlalchemy.ormr   Zconfigr   osZdotenvr   getenvZget_database_urlr   printZengineZSessionLocalZconnectZconnZexecuteresultZtablesZscalarZ	dev_countZ	act_countZ
test_queryr
   	Exceptionetype__name__r   r   r   r   <module>   s8   

8