"""this file is generated by tools/generate_sql_functions.py""" from datetime import date from datetime import datetime from datetime import time from decimal import Decimal from typing import assert_type from typing import Sequence from sqlalchemy import column from sqlalchemy import func from sqlalchemy import Integer from sqlalchemy import Select from sqlalchemy import select from sqlalchemy import Sequence as SqlAlchemySequence from sqlalchemy import String # START GENERATED FUNCTION TYPING TESTS # code within this block is **programmatically, # statically generated** by tools/generate_sql_functions.py stmt1 = select(func.aggregate_strings(column("x", String), ",")) assert_type(stmt1, Select[str]) stmt2 = select(func.array_agg(column("x", Integer))) assert_type(stmt2, Select[Sequence[int]]) stmt3 = select(func.char_length(column("x"))) assert_type(stmt3, Select[int]) stmt4 = select(func.coalesce(column("x", Integer))) assert_type(stmt4, Select[int]) stmt5 = select(func.concat()) assert_type(stmt5, Select[str]) stmt6 = select(func.count(column("x"))) assert_type(stmt6, Select[int]) stmt7 = select(func.cume_dist()) assert_type(stmt7, Select[Decimal]) stmt8 = select(func.current_date()) assert_type(stmt8, Select[date]) stmt9 = select(func.current_time()) assert_type(stmt9, Select[time]) stmt10 = select(func.current_timestamp()) assert_type(stmt10, Select[datetime]) stmt11 = select(func.current_user()) assert_type(stmt11, Select[str]) stmt12 = select(func.dense_rank()) assert_type(stmt12, Select[int]) stmt13 = select(func.localtime()) assert_type(stmt13, Select[datetime]) stmt14 = select(func.localtimestamp()) assert_type(stmt14, Select[datetime]) stmt15 = select(func.max(column("x", Integer))) assert_type(stmt15, Select[int]) stmt16 = select(func.min(column("x", Integer))) assert_type(stmt16, Select[int]) stmt17 = select(func.next_value(SqlAlchemySequence("x_seq"))) assert_type(stmt17, Select[int]) stmt18 = select(func.now()) assert_type(stmt18, Select[datetime]) stmt19 = select(func.percent_rank()) assert_type(stmt19, Select[Decimal]) stmt20 = select(func.pow(column("x", Integer))) assert_type(stmt20, Select[int]) stmt21 = select(func.rank()) assert_type(stmt21, Select[int]) stmt22 = select(func.session_user()) assert_type(stmt22, Select[str]) stmt23 = select(func.sum(column("x", Integer))) assert_type(stmt23, Select[int]) stmt24 = select(func.sysdate()) assert_type(stmt24, Select[datetime]) stmt25 = select(func.user()) assert_type(stmt25, Select[str]) # END GENERATED FUNCTION TYPING TESTS stmt_count: Select[int, int, int] = select( func.count(), func.count("*"), func.count(1) )