awslabs / awslabs/python-deequ
satisfies test fails if assertion is not provided
- Dominant language
- Jupyter Notebook
- Stars
- 826
- Forks
- 158
- PR merge metrics
- No merged PRs in 30d
Description
**Describe the bug**
`satisfies` test fails if assertion is not provided despite there being a default value for the argument.
I believe the reference `satisfies$default$2` should be `satisfies$default$3` but I need to test that.
**To Reproduce**
```
from pydeequ.checks import *
from pydeequ.verification import *
check = Check(spark, CheckLevel.Warning, "test satisfies")
checkResult = VerificationSuite(spark)
.onData(df)
.addCheck(
check
.satisfies("r in ('123','456','789')","r cannot contain any values excpet"))
.run()
Error:
py4j.Py4JException: Method satisfies$default$2([]) does not exist
--> 542 else getattr(self._Check, "satisfies$default$2")()
543 hint = self._jvm.scala.Option.apply(hint)
544 self._Check = self._Check.satisfies(columnCondition, constraintName, assertion_func, hint)
```
**Expected behavior**
Test runs without error
**Additional context**
Spark 3.3, pydeequ==1.1.1
Contributor guide
Assessment
This issue has not been assessed yet.