Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add tests for date_spine macro, and sub macros #943

Merged
merged 9 commits into from
Oct 11, 2023
16 changes: 16 additions & 0 deletions tests/functional/adapter/utils/fixture_get_intervals_between.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
models__bq_test_get_intervals_between_sql = """
SELECT
{{ get_intervals_between("'2023-09-01'", "'2023-09-12'", "day") }} as intervals,
11 as expected

"""

models___bq_test_get_intervals_between_yml = """
version: 2
models:
- name: test_get_intervals_between
tests:
- assert_equal:
actual: intervals
expected: expected
"""
31 changes: 31 additions & 0 deletions tests/functional/adapter/utils/test_utils.py
Original file line number Diff line number Diff line change
Expand Up @@ -13,9 +13,13 @@
from dbt.tests.adapter.utils.test_current_timestamp import BaseCurrentTimestampAware
from dbt.tests.adapter.utils.test_dateadd import BaseDateAdd
from dbt.tests.adapter.utils.test_datediff import BaseDateDiff
from dbt.tests.adapter.utils.test_date_spine import BaseDateSpine
from dbt.tests.adapter.utils.test_date_trunc import BaseDateTrunc
from dbt.tests.adapter.utils.test_escape_single_quotes import BaseEscapeSingleQuotesBackslash
from dbt.tests.adapter.utils.test_except import BaseExcept
from dbt.tests.adapter.utils.test_generate_series import BaseGenerateSeries
from dbt.tests.adapter.utils.test_get_intervals_between import BaseGetIntervalsBetween
from dbt.tests.adapter.utils.test_get_powers_of_two import BaseGetPowersOfTwo
from dbt.tests.adapter.utils.test_hash import BaseHash
from dbt.tests.adapter.utils.test_intersect import BaseIntersect
from dbt.tests.adapter.utils.test_last_day import BaseLastDay
Expand All @@ -41,6 +45,10 @@
models__array_construct_expected_sql,
macros__array_to_string_sql,
)
from tests.functional.adapter.utils.fixture_get_intervals_between import (
models__bq_test_get_intervals_between_sql,
models___bq_test_get_intervals_between_yml,
)


class TestAnyValue(BaseAnyValue):
Expand Down Expand Up @@ -117,6 +125,10 @@ class TestDateDiff(BaseDateDiff):
pass


class TestDateSpine(BaseDateSpine):
pass


class TestDateTrunc(BaseDateTrunc):
pass

Expand All @@ -129,6 +141,25 @@ class TestExcept(BaseExcept):
pass


class TestGenerateSeries(BaseGenerateSeries):
pass


class TestGetIntervalsBetween(BaseGetIntervalsBetween):
@pytest.fixture(scope="class")
def models(self):
return {
"test_get_intervals_between.yml": models___bq_test_get_intervals_between_yml,
"test_get_intervals_between.sql": self.interpolate_macro_namespace(
models__bq_test_get_intervals_between_sql, "get_intervals_between"
),
}


class TestGetPowersOfTwo(BaseGetPowersOfTwo):
pass


class TestHash(BaseHash):
pass

Expand Down