-
Notifications
You must be signed in to change notification settings - Fork 24
/
test_case_insensitivity.py
49 lines (39 loc) · 1.04 KB
/
test_case_insensitivity.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
import pytest
from dbt.tests.util import run_dbt
my_model_sql = """
select
tested_column from {{ ref('my_upstream_model')}}
"""
my_upstream_model_sql = """
select 1 as tested_column
"""
test_my_model_yml = """
unit_tests:
- name: test_my_model
model: my_model
given:
- input: ref('my_upstream_model')
rows:
- {tested_column: 1}
- {TESTED_COLUMN: 2}
- {tested_colUmn: 3}
expect:
rows:
- {tested_column: 1}
- {TESTED_COLUMN: 2}
- {tested_colUmn: 3}
"""
class BaseUnitTestCaseInsensivity:
@pytest.fixture(scope="class")
def models(self):
return {
"my_model.sql": my_model_sql,
"my_upstream_model.sql": my_upstream_model_sql,
"unit_tests.yml": test_my_model_yml,
}
def test_case_insensitivity(self, project):
results = run_dbt(["run"])
assert len(results) == 2
results = run_dbt(["test"])
class TestPosgresUnitTestCaseInsensitivity(BaseUnitTestCaseInsensivity):
pass