24 lines
548 B
Python
24 lines
548 B
Python
import dataframely as dy
|
|
import polars as pl
|
|
|
|
from tests.test_validate_date_col import DateSchema
|
|
|
|
|
|
class UniquesSchema(DateSchema):
|
|
unique: dy.Integer = dy.Integer(nullable=False)
|
|
|
|
@dy.rule()
|
|
def cannot_be_zero() -> pl.Expr:
|
|
return pl.col("unique") > 0
|
|
|
|
|
|
def test_uniques_schema():
|
|
_ = UniquesSchema.validate(
|
|
pl.scan_csv(
|
|
"output/unique_installs.csv",
|
|
schema={
|
|
"date": pl.Date,
|
|
"unique": pl.UInt16,
|
|
},
|
|
).collect(engine="streaming")
|
|
)
|