Extend integration test to support models whose name contains dots

This commit is contained in:
monti-python
2021-04-23 09:58:56 +02:00
parent 53926fc71b
commit 66c26facbd
3 changed files with 46 additions and 30 deletions

View File

@@ -0,0 +1,7 @@
{{
config(
materialized = "view"
)
}}
select * from {{ ref('seed') }}

View File

@@ -0,0 +1,7 @@
{{
config(
materialized = "view"
)
}}
select * from {{ ref('seed') }}

View File

@@ -46,17 +46,17 @@ class TestSimpleCopy(BaseTestSimpleCopy):
results = self.run_dbt(["seed"])
self.assertEqual(len(results), 1)
results = self.run_dbt()
self.assertEqual(len(results), 7)
self.assertEqual(len(results), 8)
self.assertManyTablesEqual(["seed", "view_model", "incremental", "materialized", "get_and_ref"])
self.assertManyTablesEqual(["seed", "view_model", "view_model.with.dots", "incremental", "materialized", "get_and_ref"])
self.use_default_project({"data-paths": [self.dir("seed-update")]})
results = self.run_dbt(["seed"])
self.assertEqual(len(results), 1)
results = self.run_dbt()
self.assertEqual(len(results), 7)
self.assertEqual(len(results), 8)
self.assertManyTablesEqual(["seed", "view_model", "incremental", "materialized", "get_and_ref"])
self.assertManyTablesEqual(["seed", "view_model", "view_model.with.dots", "incremental", "materialized", "get_and_ref"])
@use_profile('postgres')
def test__postgres__simple_copy_with_materialized_views(self):
@@ -77,14 +77,14 @@ class TestSimpleCopy(BaseTestSimpleCopy):
results = self.run_dbt(["seed"])
self.assertEqual(len(results), 1)
results = self.run_dbt()
self.assertEqual(len(results), 7)
self.assertEqual(len(results), 8)
@use_profile("postgres")
def test__postgres__dbt_doesnt_run_empty_models(self):
results = self.run_dbt(["seed"])
self.assertEqual(len(results), 1)
results = self.run_dbt()
self.assertEqual(len(results), 7)
self.assertEqual(len(results), 8)
models = self.get_models_in_schema()
@@ -98,12 +98,12 @@ class TestSimpleCopy(BaseTestSimpleCopy):
results = self.run_dbt(["seed"])
self.assertEqual(len(results), 1)
results = self.run_dbt(expect_pass=False)
self.assertEqual(len(results), 7)
self.assertEqual(len(results), 8)
for result in results:
if 'incremental' in result.node.name:
self.assertIn('not implemented for presto', result.message)
self.assertManyTablesEqual(["seed", "view_model", "materialized"])
self.assertManyTablesEqual(["seed", "view_model", "view_model.with.dots", "materialized"])
@use_profile("snowflake")
def test__snowflake__simple_copy(self):
@@ -116,17 +116,17 @@ class TestSimpleCopy(BaseTestSimpleCopy):
results = self.run_dbt(["seed"])
self.assertEqual(len(results), 1)
results = self.run_dbt()
self.assertEqual(len(results), 7)
self.assertEqual(len(results), 8)
self.assertManyTablesEqual(["SEED", "VIEW_MODEL", "INCREMENTAL", "MATERIALIZED", "GET_AND_REF"])
self.assertManyTablesEqual(["SEED", "VIEW_MODEL", "VIEW_MODEL.WITH.DOTS", "INCREMENTAL", "MATERIALIZED", "GET_AND_REF"])
self.use_default_project({"data-paths": [self.dir("seed-update")]})
results = self.run_dbt(["seed"])
self.assertEqual(len(results), 1)
results = self.run_dbt()
self.assertEqual(len(results), 7)
self.assertEqual(len(results), 8)
self.assertManyTablesEqual(["SEED", "VIEW_MODEL", "INCREMENTAL", "MATERIALIZED", "GET_AND_REF"])
self.assertManyTablesEqual(["SEED", "VIEW_MODEL", "VIEW_MODEL.WITH.DOTS", "INCREMENTAL", "MATERIALIZED", "GET_AND_REF"])
self.use_default_project({
"test-paths": [self.dir("tests")],
@@ -144,9 +144,9 @@ class TestSimpleCopy(BaseTestSimpleCopy):
results = self.run_dbt(["seed"])
self.assertEqual(len(results), 1)
results = self.run_dbt()
self.assertEqual(len(results), 7)
self.assertEqual(len(results), 8)
self.assertManyTablesEqual(["SEED", "VIEW_MODEL", "INCREMENTAL", "MATERIALIZED", "GET_AND_REF"])
self.assertManyTablesEqual(["SEED", "VIEW_MODEL", "VIEW_MODEL.WITH.DOTS", "INCREMENTAL", "MATERIALIZED", "GET_AND_REF"])
self.use_default_project({
"data-paths": [self.dir("snowflake-seed-update")],
@@ -155,9 +155,9 @@ class TestSimpleCopy(BaseTestSimpleCopy):
results = self.run_dbt(["seed"])
self.assertEqual(len(results), 1)
results = self.run_dbt()
self.assertEqual(len(results), 7)
self.assertEqual(len(results), 8)
self.assertManyTablesEqual(["SEED", "VIEW_MODEL", "INCREMENTAL", "MATERIALIZED", "GET_AND_REF"])
self.assertManyTablesEqual(["SEED", "VIEW_MODEL", "VIEW_MODEL.WITH.DOTS", "INCREMENTAL", "MATERIALIZED", "GET_AND_REF"])
self.use_default_project({
"test-paths": [self.dir("tests")],
@@ -193,9 +193,10 @@ class TestSimpleCopy(BaseTestSimpleCopy):
results = self.run_dbt(["seed"])
self.assertEqual(len(results), 1)
results = self.run_dbt()
self.assertEqual(len(results), 7)
self.assertEqual(len(results), 8)
self.assertTablesEqual("seed", "view_model")
self.assertTablesEqual("seed", "view_model.with.dots")
self.assertTablesEqual("seed", "incremental")
self.assertTablesEqual("seed", "materialized")
self.assertTablesEqual("seed", "get_and_ref")
@@ -205,9 +206,10 @@ class TestSimpleCopy(BaseTestSimpleCopy):
results = self.run_dbt(["seed"])
self.assertEqual(len(results), 1)
results = self.run_dbt()
self.assertEqual(len(results), 7)
self.assertEqual(len(results), 8)
self.assertTablesEqual("seed", "view_model")
self.assertTablesEqual("seed", "view_model.with.dots")
self.assertTablesEqual("seed", "incremental")
self.assertTablesEqual("seed", "materialized")
self.assertTablesEqual("seed", "get_and_ref")
@@ -231,9 +233,9 @@ class TestSimpleCopyQuotingIdentifierOn(BaseTestSimpleCopy):
results = self.run_dbt(["seed"])
self.assertEqual(len(results), 1)
results = self.run_dbt()
self.assertEqual(len(results), 7)
self.assertEqual(len(results), 8)
self.assertManyTablesEqual(["seed", "view_model", "incremental", "materialized", "get_and_ref"])
self.assertManyTablesEqual(["seed", "view_model.with.dots", "view_model", "incremental", "materialized", "get_and_ref"])
self.use_default_project({
"data-paths": [self.dir("snowflake-seed-update")],
@@ -241,9 +243,9 @@ class TestSimpleCopyQuotingIdentifierOn(BaseTestSimpleCopy):
results = self.run_dbt(["seed"])
self.assertEqual(len(results), 1)
results = self.run_dbt()
self.assertEqual(len(results), 7)
self.assertEqual(len(results), 8)
self.assertManyTablesEqual(["seed", "view_model", "incremental", "materialized", "get_and_ref"])
self.assertManyTablesEqual(["seed", "view_model.with.dots", "view_model", "incremental", "materialized", "get_and_ref"])
# can't run the test as this one's identifiers will be the wrong case
@@ -262,18 +264,18 @@ class TestSnowflakeSimpleLowercasedSchemaCopy(BaseLowercasedSchemaTest):
results = self.run_dbt(["seed"])
self.assertEqual(len(results), 1)
results = self.run_dbt()
self.assertEqual(len(results), 7)
self.assertEqual(len(results), 8)
self.assertManyTablesEqual(["SEED", "VIEW_MODEL", "INCREMENTAL", "MATERIALIZED", "GET_AND_REF"])
self.assertManyTablesEqual(["SEED", "VIEW_MODEL", "VIEW_MODEL.WITH.DOTS", "INCREMENTAL", "MATERIALIZED", "GET_AND_REF"])
self.use_default_project({"data-paths": [self.dir("snowflake-seed-update")]})
results = self.run_dbt(["seed"])
self.assertEqual(len(results), 1)
results = self.run_dbt()
self.assertEqual(len(results), 7)
self.assertEqual(len(results), 8)
self.assertManyTablesEqual(["SEED", "VIEW_MODEL", "INCREMENTAL", "MATERIALIZED", "GET_AND_REF"])
self.assertManyTablesEqual(["SEED", "VIEW_MODEL", "VIEW_MODEL.WITH.DOTS", "INCREMENTAL", "MATERIALIZED", "GET_AND_REF"])
self.use_default_project({
"test-paths": [self.dir("tests")],
@@ -376,17 +378,17 @@ class TestShouting(BaseTestSimpleCopy):
results = self.run_dbt(["seed"])
self.assertEqual(len(results), 1)
results = self.run_dbt()
self.assertEqual(len(results), 7)
self.assertEqual(len(results), 8)
self.assertManyTablesEqual(["seed", "VIEW_MODEL", "INCREMENTAL", "MATERIALIZED", "GET_AND_REF"])
self.assertManyTablesEqual(["seed", "VIEW_MODEL", "VIEW_MODEL.WITH.DOTS", "INCREMENTAL", "MATERIALIZED", "GET_AND_REF"])
self.use_default_project({"data-paths": [self.dir("seed-update")]})
results = self.run_dbt(["seed"])
self.assertEqual(len(results), 1)
results = self.run_dbt()
self.assertEqual(len(results), 7)
self.assertEqual(len(results), 8)
self.assertManyTablesEqual(["seed", "VIEW_MODEL", "INCREMENTAL", "MATERIALIZED", "GET_AND_REF"])
self.assertManyTablesEqual(["seed", "VIEW_MODEL", "VIEW_MODEL.WITH.DOTS", "INCREMENTAL", "MATERIALIZED", "GET_AND_REF"])
# I give up on getting this working for Windows.