Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
def test_incremental_same_results_should_not_have_errors():
main = build_validation("content")
additional = build_validation("content")
incremental = Runner._incremental_results(main, additional)
assert incremental["status"] == "passed"
assert incremental["errors"] == []
assert incremental["tested"] == [
dict(model="ecommerce", explore="orders", passed=True),
dict(model="ecommerce", explore="sessions", passed=True),
dict(model="ecommerce", explore="users", passed=True),
]
model="ecommerce",
explore="users",
test=None,
message="Another error occurred",
metadata={},
),
dict(
model="ecommerce",
explore="sessions",
test=None,
message="An error occurred",
metadata={},
),
]
additional["errors"].extend(extra_errors)
incremental = Runner._incremental_results(main, additional)
assert incremental["status"] == "failed"
assert incremental["errors"] == extra_errors
assert incremental["tested"] == [
dict(model="ecommerce", explore="orders", passed=True),
dict(model="ecommerce", explore="sessions", passed=False),
dict(model="ecommerce", explore="users", passed=False),
]
def run_assert(
project,
branch,
explores,
exclude,
base_url,
client_id,
client_secret,
port,
api_version,
remote_reset,
import_projects,
commit_ref,
) -> None:
runner = Runner(
base_url,
project,
branch,
client_id,
client_secret,
port,
api_version,
remote_reset,
import_projects,
commit_ref,
)
results = runner.validate_data_tests(explores, exclude)
for test in sorted(results["tested"], key=lambda x: (x["model"], x["explore"])):
message = f"{test['model']}.{test['explore']}"
printer.print_validation_result(passed=test["passed"], source=message)
project,
branch,
explores,
excludes,
base_url,
client_id,
client_secret,
port,
api_version,
remote_reset,
import_projects,
commit_ref,
incremental,
exclude_personal,
) -> None:
runner = Runner(
base_url,
project,
branch,
client_id,
client_secret,
port,
api_version,
remote_reset,
import_projects,
commit_ref,
)
results = runner.validate_content(explores, excludes, incremental, exclude_personal)
for test in sorted(results["tested"], key=lambda x: (x["model"], x["explore"])):
message = f"{test['model']}.{test['explore']}"
printer.print_validation_result(passed=test["passed"], source=message)
branch,
explores,
exclude,
base_url,
client_id,
client_secret,
port,
api_version,
mode,
remote_reset,
import_projects,
concurrency,
commit_ref,
) -> None:
"""Runs and validates the SQL for each selected LookML dimension."""
runner = Runner(
base_url,
project,
branch,
client_id,
client_secret,
port,
api_version,
remote_reset,
import_projects,
commit_ref,
)
def iter_errors(lookml: List) -> Iterable:
for item in lookml:
if item.errored:
yield item