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

winter-telescope / winterdrp / 5035592165

pending completion
5035592165

Pull #378

github

GitHub
Merge 9ce2b748a into 484aa0975
Pull Request #378: More on references

251 of 251 new or added lines in 30 files covered. (100.0%)

7464 of 8938 relevant lines covered (83.51%)

1.67 hits per line

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

41.67
/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 DB_PASSWORD, DB_USER
2✔
7

8

9
def get_engine(
2✔
10
    db_user: str = DB_USER,
11
    db_password: str = DB_PASSWORD,
12
    db_name: str = "summer",
13
) -> Engine:
14
    """
15
    Function to create a postgres engine
16

17
    :param db_user: User for db
18
    :param db_password: password for db
19
    :param db_name: name of db
20
    :return: sqlalchemy engine
21
    """
22

23
    return create_engine(
2✔
24
        f"postgresql+psycopg://{db_user}:{db_password}" f"@/{db_name}",
25
        future=True,
26
    )
27

28

29
def create_q3c_extension(
2✔
30
    table_name: str, ra_column_name: str, dec_column_name: str, conn=None
31
):
32
    """
33
    Function to create q3c extension and index on table
34

35
    :param table_name: Name of table
36
    :param ra_column_name: ra column name
37
    :param dec_column_name: dec column name
38
    :param conn: connection to db
39
    :return:
40
    """
41

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

50
    if conn is None:
×
51
        with get_engine().connect() as conn:
×
52
            conn.execute(trig_ddl)
×
53
            conn.commit()
×
54
    else:
55
        conn.execute(trig_ddl)
×
56
        conn.commit()
×
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