1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
|
from sqlglot.dialects.dialect import Dialects
from tests.dialects.test_dialect import Validator
class TestDruid(Validator):
dialect = "druid"
def test_druid(self):
self.validate_identity("SELECT MOD(1000, 60)")
self.validate_identity("SELECT CEIL(__time TO WEEK) FROM t")
self.validate_identity("SELECT CEIL(col) FROM t")
self.validate_identity("SELECT CEIL(price, 2) AS rounded_price FROM t")
self.validate_identity("SELECT FLOOR(__time TO WEEK) FROM t")
self.validate_identity("SELECT FLOOR(col) FROM t")
self.validate_identity("SELECT FLOOR(price, 2) AS rounded_price FROM t")
self.validate_identity("SELECT CURRENT_TIMESTAMP")
self.validate_identity("SELECT ARRAY[1, 2, 3]")
# validate across all dialects
write = {dialect.value: "FLOOR(__time TO WEEK)" for dialect in Dialects}
self.validate_all(
"FLOOR(__time TO WEEK)",
write=write,
)
|