• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

winter-telescope / winterdrp / 4663749128

pending completion
4663749128

Pull #325

github

GitHub
Merge df4a72871 into a14bcf4d7
Pull Request #325: Sqlalchemy + pydantic for summer database

776 of 776 new or added lines in 20 files covered. (100.0%)

6119 of 7570 relevant lines covered (80.83%)

1.62 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

50.0
/winterdrp/utils/sql.py
1
"""
2
Util functions for database interactions
3
"""
4
from sqlalchemy import DDL, Engine, create_engine
2✔
5

6
from winterdrp.processors.database.postgres import (
2✔
7
    ADMIN_PASSWORD,
8
    ADMIN_USER,
9
    DB_PASSWORD,
10
    DB_USER,
11
)
12

13

14
def get_engine(
2✔
15
    db_user: str = DB_USER,
16
    db_password: str = DB_PASSWORD,
17
    db_host: str = "localhost",
18
    db_name: str = "summertest",
19
) -> Engine:
20
    """
21
    Function to create a postgres engine
22

23
    :param db_user: User for db
24
    :param db_password: password for db
25
    :param db_host: host of db
26
    :param db_name: name of db
27
    :return: sqlalchemy engine
28
    """
29

30
    return create_engine(
2✔
31
        f"postgresql+psycopg://{db_user}:{db_password}" f"@/{db_name}",
32
        future=True,
33
    )
34

35

36
def create_q3c_extension(__tablename__, ra_column_name, dec_column_name, conn=None):
2✔
37
    print("Executing DDL")
×
38

39
    trig_ddl = DDL(
×
40
        "CREATE EXTENSION IF NOT EXISTS q3c;"
41
        f"CREATE INDEX ON {__tablename__} "
42
        f"(q3c_ang2ipix({ra_column_name}, {dec_column_name}));"
43
        f"CLUSTER {__tablename__} USING {__tablename__}_q3c_ang2ipix_idx;"
44
        f"ANALYZE {__tablename__};"
45
    )
46

47
    if conn is None:
×
48
        conn = get_engine().connect()
×
49
    conn.execute(trig_ddl)
×
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc