diff --git a/test/integration/006_simple_dependency_test/duplicate_dependency/dbt_project.yml b/test/integration/006_simple_dependency_test/duplicate_dependency/dbt_project.yml index 254db1ecad2..dbda758fc14 100644 --- a/test/integration/006_simple_dependency_test/duplicate_dependency/dbt_project.yml +++ b/test/integration/006_simple_dependency_test/duplicate_dependency/dbt_project.yml @@ -1,4 +1,5 @@ name: 'test' version: '1.0' +config-version: 2 profile: 'default' diff --git a/test/integration/006_simple_dependency_test/early_hook_dependency/dbt_project.yml b/test/integration/006_simple_dependency_test/early_hook_dependency/dbt_project.yml index 7d83235e470..7cde1ad41cb 100644 --- a/test/integration/006_simple_dependency_test/early_hook_dependency/dbt_project.yml +++ b/test/integration/006_simple_dependency_test/early_hook_dependency/dbt_project.yml @@ -1,5 +1,6 @@ name: early_hooks version: '1.0' +config-version: 2 on-run-start: - create table {{ var('test_create_table') }} as (select 1 as id) - create table {{ var('test_create_second_table') }} as (select 3 as id) diff --git a/test/integration/006_simple_dependency_test/late_hook_dependency/dbt_project.yml b/test/integration/006_simple_dependency_test/late_hook_dependency/dbt_project.yml index d67b089273f..62750f8d369 100644 --- a/test/integration/006_simple_dependency_test/late_hook_dependency/dbt_project.yml +++ b/test/integration/006_simple_dependency_test/late_hook_dependency/dbt_project.yml @@ -1,5 +1,6 @@ name: late_hooks version: '1.0' +config-version: 2 on-run-start: - insert into {{ var('test_create_table') }} values (2) - insert into {{ var('test_create_second_table') }} values (4) diff --git a/test/integration/006_simple_dependency_test/local_dependency/dbt_project.yml b/test/integration/006_simple_dependency_test/local_dependency/dbt_project.yml index 7cc8b3c47f5..cbf108e353a 100644 --- a/test/integration/006_simple_dependency_test/local_dependency/dbt_project.yml +++ b/test/integration/006_simple_dependency_test/local_dependency/dbt_project.yml @@ -1,6 +1,7 @@ name: 'local_dep' version: '1.0' +config-version: 2 profile: 'default' diff --git a/test/integration/006_simple_dependency_test/test_simple_dependency.py b/test/integration/006_simple_dependency_test/test_simple_dependency.py index cf525968593..51422d6c8f9 100644 --- a/test/integration/006_simple_dependency_test/test_simple_dependency.py +++ b/test/integration/006_simple_dependency_test/test_simple_dependency.py @@ -3,6 +3,7 @@ import tempfile from test.integration.base import DBTIntegrationTest, use_profile from dbt.exceptions import CompilationException +from dbt import deprecations class TestSimpleDependency(DBTIntegrationTest): @@ -25,17 +26,11 @@ def packages_config(self): "packages": [ { 'git': 'https://github.com/fishtown-analytics/dbt-integration-project', - 'warn-unpinned': False, + 'revision': 'dbt/0.17.0', } ] } - def run_dbt(self, cmd=None, *args, **kwargs): - if cmd and cmd[0] != 'deps': - strict = kwargs.pop('strict', False) - kwargs['strict'] = strict - return super().run_dbt(cmd, *args, **kwargs) - def run_deps(self): return self.run_dbt(["deps"]) @@ -45,11 +40,11 @@ def test_postgres_simple_dependency(self): results = self.run_dbt(["run"]) self.assertEqual(len(results), 4) - self.assertTablesEqual("seed","table_model") - self.assertTablesEqual("seed","view_model") - self.assertTablesEqual("seed","incremental") + self.assertTablesEqual("seed", "table_model") + self.assertTablesEqual("seed", "view_model") + self.assertTablesEqual("seed", "incremental") - self.assertTablesEqual("seed_summary","view_summary") + self.assertTablesEqual("seed_summary", "view_summary") self.run_sql_file("update.sql") @@ -57,9 +52,9 @@ def test_postgres_simple_dependency(self): results = self.run_dbt(["run"]) self.assertEqual(len(results), 4) - self.assertTablesEqual("seed","table_model") - self.assertTablesEqual("seed","view_model") - self.assertTablesEqual("seed","incremental") + self.assertTablesEqual("seed", "table_model") + self.assertTablesEqual("seed", "view_model") + self.assertTablesEqual("seed", "incremental") @use_profile('postgres') def test_postgres_simple_dependency_with_models(self): @@ -67,8 +62,8 @@ def test_postgres_simple_dependency_with_models(self): results = self.run_dbt(["run", '--models', 'view_model+']) self.assertEqual(len(results), 2) - self.assertTablesEqual("seed","view_model") - self.assertTablesEqual("seed_summary","view_summary") + self.assertTablesEqual("seed", "view_model") + self.assertTablesEqual("seed_summary", "view_summary") created_models = self.get_models_in_schema() @@ -105,9 +100,14 @@ def packages_config(self): @use_profile('postgres') def test_postgres_simple_dependency(self): - self.run_dbt(['deps'], strict=False) - with self.assertRaises(CompilationException): + # hack: insert the config version warning into the active deprecations, + # to avoid triggering on that, since the unpinned branch also should + # warn about the version. + deprecations.active_deprecations.add('dbt-project-yaml-v1') + with self.assertRaises(CompilationException) as exc: self.run_dbt(["deps"]) + assert 'is not pinned' in str(exc.exception) + self.run_dbt(['deps'], strict=False) class TestSimpleDependencyWithDuplicates(DBTIntegrationTest): @@ -126,11 +126,11 @@ def packages_config(self): "packages": [ { 'git': 'https://github.com/fishtown-analytics/dbt-integration-project', - 'warn-unpinned': False, + 'revision': 'dbt/0.17.0', }, { 'git': 'https://github.com/fishtown-analytics/dbt-integration-project.git', - 'warn-unpinned': False, + 'revision': 'dbt/0.17.0', } ] } @@ -192,20 +192,19 @@ def packages_config(self): "packages": [ { 'git': 'https://github.com/fishtown-analytics/dbt-integration-project', - 'revision': 'master', - 'warn-unpinned': False, + 'revision': 'dbt/0.17.0', }, ] } def deps_run_assert_equality(self): self.run_dbt(["deps"]) - results = self.run_dbt(["run"], strict=False) + results = self.run_dbt(["run"]) self.assertEqual(len(results), 4) - self.assertTablesEqual("seed","table_model") - self.assertTablesEqual("seed","view_model") - self.assertTablesEqual("seed","incremental") + self.assertTablesEqual("seed", "table_model") + self.assertTablesEqual("seed", "view_model") + self.assertTablesEqual("seed", "incremental") created_models = self.get_models_in_schema() @@ -218,7 +217,7 @@ def deps_run_assert_equality(self): def test_postgres_simple_dependency(self): self.deps_run_assert_equality() - self.assertTablesEqual("seed_summary","view_summary") + self.assertTablesEqual("seed_summary", "view_summary") self.run_sql_file("update.sql") diff --git a/test/integration/006_simple_dependency_test/test_simple_dependency_with_configs.py b/test/integration/006_simple_dependency_test/test_simple_dependency_with_configs.py index ca05c30109a..79157dc8677 100644 --- a/test/integration/006_simple_dependency_test/test_simple_dependency_with_configs.py +++ b/test/integration/006_simple_dependency_test/test_simple_dependency_with_configs.py @@ -15,10 +15,6 @@ def schema(self): def models(self): return "models" - def run_dbt(self, *args, **kwargs): - strict = kwargs.pop('strict', False) - kwargs['strict'] = strict - return super().run_dbt(*args, **kwargs) class TestSimpleDependencyWithConfigs(BaseTestSimpleDependencyWithConfigs): @property @@ -27,7 +23,7 @@ def packages_config(self): "packages": [ { 'git': 'https://github.com/fishtown-analytics/dbt-integration-project', - 'revision': 'with-configs', + 'revision': 'with-configs-0.17.0', }, ] } @@ -49,10 +45,10 @@ def test_postgres_simple_dependency(self): results = self.run_dbt(["run"]) self.assertEqual(len(results), 5) - self.assertTablesEqual('seed_config_expected_1',"config") - self.assertTablesEqual("seed","table_model") - self.assertTablesEqual("seed","view_model") - self.assertTablesEqual("seed","incremental") + self.assertTablesEqual('seed_config_expected_1', "config") + self.assertTablesEqual("seed", "table_model") + self.assertTablesEqual("seed", "view_model") + self.assertTablesEqual("seed", "incremental") class TestSimpleDependencyWithOverriddenConfigs(BaseTestSimpleDependencyWithConfigs): @@ -63,7 +59,7 @@ def packages_config(self): "packages": [ { 'git': 'https://github.com/fishtown-analytics/dbt-integration-project', - 'revision': 'with-configs', + 'revision': 'with-configs-0.17.0', }, ] } @@ -88,10 +84,10 @@ def test_postgres_simple_dependency(self): results = self.run_dbt(["run"]) self.assertEqual(len(results), 5) - self.assertTablesEqual('seed_config_expected_2',"config") - self.assertTablesEqual("seed","table_model") - self.assertTablesEqual("seed","view_model") - self.assertTablesEqual("seed","incremental") + self.assertTablesEqual('seed_config_expected_2', "config") + self.assertTablesEqual("seed", "table_model") + self.assertTablesEqual("seed", "view_model") + self.assertTablesEqual("seed", "incremental") class TestSimpleDependencyWithModelSpecificOverriddenConfigs(BaseTestSimpleDependencyWithConfigs): @@ -102,7 +98,7 @@ def packages_config(self): "packages": [ { 'git': 'https://github.com/fishtown-analytics/dbt-integration-project', - 'revision': 'with-configs', + 'revision': 'with-configs-0.17.0', }, ] } @@ -132,13 +128,13 @@ def test_postgres_simple_dependency(self): self.use_default_project() self.run_dbt(["deps"]) - results = self.run_dbt(["run"]) + results = self.run_dbt(["run"], strict=False) # config is v1, can't use strict here self.assertEqual(len(results), 5) - self.assertTablesEqual('seed_config_expected_3',"config") - self.assertTablesEqual("seed","table_model") - self.assertTablesEqual("seed","view_model") - self.assertTablesEqual("seed","incremental") + self.assertTablesEqual('seed_config_expected_3', "config") + self.assertTablesEqual("seed", "table_model") + self.assertTablesEqual("seed", "view_model") + self.assertTablesEqual("seed", "incremental") class TestSimpleDependencyWithModelSpecificOverriddenConfigsAndMaterializations(BaseTestSimpleDependencyWithConfigs): @@ -149,7 +145,7 @@ def packages_config(self): "packages": [ { 'git': 'https://github.com/fishtown-analytics/dbt-integration-project', - 'revision': 'with-configs', + 'revision': 'with-configs-0.17.0', }, ] } @@ -186,12 +182,11 @@ def project_config(self): @use_profile('postgres') def test_postgres_simple_dependency(self): self.run_dbt(["deps"]) - results = self.run_dbt(["run"]) + results = self.run_dbt(["run"], strict=False) # config is v1, can't use strict here self.assertEqual(len(results), 3) - self.assertTablesEqual("seed","view_model") - self.assertTablesEqual("seed","incremental") - + self.assertTablesEqual("seed", "view_model") + self.assertTablesEqual("seed", "incremental") created_models = self.get_models_in_schema() diff --git a/test/integration/007_graph_selection_tests/test_schema_test_graph_selection.py b/test/integration/007_graph_selection_tests/test_schema_test_graph_selection.py index c1f78335bac..60a517aa098 100644 --- a/test/integration/007_graph_selection_tests/test_schema_test_graph_selection.py +++ b/test/integration/007_graph_selection_tests/test_schema_test_graph_selection.py @@ -17,7 +17,10 @@ def models(self): def packages_config(self): return { "packages": [ - {'git': 'https://github.com/fishtown-analytics/dbt-integration-project', 'warn-unpinned': False} + { + 'git': 'https://github.com/fishtown-analytics/dbt-integration-project', + 'revision': 'dbt/0.17.0', + } ] } diff --git a/test/integration/008_schema_tests_test/test_schema_v2_tests.py b/test/integration/008_schema_tests_test/test_schema_v2_tests.py index bbf25c80d44..b206a704144 100644 --- a/test/integration/008_schema_tests_test/test_schema_v2_tests.py +++ b/test/integration/008_schema_tests_test/test_schema_v2_tests.py @@ -140,6 +140,7 @@ def models(self): @property def project_config(self): return { + 'config-version': 2, "macro-paths": ["macros-v2/malformed"], } @@ -150,8 +151,8 @@ def run_schema_validations(self): @use_profile('postgres') def test_postgres_malformed_macro_reports_error(self): - self.run_dbt(["deps"]) - self.run_dbt() + self.run_dbt(['deps']) + self.run_dbt(strict=True) expected_failure = 'not_null' test_results = self.run_schema_validations() @@ -182,6 +183,7 @@ def models(self): @property def project_config(self): return { + 'config-version': 2, "on-run-start": ["{{ exceptions.raise_compiler_error('hooks called in tests -- error') if execute }}"], "on-run-end": ["{{ exceptions.raise_compiler_error('hooks called in tests -- error') if execute }}"], } @@ -221,7 +223,7 @@ def packages_config(self): }, { 'git': 'https://github.com/fishtown-analytics/dbt-integration-project', - 'warn-unpinned': False, + 'revision': 'dbt/0.17.0', }, ] } @@ -232,6 +234,7 @@ def project_config(self): # dbt-integration-project contains a schema.yml file # both should work! return { + 'config-version': 2, "macro-paths": ["macros-v2/macros"], } @@ -248,7 +251,7 @@ def run_schema_validations(self): @use_profile('postgres') def test_postgres_schema_tests(self): self.run_dbt(["deps"]) - results = self.run_dbt() + results = self.run_dbt(strict=False) # dbt-utils 0.13-support is config version 1 self.assertEqual(len(results), 4) test_results = self.run_schema_validations() @@ -351,6 +354,7 @@ def models(self): @property def project_config(self): return { + 'config-version': 2, "macro-paths": ["macros-v2/macros"], } diff --git a/test/integration/012_deprecation_tests/test_deprecations.py b/test/integration/012_deprecation_tests/test_deprecations.py index e11e9866922..fa47d24bd39 100644 --- a/test/integration/012_deprecation_tests/test_deprecations.py +++ b/test/integration/012_deprecation_tests/test_deprecations.py @@ -88,8 +88,7 @@ def models(self): @property def project_config(self): - # No config-version set! - return {} + return {'config-version': 1} @use_profile('postgres') def test_postgres_project_deprecations_fail(self): diff --git a/test/integration/014_hook_tests/test_model_hooks.py b/test/integration/014_hook_tests/test_model_hooks.py index 9adb74a65ac..2efce14aca7 100644 --- a/test/integration/014_hook_tests/test_model_hooks.py +++ b/test/integration/014_hook_tests/test_model_hooks.py @@ -267,6 +267,7 @@ class TestPrePostModelHooksInConfig(BaseTestPrePost): @property def project_config(self): return { + 'config-version': 2, 'macro-paths': ['macros'], } diff --git a/test/integration/016_macro_tests/test_macros.py b/test/integration/016_macro_tests/test_macros.py index 37a4b9534ee..c40f4270073 100644 --- a/test/integration/016_macro_tests/test_macros.py +++ b/test/integration/016_macro_tests/test_macros.py @@ -19,7 +19,10 @@ def models(self): def packages_config(self): return { 'packages': [ - {'git': 'https://github.com/fishtown-analytics/dbt-integration-project', 'warn-unpinned': False} + { + 'git': 'https://github.com/fishtown-analytics/dbt-integration-project', + 'revision': 'dbt/0.17.0', + }, ] } @@ -94,7 +97,10 @@ def models(self): def packages_config(self): return { 'packages': [ - {'git': 'https://github.com/fishtown-analytics/dbt-integration-project', 'warn-unpinned': False} + { + 'git': 'https://github.com/fishtown-analytics/dbt-integration-project', + 'revision': 'dbt/0.17.0', + } ] } diff --git a/test/integration/023_exit_codes_test/test_exit_codes.py b/test/integration/023_exit_codes_test/test_exit_codes.py index 4186a32b0e7..dfdaa4dbac3 100644 --- a/test/integration/023_exit_codes_test/test_exit_codes.py +++ b/test/integration/023_exit_codes_test/test_exit_codes.py @@ -109,7 +109,10 @@ def models(self): def packages_config(self): return { "packages": [ - {'git': 'https://github.com/fishtown-analytics/dbt-integration-project', 'warn-unpinned': False} + { + 'git': 'https://github.com/fishtown-analytics/dbt-integration-project', + 'revision': 'dbt/0.17.0', + } ] } diff --git a/test/integration/029_docs_generate_tests/test_docs_generate.py b/test/integration/029_docs_generate_tests/test_docs_generate.py index 153eefc5d6b..96999dcbb15 100644 --- a/test/integration/029_docs_generate_tests/test_docs_generate.py +++ b/test/integration/029_docs_generate_tests/test_docs_generate.py @@ -113,7 +113,7 @@ def packages_config(self): 'packages': [ { 'git': 'https://github.com/fishtown-analytics/dbt-integration-project', - 'warn-unpinned': False, + 'revision': 'dbt/0.17.0', }, ], } diff --git a/test/integration/033_event_tracking_test/test_events.py b/test/integration/033_event_tracking_test/test_events.py index d0c3b487966..5161129b9c9 100644 --- a/test/integration/033_event_tracking_test/test_events.py +++ b/test/integration/033_event_tracking_test/test_events.py @@ -178,7 +178,10 @@ class TestEventTrackingSuccess(TestEventTracking): def packages_config(self): return { 'packages': [ - {'git': 'https://github.com/fishtown-analytics/dbt-integration-project', 'warn-unpinned': False}, + { + 'git': 'https://github.com/fishtown-analytics/dbt-integration-project', + 'revision': 'dbt/0.17.0', + }, ], } @@ -242,7 +245,7 @@ def test__postgres_event_tracking_deps(self): 'data': { 'name': 'c5552991412d1cd86e5c20a87f3518d5', 'source': 'git', - 'version': 'eb0a191797624dd3a48fa681d3061212' + 'version': '6deb95629194572d44ca26c4bc25b573' } } ] diff --git a/test/integration/base.py b/test/integration/base.py index e6720db4f9f..bda9c47be93 100644 --- a/test/integration/base.py +++ b/test/integration/base.py @@ -17,6 +17,7 @@ import dbt.main as dbt import dbt.flags as flags +from dbt.deprecations import reset_deprecations from dbt.adapters.factory import get_adapter, reset_adapters, register_adapter from dbt.clients.jinja import template_cache from dbt.config import RuntimeConfig @@ -361,6 +362,7 @@ def setUp(self): raise self._created_schemas = set() + reset_deprecations() flags.reset() template_cache.clear() @@ -374,6 +376,7 @@ def use_default_project(self, overrides=None): base_project_config = { 'name': 'test', 'version': '1.0', + 'config-version': 2, 'test-paths': [], 'source-paths': [self.models], 'profile': 'test',