Coverage for packages/sql-smith/src/sql_smith/partial/parameter/parameter.py: 100%
16 statements
« prev ^ index » next coverage.py v7.11.0, created at 2024-01-01 00:00 +0000
« prev ^ index » next coverage.py v7.11.0, created at 2024-01-01 00:00 +0000
1from sql_smith.interfaces import StatementInterface
2from sql_smith.partial.parameter import BoolParameter, NullParameter
5class Parameter(StatementInterface):
6 def __init__(self, value: str | int | float):
7 self._params = (value,)
9 @classmethod
10 def create(cls, value) -> StatementInterface:
11 if value is None:
12 return NullParameter()
13 if isinstance(value, bool):
14 return BoolParameter(value)
16 return Parameter(value)
18 def sql(self, engine: "EngineInterface") -> str:
19 return engine.export_parameter(engine.get_parameter_placeholder())
21 def params(self, engine: "EngineInterface") -> tuple:
22 return self._params