activerecord-dbt 0.3.0 → 0.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
 - data/README.md +103 -77
 - data/lib/active_record/dbt/column/{test.rb → data_test.rb} +16 -16
 - data/lib/active_record/dbt/column/{testable/accepted_values_testable.rb → data_testable/accepted_values_data_testable.rb} +2 -2
 - data/lib/active_record/dbt/column/{testable/not_null_testable.rb → data_testable/not_null_data_testable.rb} +2 -2
 - data/lib/active_record/dbt/column/{testable/relationships_testable.rb → data_testable/relationships_data_testable.rb} +3 -3
 - data/lib/active_record/dbt/column/{testable/unique_testable.rb → data_testable/unique_data_testable.rb} +2 -2
 - data/lib/active_record/dbt/column/{column.rb → yml.rb} +7 -7
 - data/lib/active_record/dbt/configuration/i18n_configuration.rb +1 -1
 - data/lib/active_record/dbt/dbt_package/dbt_utils/table/{testable/unique_combination_of_columns_testable.rb → data_testable/unique_combination_of_columns_data_testable.rb} +2 -2
 - data/lib/active_record/dbt/dbt_package/dbterd/column/{testable → data_testable}/relationships_meta_relationship_type.rb +2 -2
 - data/lib/active_record/dbt/factory/columns/yml_factory.rb +33 -0
 - data/lib/active_record/dbt/factory/model/staging/yml_factory.rb +24 -0
 - data/lib/active_record/dbt/factory/source/yml_factory.rb +17 -0
 - data/lib/active_record/dbt/factory/table/yml_factory.rb +18 -0
 - data/lib/active_record/dbt/factory/tables/yml_factory.rb +17 -0
 - data/lib/active_record/dbt/model/staging/base.rb +1 -1
 - data/lib/active_record/dbt/model/staging/yml.rb +5 -5
 - data/lib/active_record/dbt/seed/enum/base.rb +1 -1
 - data/lib/active_record/dbt/seed/enum/yml.rb +8 -8
 - data/lib/active_record/dbt/source/yml.rb +8 -4
 - data/lib/active_record/dbt/table/{test.rb → data_test.rb} +3 -3
 - data/lib/active_record/dbt/table/yml.rb +6 -6
 - data/lib/active_record/dbt/version.rb +1 -1
 - data/lib/generators/active_record/dbt/config/templates/source_config.yml.tt +2 -2
 - data/lib/generators/active_record/dbt/enum/USAGE +2 -2
 - data/lib/generators/active_record/dbt/initializer/templates/dbt.rb +9 -7
 - data/lib/generators/active_record/dbt/source/USAGE +1 -1
 - data/lib/generators/active_record/dbt/source/source_generator.rb +3 -4
 - data/lib/generators/active_record/dbt/staging_model/USAGE +2 -2
 - data/lib/generators/active_record/dbt/staging_model/staging_model_generator.rb +1 -1
 - metadata +16 -16
 - data/lib/active_record/dbt/factory/columns_factory.rb +0 -31
 - data/lib/active_record/dbt/factory/model/staging_factory.rb +0 -22
 - data/lib/active_record/dbt/factory/source_factory.rb +0 -15
 - data/lib/active_record/dbt/factory/table_factory.rb +0 -16
 - data/lib/active_record/dbt/factory/tables_factory.rb +0 -15
 
    
        checksums.yaml
    CHANGED
    
    | 
         @@ -1,7 +1,7 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            ---
         
     | 
| 
       2 
2 
     | 
    
         
             
            SHA256:
         
     | 
| 
       3 
     | 
    
         
            -
              metadata.gz:  
     | 
| 
       4 
     | 
    
         
            -
              data.tar.gz:  
     | 
| 
      
 3 
     | 
    
         
            +
              metadata.gz: 723d33af77e2e665a7baa13aeebdc892ebca6fad469622494591752e59ff3a4f
         
     | 
| 
      
 4 
     | 
    
         
            +
              data.tar.gz: f3ced61ce633c40e8464fd5280f200b062d073f96809fae300de2592c15a10bd
         
     | 
| 
       5 
5 
     | 
    
         
             
            SHA512:
         
     | 
| 
       6 
     | 
    
         
            -
              metadata.gz:  
     | 
| 
       7 
     | 
    
         
            -
              data.tar.gz:  
     | 
| 
      
 6 
     | 
    
         
            +
              metadata.gz: 38293faab98d461a080d9699401ac8c5fb8f59c8f1f19cda3a8ed082fd0ebc8041aaf13a9a1ecf57e484fd3f66c976404cc1c3697f7b97d8c4ae9106f942f165
         
     | 
| 
      
 7 
     | 
    
         
            +
              data.tar.gz: f966416f03dc58ba525488afac7f13df368607f1b57b3b6c6cf206a5ed56cf7757a52d20fab68f9463f9ab754f72eb622667b42e588abb02aa3a255d4e6c4c32
         
     | 
    
        data/README.md
    CHANGED
    
    | 
         @@ -84,16 +84,18 @@ Adjust the settings according to your environment. 
     | 
|
| 
       84 
84 
     | 
    
         
             
            ```ruby
         
     | 
| 
       85 
85 
     | 
    
         
             
            # frozen_string_literal: true
         
     | 
| 
       86 
86 
     | 
    
         | 
| 
       87 
     | 
    
         
            -
             
     | 
| 
       88 
     | 
    
         
            -
             
     | 
| 
       89 
     | 
    
         
            -
             
     | 
| 
       90 
     | 
    
         
            -
               
     | 
| 
       91 
     | 
    
         
            -
             
     | 
| 
       92 
     | 
    
         
            -
             
     | 
| 
       93 
     | 
    
         
            -
             
     | 
| 
       94 
     | 
    
         
            -
                 
     | 
| 
       95 
     | 
    
         
            -
             
     | 
| 
       96 
     | 
    
         
            -
             
     | 
| 
      
 87 
     | 
    
         
            +
            if Rails.env.development?
         
     | 
| 
      
 88 
     | 
    
         
            +
              require 'active_record/dbt'
         
     | 
| 
      
 89 
     | 
    
         
            +
             
     | 
| 
      
 90 
     | 
    
         
            +
              ActiveRecord::Dbt.configure do |c|
         
     | 
| 
      
 91 
     | 
    
         
            +
                c.config_directory_path = 'lib/dbt'
         
     | 
| 
      
 92 
     | 
    
         
            +
                c.export_directory_path = 'doc/dbt'
         
     | 
| 
      
 93 
     | 
    
         
            +
                c.data_sync_delayed = false
         
     | 
| 
      
 94 
     | 
    
         
            +
                c.used_dbt_package_names = [
         
     | 
| 
      
 95 
     | 
    
         
            +
                  'dbt-labs/dbt_utils',
         
     | 
| 
      
 96 
     | 
    
         
            +
                  'datnguye/dbterd'
         
     | 
| 
      
 97 
     | 
    
         
            +
                ]
         
     | 
| 
      
 98 
     | 
    
         
            +
              end
         
     | 
| 
       97 
99 
     | 
    
         
             
            end
         
     | 
| 
       98 
100 
     | 
    
         | 
| 
       99 
101 
     | 
    
         
             
            ```
         
     | 
| 
         @@ -110,8 +112,8 @@ This will create the following files. 
     | 
|
| 
       110 
112 
     | 
    
         | 
| 
       111 
113 
     | 
    
         
             
            File | Description
         
     | 
| 
       112 
114 
     | 
    
         
             
            --------- | ---------
         
     | 
| 
       113 
     | 
    
         
            -
            `#{config_directory_path}/source_config.yml` | Used to generate `#{export_directory_path}/src_#{source_name}.yml`.
         
     | 
| 
       114 
     | 
    
         
            -
            `#{config_directory_path}/staging_model.sql.tt` | Used to generate `#{export_directory_path}/stg_#{source_name}__#{table_name}.sql`.
         
     | 
| 
      
 115 
     | 
    
         
            +
            `#{config_directory_path}/source_config.yml` | Used to generate `#{export_directory_path}/models/sources/#{source_name}/src_#{source_name}.yml`.
         
     | 
| 
      
 116 
     | 
    
         
            +
            `#{config_directory_path}/staging_model.sql.tt` | Used to generate `#{export_directory_path}/models/staging/#{source_name}/stg_#{source_name}__#{table_name}.sql`.
         
     | 
| 
       115 
117 
     | 
    
         | 
| 
       116 
118 
     | 
    
         
             
            ### Generate dbt Source File
         
     | 
| 
       117 
119 
     | 
    
         | 
| 
         @@ -158,7 +160,7 @@ table_overrides: 
     | 
|
| 
       158 
160 
     | 
    
         
             
                    period: day
         
     | 
| 
       159 
161 
     | 
    
         
             
                columns:
         
     | 
| 
       160 
162 
     | 
    
         
             
                  created_at:
         
     | 
| 
       161 
     | 
    
         
            -
                     
     | 
| 
      
 163 
     | 
    
         
            +
                    data_tests:
         
     | 
| 
       162 
164 
     | 
    
         
             
                      - not_null:
         
     | 
| 
       163 
165 
     | 
    
         
             
                          where: 'id != 1'
         
     | 
| 
       164 
166 
     | 
    
         | 
| 
         @@ -251,7 +253,7 @@ table_overrides: 
     | 
|
| 
       251 
253 
     | 
    
         
             
                    period: day
         
     | 
| 
       252 
254 
     | 
    
         
             
                columns:
         
     | 
| 
       253 
255 
     | 
    
         
             
                  created_at:
         
     | 
| 
       254 
     | 
    
         
            -
                     
     | 
| 
      
 256 
     | 
    
         
            +
                    data_tests:
         
     | 
| 
       255 
257 
     | 
    
         
             
                      - not_null:
         
     | 
| 
       256 
258 
     | 
    
         
             
                          where: 'id != 1'
         
     | 
| 
       257 
259 
     | 
    
         | 
| 
         @@ -282,7 +284,7 @@ table_descriptions: 
     | 
|
| 
       282 
284 
     | 
    
         | 
| 
       283 
285 
     | 
    
         
             
            ```
         
     | 
| 
       284 
286 
     | 
    
         | 
| 
       285 
     | 
    
         
            -
            #### Generate `#{export_directory_path}/src_#{source_name}.yml`
         
     | 
| 
      
 287 
     | 
    
         
            +
            #### Generate `#{export_directory_path}/models/sources/#{source_name}/src_#{source_name}.yml`
         
     | 
| 
       286 
288 
     | 
    
         | 
| 
       287 
289 
     | 
    
         
             
            Generate a source file for dbt:
         
     | 
| 
       288 
290 
     | 
    
         | 
| 
         @@ -290,7 +292,7 @@ Generate a source file for dbt: 
     | 
|
| 
       290 
292 
     | 
    
         
             
            $ bin/rails generate active_record:dbt:source
         
     | 
| 
       291 
293 
     | 
    
         
             
            ```
         
     | 
| 
       292 
294 
     | 
    
         | 
| 
       293 
     | 
    
         
            -
            Generate `#{export_directory_path}/src_#{source_name}.yml`.
         
     | 
| 
      
 295 
     | 
    
         
            +
            Generate `#{export_directory_path}/models/sources/#{source_name}/src_#{source_name}.yml`.
         
     | 
| 
       294 
296 
     | 
    
         | 
| 
       295 
297 
     | 
    
         
             
            ##### Example:
         
     | 
| 
       296 
298 
     | 
    
         | 
| 
         @@ -298,6 +300,14 @@ Generate `#{export_directory_path}/src_#{source_name}.yml`. 
     | 
|
| 
       298 
300 
     | 
    
         
             
            >
         
     | 
| 
       299 
301 
     | 
    
         
             
            > The output will be as shown below. It is recommended to indent the YAML file with a tool of your choice.
         
     | 
| 
       300 
302 
     | 
    
         | 
| 
      
 303 
     | 
    
         
            +
            > [!WARNING]
         
     | 
| 
      
 304 
     | 
    
         
            +
            >
         
     | 
| 
      
 305 
     | 
    
         
            +
            > If you are using a version of dbt lower than v1.8, replace `tests:` with `data_tests:` in the generated file.
         
     | 
| 
      
 306 
     | 
    
         
            +
            >
         
     | 
| 
      
 307 
     | 
    
         
            +
            > [Add data tests to your DAG | dbt Developer Hub](https://docs.getdbt.com/docs/build/data-tests#new-data_tests-syntax)
         
     | 
| 
      
 308 
     | 
    
         
            +
            >
         
     | 
| 
      
 309 
     | 
    
         
            +
            >> Data tests were historically called "tests" in dbt as the only form of testing available. With the introduction of unit tests in v1.8, the key was renamed from `tests:` to `data_tests:`.
         
     | 
| 
      
 310 
     | 
    
         
            +
             
     | 
| 
       301 
311 
     | 
    
         
             
            ```yaml
         
     | 
| 
       302 
312 
     | 
    
         
             
            ---
         
     | 
| 
       303 
313 
     | 
    
         
             
            version: 2
         
     | 
| 
         @@ -318,7 +328,7 @@ sources: 
     | 
|
| 
       318 
328 
     | 
    
         
             
                - name: key
         
     | 
| 
       319 
329 
     | 
    
         
             
                  description: Key
         
     | 
| 
       320 
330 
     | 
    
         
             
                  data_type: string
         
     | 
| 
       321 
     | 
    
         
            -
                   
     | 
| 
      
 331 
     | 
    
         
            +
                  data_tests:
         
     | 
| 
       322 
332 
     | 
    
         
             
                  - unique
         
     | 
| 
       323 
333 
     | 
    
         
             
                  - not_null
         
     | 
| 
       324 
334 
     | 
    
         
             
                - name: value
         
     | 
| 
         @@ -327,12 +337,12 @@ sources: 
     | 
|
| 
       327 
337 
     | 
    
         
             
                - name: created_at
         
     | 
| 
       328 
338 
     | 
    
         
             
                  description: Created At
         
     | 
| 
       329 
339 
     | 
    
         
             
                  data_type: datetime
         
     | 
| 
       330 
     | 
    
         
            -
                   
     | 
| 
      
 340 
     | 
    
         
            +
                  data_tests:
         
     | 
| 
       331 
341 
     | 
    
         
             
                  - not_null
         
     | 
| 
       332 
342 
     | 
    
         
             
                - name: updated_at
         
     | 
| 
       333 
343 
     | 
    
         
             
                  description: Updated At
         
     | 
| 
       334 
344 
     | 
    
         
             
                  data_type: datetime
         
     | 
| 
       335 
     | 
    
         
            -
                   
     | 
| 
      
 345 
     | 
    
         
            +
                  data_tests:
         
     | 
| 
       336 
346 
     | 
    
         
             
                  - not_null
         
     | 
| 
       337 
347 
     | 
    
         
             
              - name: companies
         
     | 
| 
       338 
348 
     | 
    
         
             
                description: Write a logical_name of the 'companies' table.
         
     | 
| 
         @@ -340,13 +350,13 @@ sources: 
     | 
|
| 
       340 
350 
     | 
    
         
             
                - name: id
         
     | 
| 
       341 
351 
     | 
    
         
             
                  description: id
         
     | 
| 
       342 
352 
     | 
    
         
             
                  data_type: int64
         
     | 
| 
       343 
     | 
    
         
            -
                   
     | 
| 
      
 353 
     | 
    
         
            +
                  data_tests:
         
     | 
| 
       344 
354 
     | 
    
         
             
                  - unique
         
     | 
| 
       345 
355 
     | 
    
         
             
                  - not_null
         
     | 
| 
       346 
356 
     | 
    
         
             
                - name: name
         
     | 
| 
       347 
357 
     | 
    
         
             
                  description: Write a description of the 'companies.name' column.
         
     | 
| 
       348 
358 
     | 
    
         
             
                  data_type: string
         
     | 
| 
       349 
     | 
    
         
            -
                   
     | 
| 
      
 359 
     | 
    
         
            +
                  data_tests:
         
     | 
| 
       350 
360 
     | 
    
         
             
                  - not_null
         
     | 
| 
       351 
361 
     | 
    
         
             
                - name: establishment_date
         
     | 
| 
       352 
362 
     | 
    
         
             
                  description: Write a description of the 'companies.establishment_date' column.
         
     | 
| 
         @@ -357,7 +367,7 @@ sources: 
     | 
|
| 
       357 
367 
     | 
    
         
             
                - name: published
         
     | 
| 
       358 
368 
     | 
    
         
             
                  description: Write a description of the 'companies.published' column.
         
     | 
| 
       359 
369 
     | 
    
         
             
                  data_type: bool
         
     | 
| 
       360 
     | 
    
         
            -
                   
     | 
| 
      
 370 
     | 
    
         
            +
                  data_tests:
         
     | 
| 
       361 
371 
     | 
    
         
             
                  - not_null
         
     | 
| 
       362 
372 
     | 
    
         
             
                  - accepted_values:
         
     | 
| 
       363 
373 
     | 
    
         
             
                      values:
         
     | 
| 
         @@ -367,12 +377,12 @@ sources: 
     | 
|
| 
       367 
377 
     | 
    
         
             
                - name: created_at
         
     | 
| 
       368 
378 
     | 
    
         
             
                  description: Created At
         
     | 
| 
       369 
379 
     | 
    
         
             
                  data_type: datetime
         
     | 
| 
       370 
     | 
    
         
            -
                   
     | 
| 
      
 380 
     | 
    
         
            +
                  data_tests:
         
     | 
| 
       371 
381 
     | 
    
         
             
                  - not_null
         
     | 
| 
       372 
382 
     | 
    
         
             
                - name: updated_at
         
     | 
| 
       373 
383 
     | 
    
         
             
                  description: Updated At
         
     | 
| 
       374 
384 
     | 
    
         
             
                  data_type: datetime
         
     | 
| 
       375 
     | 
    
         
            -
                   
     | 
| 
      
 385 
     | 
    
         
            +
                  data_tests:
         
     | 
| 
       376 
386 
     | 
    
         
             
                  - not_null
         
     | 
| 
       377 
387 
     | 
    
         
             
              - name: posts
         
     | 
| 
       378 
388 
     | 
    
         
             
                description: Post
         
     | 
| 
         @@ -380,13 +390,13 @@ sources: 
     | 
|
| 
       380 
390 
     | 
    
         
             
                - name: id
         
     | 
| 
       381 
391 
     | 
    
         
             
                  description: ID
         
     | 
| 
       382 
392 
     | 
    
         
             
                  data_type: int64
         
     | 
| 
       383 
     | 
    
         
            -
                   
     | 
| 
      
 393 
     | 
    
         
            +
                  data_tests:
         
     | 
| 
       384 
394 
     | 
    
         
             
                  - unique
         
     | 
| 
       385 
395 
     | 
    
         
             
                  - not_null
         
     | 
| 
       386 
396 
     | 
    
         
             
                - name: user_id
         
     | 
| 
       387 
397 
     | 
    
         
             
                  description: User
         
     | 
| 
       388 
398 
     | 
    
         
             
                  data_type: int64
         
     | 
| 
       389 
     | 
    
         
            -
                   
     | 
| 
      
 399 
     | 
    
         
            +
                  data_tests:
         
     | 
| 
       390 
400 
     | 
    
         
             
                  - not_null
         
     | 
| 
       391 
401 
     | 
    
         
             
                  - relationships:
         
     | 
| 
       392 
402 
     | 
    
         
             
                      to: source('dummy', 'users')
         
     | 
| 
         @@ -402,17 +412,17 @@ sources: 
     | 
|
| 
       402 
412 
     | 
    
         
             
                - name: created_at
         
     | 
| 
       403 
413 
     | 
    
         
             
                  description: Post Created At
         
     | 
| 
       404 
414 
     | 
    
         
             
                  data_type: datetime
         
     | 
| 
       405 
     | 
    
         
            -
                   
     | 
| 
      
 415 
     | 
    
         
            +
                  data_tests:
         
     | 
| 
       406 
416 
     | 
    
         
             
                  - not_null
         
     | 
| 
       407 
417 
     | 
    
         
             
                - name: updated_at
         
     | 
| 
       408 
418 
     | 
    
         
             
                  description: Post Updated At
         
     | 
| 
       409 
419 
     | 
    
         
             
                  data_type: datetime
         
     | 
| 
       410 
     | 
    
         
            -
                   
     | 
| 
      
 420 
     | 
    
         
            +
                  data_tests:
         
     | 
| 
       411 
421 
     | 
    
         
             
                  - not_null
         
     | 
| 
       412 
422 
     | 
    
         
             
                - name: status
         
     | 
| 
       413 
423 
     | 
    
         
             
                  description: Write a description of the 'posts.status' column.
         
     | 
| 
       414 
424 
     | 
    
         
             
                  data_type: int64
         
     | 
| 
       415 
     | 
    
         
            -
                   
     | 
| 
      
 425 
     | 
    
         
            +
                  data_tests:
         
     | 
| 
       416 
426 
     | 
    
         
             
                  - accepted_values:
         
     | 
| 
       417 
427 
     | 
    
         
             
                      values:
         
     | 
| 
       418 
428 
     | 
    
         
             
                      - 0
         
     | 
| 
         @@ -421,7 +431,7 @@ sources: 
     | 
|
| 
       421 
431 
     | 
    
         
             
                      quote: false
         
     | 
| 
       422 
432 
     | 
    
         
             
              - name: posts_tags
         
     | 
| 
       423 
433 
     | 
    
         
             
                description: Write a logical_name of the 'posts_tags' table.
         
     | 
| 
       424 
     | 
    
         
            -
                 
     | 
| 
      
 434 
     | 
    
         
            +
                data_tests:
         
     | 
| 
       425 
435 
     | 
    
         
             
                - dbt_utils.unique_combination_of_columns:
         
     | 
| 
       426 
436 
     | 
    
         
             
                    combination_of_columns:
         
     | 
| 
       427 
437 
     | 
    
         
             
                    - post_id
         
     | 
| 
         @@ -430,7 +440,7 @@ sources: 
     | 
|
| 
       430 
440 
     | 
    
         
             
                - name: post_id
         
     | 
| 
       431 
441 
     | 
    
         
             
                  description: post_id
         
     | 
| 
       432 
442 
     | 
    
         
             
                  data_type: int64
         
     | 
| 
       433 
     | 
    
         
            -
                   
     | 
| 
      
 443 
     | 
    
         
            +
                  data_tests:
         
     | 
| 
       434 
444 
     | 
    
         
             
                  - not_null
         
     | 
| 
       435 
445 
     | 
    
         
             
                  - relationships:
         
     | 
| 
       436 
446 
     | 
    
         
             
                      to: source('dummy', 'posts')
         
     | 
| 
         @@ -443,7 +453,7 @@ sources: 
     | 
|
| 
       443 
453 
     | 
    
         
             
                - name: tag_id
         
     | 
| 
       444 
454 
     | 
    
         
             
                  description: tag_id
         
     | 
| 
       445 
455 
     | 
    
         
             
                  data_type: int64
         
     | 
| 
       446 
     | 
    
         
            -
                   
     | 
| 
      
 456 
     | 
    
         
            +
                  data_tests:
         
     | 
| 
       447 
457 
     | 
    
         
             
                  - not_null
         
     | 
| 
       448 
458 
     | 
    
         
             
                  - relationships:
         
     | 
| 
       449 
459 
     | 
    
         
             
                      to: source('dummy', 'tags')
         
     | 
| 
         @@ -459,13 +469,13 @@ sources: 
     | 
|
| 
       459 
469 
     | 
    
         
             
                - name: id
         
     | 
| 
       460 
470 
     | 
    
         
             
                  description: id
         
     | 
| 
       461 
471 
     | 
    
         
             
                  data_type: int64
         
     | 
| 
       462 
     | 
    
         
            -
                   
     | 
| 
      
 472 
     | 
    
         
            +
                  data_tests:
         
     | 
| 
       463 
473 
     | 
    
         
             
                  - unique
         
     | 
| 
       464 
474 
     | 
    
         
             
                  - not_null
         
     | 
| 
       465 
475 
     | 
    
         
             
                - name: user_id
         
     | 
| 
       466 
476 
     | 
    
         
             
                  description: user_id
         
     | 
| 
       467 
477 
     | 
    
         
             
                  data_type: int64
         
     | 
| 
       468 
     | 
    
         
            -
                   
     | 
| 
      
 478 
     | 
    
         
            +
                  data_tests:
         
     | 
| 
       469 
479 
     | 
    
         
             
                  - unique
         
     | 
| 
       470 
480 
     | 
    
         
             
                  - not_null
         
     | 
| 
       471 
481 
     | 
    
         
             
                  - relationships:
         
     | 
| 
         @@ -476,26 +486,26 @@ sources: 
     | 
|
| 
       476 
486 
     | 
    
         
             
                - name: first_name
         
     | 
| 
       477 
487 
     | 
    
         
             
                  description: Write a description of the 'profiles.first_name' column.
         
     | 
| 
       478 
488 
     | 
    
         
             
                  data_type: string
         
     | 
| 
       479 
     | 
    
         
            -
                   
     | 
| 
      
 489 
     | 
    
         
            +
                  data_tests:
         
     | 
| 
       480 
490 
     | 
    
         
             
                  - not_null
         
     | 
| 
       481 
491 
     | 
    
         
             
                - name: last_name
         
     | 
| 
       482 
492 
     | 
    
         
             
                  description: Write a description of the 'profiles.last_name' column.
         
     | 
| 
       483 
493 
     | 
    
         
             
                  data_type: string
         
     | 
| 
       484 
     | 
    
         
            -
                   
     | 
| 
      
 494 
     | 
    
         
            +
                  data_tests:
         
     | 
| 
       485 
495 
     | 
    
         
             
                  - not_null
         
     | 
| 
       486 
496 
     | 
    
         
             
                - name: created_at
         
     | 
| 
       487 
497 
     | 
    
         
             
                  description: Created At
         
     | 
| 
       488 
498 
     | 
    
         
             
                  data_type: datetime
         
     | 
| 
       489 
     | 
    
         
            -
                   
     | 
| 
      
 499 
     | 
    
         
            +
                  data_tests:
         
     | 
| 
       490 
500 
     | 
    
         
             
                  - not_null
         
     | 
| 
       491 
501 
     | 
    
         
             
                - name: updated_at
         
     | 
| 
       492 
502 
     | 
    
         
             
                  description: Updated At
         
     | 
| 
       493 
503 
     | 
    
         
             
                  data_type: datetime
         
     | 
| 
       494 
     | 
    
         
            -
                   
     | 
| 
      
 504 
     | 
    
         
            +
                  data_tests:
         
     | 
| 
       495 
505 
     | 
    
         
             
                  - not_null
         
     | 
| 
       496 
506 
     | 
    
         
             
              - name: relationships
         
     | 
| 
       497 
507 
     | 
    
         
             
                description: Write a logical_name of the 'relationships' table.
         
     | 
| 
       498 
     | 
    
         
            -
                 
     | 
| 
      
 508 
     | 
    
         
            +
                data_tests:
         
     | 
| 
       499 
509 
     | 
    
         
             
                - dbt_utils.unique_combination_of_columns:
         
     | 
| 
       500 
510 
     | 
    
         
             
                    combination_of_columns:
         
     | 
| 
       501 
511 
     | 
    
         
             
                    - follower_id
         
     | 
| 
         @@ -504,13 +514,13 @@ sources: 
     | 
|
| 
       504 
514 
     | 
    
         
             
                - name: id
         
     | 
| 
       505 
515 
     | 
    
         
             
                  description: id
         
     | 
| 
       506 
516 
     | 
    
         
             
                  data_type: int64
         
     | 
| 
       507 
     | 
    
         
            -
                   
     | 
| 
      
 517 
     | 
    
         
            +
                  data_tests:
         
     | 
| 
       508 
518 
     | 
    
         
             
                  - unique
         
     | 
| 
       509 
519 
     | 
    
         
             
                  - not_null
         
     | 
| 
       510 
520 
     | 
    
         
             
                - name: follower_id
         
     | 
| 
       511 
521 
     | 
    
         
             
                  description: follower_id
         
     | 
| 
       512 
522 
     | 
    
         
             
                  data_type: int64
         
     | 
| 
       513 
     | 
    
         
            -
                   
     | 
| 
      
 523 
     | 
    
         
            +
                  data_tests:
         
     | 
| 
       514 
524 
     | 
    
         
             
                  - not_null
         
     | 
| 
       515 
525 
     | 
    
         
             
                  - relationships:
         
     | 
| 
       516 
526 
     | 
    
         
             
                      to: source('dummy', 'users')
         
     | 
| 
         @@ -520,7 +530,7 @@ sources: 
     | 
|
| 
       520 
530 
     | 
    
         
             
                - name: followed_id
         
     | 
| 
       521 
531 
     | 
    
         
             
                  description: followed_id
         
     | 
| 
       522 
532 
     | 
    
         
             
                  data_type: int64
         
     | 
| 
       523 
     | 
    
         
            -
                   
     | 
| 
      
 533 
     | 
    
         
            +
                  data_tests:
         
     | 
| 
       524 
534 
     | 
    
         
             
                  - not_null
         
     | 
| 
       525 
535 
     | 
    
         
             
                  - relationships:
         
     | 
| 
       526 
536 
     | 
    
         
             
                      to: source('dummy', 'users')
         
     | 
| 
         @@ -530,12 +540,12 @@ sources: 
     | 
|
| 
       530 
540 
     | 
    
         
             
                - name: created_at
         
     | 
| 
       531 
541 
     | 
    
         
             
                  description: Created At
         
     | 
| 
       532 
542 
     | 
    
         
             
                  data_type: datetime
         
     | 
| 
       533 
     | 
    
         
            -
                   
     | 
| 
      
 543 
     | 
    
         
            +
                  data_tests:
         
     | 
| 
       534 
544 
     | 
    
         
             
                  - not_null
         
     | 
| 
       535 
545 
     | 
    
         
             
                - name: updated_at
         
     | 
| 
       536 
546 
     | 
    
         
             
                  description: Updated At
         
     | 
| 
       537 
547 
     | 
    
         
             
                  data_type: datetime
         
     | 
| 
       538 
     | 
    
         
            -
                   
     | 
| 
      
 548 
     | 
    
         
            +
                  data_tests:
         
     | 
| 
       539 
549 
     | 
    
         
             
                  - not_null
         
     | 
| 
       540 
550 
     | 
    
         
             
              - name: schema_migrations
         
     | 
| 
       541 
551 
     | 
    
         
             
                description: |-
         
     | 
| 
         @@ -546,7 +556,7 @@ sources: 
     | 
|
| 
       546 
556 
     | 
    
         
             
                - name: version
         
     | 
| 
       547 
557 
     | 
    
         
             
                  description: The version number of the migration.
         
     | 
| 
       548 
558 
     | 
    
         
             
                  data_type: string
         
     | 
| 
       549 
     | 
    
         
            -
                   
     | 
| 
      
 559 
     | 
    
         
            +
                  data_tests:
         
     | 
| 
       550 
560 
     | 
    
         
             
                  - unique
         
     | 
| 
       551 
561 
     | 
    
         
             
                  - not_null
         
     | 
| 
       552 
562 
     | 
    
         
             
              - name: tags
         
     | 
| 
         @@ -555,28 +565,28 @@ sources: 
     | 
|
| 
       555 
565 
     | 
    
         
             
                - name: id
         
     | 
| 
       556 
566 
     | 
    
         
             
                  description: id
         
     | 
| 
       557 
567 
     | 
    
         
             
                  data_type: int64
         
     | 
| 
       558 
     | 
    
         
            -
                   
     | 
| 
      
 568 
     | 
    
         
            +
                  data_tests:
         
     | 
| 
       559 
569 
     | 
    
         
             
                  - unique
         
     | 
| 
       560 
570 
     | 
    
         
             
                  - not_null
         
     | 
| 
       561 
571 
     | 
    
         
             
                - name: name
         
     | 
| 
       562 
572 
     | 
    
         
             
                  description: Write a description of the 'tags.name' column.
         
     | 
| 
       563 
573 
     | 
    
         
             
                  data_type: string
         
     | 
| 
       564 
     | 
    
         
            -
                   
     | 
| 
      
 574 
     | 
    
         
            +
                  data_tests:
         
     | 
| 
       565 
575 
     | 
    
         
             
                  - unique
         
     | 
| 
       566 
576 
     | 
    
         
             
                  - not_null
         
     | 
| 
       567 
577 
     | 
    
         
             
                - name: created_at
         
     | 
| 
       568 
578 
     | 
    
         
             
                  description: Created At
         
     | 
| 
       569 
579 
     | 
    
         
             
                  data_type: datetime
         
     | 
| 
       570 
     | 
    
         
            -
                   
     | 
| 
      
 580 
     | 
    
         
            +
                  data_tests:
         
     | 
| 
       571 
581 
     | 
    
         
             
                  - not_null
         
     | 
| 
       572 
582 
     | 
    
         
             
                - name: updated_at
         
     | 
| 
       573 
583 
     | 
    
         
             
                  description: Updated At
         
     | 
| 
       574 
584 
     | 
    
         
             
                  data_type: datetime
         
     | 
| 
       575 
     | 
    
         
            -
                   
     | 
| 
      
 585 
     | 
    
         
            +
                  data_tests:
         
     | 
| 
       576 
586 
     | 
    
         
             
                  - not_null
         
     | 
| 
       577 
587 
     | 
    
         
             
              - name: user_tags
         
     | 
| 
       578 
588 
     | 
    
         
             
                description: Write a logical_name of the 'user_tags' table.
         
     | 
| 
       579 
     | 
    
         
            -
                 
     | 
| 
      
 589 
     | 
    
         
            +
                data_tests:
         
     | 
| 
       580 
590 
     | 
    
         
             
                - dbt_utils.unique_combination_of_columns:
         
     | 
| 
       581 
591 
     | 
    
         
             
                    combination_of_columns:
         
     | 
| 
       582 
592 
     | 
    
         
             
                    - user_id
         
     | 
| 
         @@ -585,13 +595,13 @@ sources: 
     | 
|
| 
       585 
595 
     | 
    
         
             
                - name: id
         
     | 
| 
       586 
596 
     | 
    
         
             
                  description: id
         
     | 
| 
       587 
597 
     | 
    
         
             
                  data_type: int64
         
     | 
| 
       588 
     | 
    
         
            -
                   
     | 
| 
      
 598 
     | 
    
         
            +
                  data_tests:
         
     | 
| 
       589 
599 
     | 
    
         
             
                  - unique
         
     | 
| 
       590 
600 
     | 
    
         
             
                  - not_null
         
     | 
| 
       591 
601 
     | 
    
         
             
                - name: user_id
         
     | 
| 
       592 
602 
     | 
    
         
             
                  description: user_id
         
     | 
| 
       593 
603 
     | 
    
         
             
                  data_type: int64
         
     | 
| 
       594 
     | 
    
         
            -
                   
     | 
| 
      
 604 
     | 
    
         
            +
                  data_tests:
         
     | 
| 
       595 
605 
     | 
    
         
             
                  - not_null
         
     | 
| 
       596 
606 
     | 
    
         
             
                  - relationships:
         
     | 
| 
       597 
607 
     | 
    
         
             
                      to: source('dummy', 'users')
         
     | 
| 
         @@ -601,7 +611,7 @@ sources: 
     | 
|
| 
       601 
611 
     | 
    
         
             
                - name: tag_id
         
     | 
| 
       602 
612 
     | 
    
         
             
                  description: tag_id
         
     | 
| 
       603 
613 
     | 
    
         
             
                  data_type: int64
         
     | 
| 
       604 
     | 
    
         
            -
                   
     | 
| 
      
 614 
     | 
    
         
            +
                  data_tests:
         
     | 
| 
       605 
615 
     | 
    
         
             
                  - not_null
         
     | 
| 
       606 
616 
     | 
    
         
             
                  - relationships:
         
     | 
| 
       607 
617 
     | 
    
         
             
                      to: source('dummy', 'tags')
         
     | 
| 
         @@ -611,12 +621,12 @@ sources: 
     | 
|
| 
       611 
621 
     | 
    
         
             
                - name: created_at
         
     | 
| 
       612 
622 
     | 
    
         
             
                  description: Created At
         
     | 
| 
       613 
623 
     | 
    
         
             
                  data_type: datetime
         
     | 
| 
       614 
     | 
    
         
            -
                   
     | 
| 
      
 624 
     | 
    
         
            +
                  data_tests:
         
     | 
| 
       615 
625 
     | 
    
         
             
                  - not_null
         
     | 
| 
       616 
626 
     | 
    
         
             
                - name: updated_at
         
     | 
| 
       617 
627 
     | 
    
         
             
                  description: Updated At
         
     | 
| 
       618 
628 
     | 
    
         
             
                  data_type: datetime
         
     | 
| 
       619 
     | 
    
         
            -
                   
     | 
| 
      
 629 
     | 
    
         
            +
                  data_tests:
         
     | 
| 
       620 
630 
     | 
    
         
             
                  - not_null
         
     | 
| 
       621 
631 
     | 
    
         
             
              - name: users
         
     | 
| 
       622 
632 
     | 
    
         
             
                description: User
         
     | 
| 
         @@ -632,24 +642,24 @@ sources: 
     | 
|
| 
       632 
642 
     | 
    
         
             
                - name: id
         
     | 
| 
       633 
643 
     | 
    
         
             
                  description: ID
         
     | 
| 
       634 
644 
     | 
    
         
             
                  data_type: int64
         
     | 
| 
       635 
     | 
    
         
            -
                   
     | 
| 
      
 645 
     | 
    
         
            +
                  data_tests:
         
     | 
| 
       636 
646 
     | 
    
         
             
                  - unique
         
     | 
| 
       637 
647 
     | 
    
         
             
                  - not_null
         
     | 
| 
       638 
648 
     | 
    
         
             
                - name: created_at
         
     | 
| 
       639 
649 
     | 
    
         
             
                  description: User Created At
         
     | 
| 
       640 
650 
     | 
    
         
             
                  data_type: datetime
         
     | 
| 
       641 
     | 
    
         
            -
                   
     | 
| 
      
 651 
     | 
    
         
            +
                  data_tests:
         
     | 
| 
       642 
652 
     | 
    
         
             
                  - not_null:
         
     | 
| 
       643 
653 
     | 
    
         
             
                      where: id != 1
         
     | 
| 
       644 
654 
     | 
    
         
             
                - name: updated_at
         
     | 
| 
       645 
655 
     | 
    
         
             
                  description: User Updated At
         
     | 
| 
       646 
656 
     | 
    
         
             
                  data_type: datetime
         
     | 
| 
       647 
     | 
    
         
            -
                   
     | 
| 
      
 657 
     | 
    
         
            +
                  data_tests:
         
     | 
| 
       648 
658 
     | 
    
         
             
                  - not_null
         
     | 
| 
       649 
659 
     | 
    
         
             
                - name: company_id
         
     | 
| 
       650 
660 
     | 
    
         
             
                  description: company_id
         
     | 
| 
       651 
661 
     | 
    
         
             
                  data_type: int64
         
     | 
| 
       652 
     | 
    
         
            -
                   
     | 
| 
      
 662 
     | 
    
         
            +
                  data_tests:
         
     | 
| 
       653 
663 
     | 
    
         
             
                  - relationships:
         
     | 
| 
       654 
664 
     | 
    
         
             
                      to: source('dummy', 'companies')
         
     | 
| 
       655 
665 
     | 
    
         
             
                      field: id
         
     | 
| 
         @@ -748,8 +758,8 @@ Generate staging model files for dbt that reference the specified `TABLE_NAME`. 
     | 
|
| 
       748 
758 
     | 
    
         | 
| 
       749 
759 
     | 
    
         
             
            File | Description
         
     | 
| 
       750 
760 
     | 
    
         
             
            --------- | ---------
         
     | 
| 
       751 
     | 
    
         
            -
            `#{export_directory_path}/stg_#{source_name}__#{table_name}.sql` | Staging model file for dbt.
         
     | 
| 
       752 
     | 
    
         
            -
            `#{export_directory_path}/stg_#{source_name}__#{table_name}.yml` | Staging model documentation file for dbt.
         
     | 
| 
      
 761 
     | 
    
         
            +
            `#{export_directory_path}/models/staging/#{source_name}/stg_#{source_name}__#{table_name}.sql` | Staging model file for dbt.
         
     | 
| 
      
 762 
     | 
    
         
            +
            `#{export_directory_path}/models/staging/#{source_name}/stg_#{source_name}__#{table_name}.yml` | Staging model documentation file for dbt.
         
     | 
| 
       753 
763 
     | 
    
         | 
| 
       754 
764 
     | 
    
         
             
            Example:
         
     | 
| 
       755 
765 
     | 
    
         | 
| 
         @@ -757,7 +767,7 @@ Example: 
     | 
|
| 
       757 
767 
     | 
    
         
             
            $ bin/rails generate active_record:dbt:staging_model profiles
         
     | 
| 
       758 
768 
     | 
    
         
             
            ```
         
     | 
| 
       759 
769 
     | 
    
         | 
| 
       760 
     | 
    
         
            -
            ##### Generate `#{export_directory_path}/stg_#{source_name}__#{table_name}.sql`
         
     | 
| 
      
 770 
     | 
    
         
            +
            ##### Generate `#{export_directory_path}/models/staging/#{source_name}/stg_#{source_name}__#{table_name}.sql`
         
     | 
| 
       761 
771 
     | 
    
         | 
| 
       762 
772 
     | 
    
         
             
            Example:
         
     | 
| 
       763 
773 
     | 
    
         | 
| 
         @@ -828,7 +838,7 @@ from final 
     | 
|
| 
       828 
838 
     | 
    
         | 
| 
       829 
839 
     | 
    
         
             
            ```
         
     | 
| 
       830 
840 
     | 
    
         | 
| 
       831 
     | 
    
         
            -
            ##### Generate `#{export_directory_path}/stg_#{source_name}__#{table_name}.yml`
         
     | 
| 
      
 841 
     | 
    
         
            +
            ##### Generate `#{export_directory_path}/models/staging/#{source_name}/stg_#{source_name}__#{table_name}.yml`
         
     | 
| 
       832 
842 
     | 
    
         | 
| 
       833 
843 
     | 
    
         
             
            Example:
         
     | 
| 
       834 
844 
     | 
    
         | 
| 
         @@ -836,6 +846,14 @@ Example: 
     | 
|
| 
       836 
846 
     | 
    
         
             
            >
         
     | 
| 
       837 
847 
     | 
    
         
             
            > The output will be as shown below. It is recommended to indent the YAML file with a tool of your choice.
         
     | 
| 
       838 
848 
     | 
    
         | 
| 
      
 849 
     | 
    
         
            +
            > [!WARNING]
         
     | 
| 
      
 850 
     | 
    
         
            +
            >
         
     | 
| 
      
 851 
     | 
    
         
            +
            > If you are using a version of dbt lower than v1.8, replace `tests:` with `data_tests:` in the generated file.
         
     | 
| 
      
 852 
     | 
    
         
            +
            >
         
     | 
| 
      
 853 
     | 
    
         
            +
            > [Add data tests to your DAG | dbt Developer Hub](https://docs.getdbt.com/docs/build/data-tests#new-data_tests-syntax)
         
     | 
| 
      
 854 
     | 
    
         
            +
            >
         
     | 
| 
      
 855 
     | 
    
         
            +
            >> Data tests were historically called "tests" in dbt as the only form of testing available. With the introduction of unit tests in v1.8, the key was renamed from `tests:` to `data_tests:`.
         
     | 
| 
      
 856 
     | 
    
         
            +
             
     | 
| 
       839 
857 
     | 
    
         
             
            ```yaml
         
     | 
| 
       840 
858 
     | 
    
         
             
            ---
         
     | 
| 
       841 
859 
     | 
    
         
             
            version: 2
         
     | 
| 
         @@ -846,7 +864,7 @@ models: 
     | 
|
| 
       846 
864 
     | 
    
         
             
              - name: profile_id
         
     | 
| 
       847 
865 
     | 
    
         
             
                description: profile_id
         
     | 
| 
       848 
866 
     | 
    
         
             
                data_type: int64
         
     | 
| 
       849 
     | 
    
         
            -
                 
     | 
| 
      
 867 
     | 
    
         
            +
                data_tests:
         
     | 
| 
       850 
868 
     | 
    
         
             
                - unique
         
     | 
| 
       851 
869 
     | 
    
         
             
                - not_null
         
     | 
| 
       852 
870 
     | 
    
         
             
                - relationships:
         
     | 
| 
         @@ -857,7 +875,7 @@ models: 
     | 
|
| 
       857 
875 
     | 
    
         
             
              - name: user_id
         
     | 
| 
       858 
876 
     | 
    
         
             
                description: user_id
         
     | 
| 
       859 
877 
     | 
    
         
             
                data_type: int64
         
     | 
| 
       860 
     | 
    
         
            -
                 
     | 
| 
      
 878 
     | 
    
         
            +
                data_tests:
         
     | 
| 
       861 
879 
     | 
    
         
             
                - unique
         
     | 
| 
       862 
880 
     | 
    
         
             
                - not_null
         
     | 
| 
       863 
881 
     | 
    
         
             
                - relationships:
         
     | 
| 
         @@ -868,22 +886,22 @@ models: 
     | 
|
| 
       868 
886 
     | 
    
         
             
              - name: first_name
         
     | 
| 
       869 
887 
     | 
    
         
             
                description: Write a description of the 'profiles.first_name' column.
         
     | 
| 
       870 
888 
     | 
    
         
             
                data_type: string
         
     | 
| 
       871 
     | 
    
         
            -
                 
     | 
| 
      
 889 
     | 
    
         
            +
                data_tests:
         
     | 
| 
       872 
890 
     | 
    
         
             
                - not_null
         
     | 
| 
       873 
891 
     | 
    
         
             
              - name: last_name
         
     | 
| 
       874 
892 
     | 
    
         
             
                description: Write a description of the 'profiles.last_name' column.
         
     | 
| 
       875 
893 
     | 
    
         
             
                data_type: string
         
     | 
| 
       876 
     | 
    
         
            -
                 
     | 
| 
      
 894 
     | 
    
         
            +
                data_tests:
         
     | 
| 
       877 
895 
     | 
    
         
             
                - not_null
         
     | 
| 
       878 
896 
     | 
    
         
             
              - name: created_at
         
     | 
| 
       879 
897 
     | 
    
         
             
                description: Created At
         
     | 
| 
       880 
898 
     | 
    
         
             
                data_type: datetime
         
     | 
| 
       881 
     | 
    
         
            -
                 
     | 
| 
      
 899 
     | 
    
         
            +
                data_tests:
         
     | 
| 
       882 
900 
     | 
    
         
             
                - not_null
         
     | 
| 
       883 
901 
     | 
    
         
             
              - name: updated_at
         
     | 
| 
       884 
902 
     | 
    
         
             
                description: Updated At
         
     | 
| 
       885 
903 
     | 
    
         
             
                data_type: datetime
         
     | 
| 
       886 
     | 
    
         
            -
                 
     | 
| 
      
 904 
     | 
    
         
            +
                data_tests:
         
     | 
| 
       887 
905 
     | 
    
         
             
                - not_null
         
     | 
| 
       888 
906 
     | 
    
         | 
| 
       889 
907 
     | 
    
         
             
            ```
         
     | 
| 
         @@ -933,8 +951,8 @@ Generate seed enum files for dbt from the specified `TABLE_NAME` and `ENUM_COLUM 
     | 
|
| 
       933 
951 
     | 
    
         | 
| 
       934 
952 
     | 
    
         
             
            File | Description
         
     | 
| 
       935 
953 
     | 
    
         
             
            --------- | ---------
         
     | 
| 
       936 
     | 
    
         
            -
            `#{export_directory_path}/seed_#{source_name}__#{table_name_singularize}_enum_#{enum_pluralized}.csv` | Seed enum file for dbt.
         
     | 
| 
       937 
     | 
    
         
            -
            `#{export_directory_path}/seed_#{source_name}__#{table_name_singularize}_enum_#{enum_pluralized}.yml` | Seed enum documentation file for dbt.
         
     | 
| 
      
 954 
     | 
    
         
            +
            `#{export_directory_path}/seeds/#{source_name}/seed_#{source_name}__#{table_name_singularize}_enum_#{enum_pluralized}.csv` | Seed enum file for dbt.
         
     | 
| 
      
 955 
     | 
    
         
            +
            `#{export_directory_path}/seeds/#{source_name}/seed_#{source_name}__#{table_name_singularize}_enum_#{enum_pluralized}.yml` | Seed enum documentation file for dbt.
         
     | 
| 
       938 
956 
     | 
    
         | 
| 
       939 
957 
     | 
    
         
             
            Example:
         
     | 
| 
       940 
958 
     | 
    
         | 
| 
         @@ -942,7 +960,7 @@ Example: 
     | 
|
| 
       942 
960 
     | 
    
         
             
            $ bin/rails generate active_record:dbt:enum posts status
         
     | 
| 
       943 
961 
     | 
    
         
             
            ```
         
     | 
| 
       944 
962 
     | 
    
         | 
| 
       945 
     | 
    
         
            -
            ##### Generate `#{export_directory_path}/seed_#{source_name}__#{table_name_singularize}_enum_#{enum_pluralized}.csv`
         
     | 
| 
      
 963 
     | 
    
         
            +
            ##### Generate `#{export_directory_path}/seeds/#{source_name}/seed_#{source_name}__#{table_name_singularize}_enum_#{enum_pluralized}.csv`
         
     | 
| 
       946 
964 
     | 
    
         | 
| 
       947 
965 
     | 
    
         
             
            Example:
         
     | 
| 
       948 
966 
     | 
    
         | 
| 
         @@ -954,7 +972,7 @@ status_before_type_of_cast,status_key,status_en,status_ja 
     | 
|
| 
       954 
972 
     | 
    
         | 
| 
       955 
973 
     | 
    
         
             
            ```
         
     | 
| 
       956 
974 
     | 
    
         | 
| 
       957 
     | 
    
         
            -
            ##### Generate `#{export_directory_path}/seed_#{source_name}__#{table_name_singularize}_enum_#{enum_pluralized}.yml`
         
     | 
| 
      
 975 
     | 
    
         
            +
            ##### Generate `#{export_directory_path}/seeds/#{source_name}/seed_#{source_name}__#{table_name_singularize}_enum_#{enum_pluralized}.yml`
         
     | 
| 
       958 
976 
     | 
    
         | 
| 
       959 
977 
     | 
    
         
             
            Example:
         
     | 
| 
       960 
978 
     | 
    
         | 
| 
         @@ -962,6 +980,14 @@ Example: 
     | 
|
| 
       962 
980 
     | 
    
         
             
            >
         
     | 
| 
       963 
981 
     | 
    
         
             
            > The output will be as shown below. It is recommended to indent the YAML file with a tool of your choice.
         
     | 
| 
       964 
982 
     | 
    
         | 
| 
      
 983 
     | 
    
         
            +
            > [!WARNING]
         
     | 
| 
      
 984 
     | 
    
         
            +
            >
         
     | 
| 
      
 985 
     | 
    
         
            +
            > If you are using a version of dbt lower than v1.8, replace `tests:` with `data_tests:` in the generated file.
         
     | 
| 
      
 986 
     | 
    
         
            +
            >
         
     | 
| 
      
 987 
     | 
    
         
            +
            > [Add data tests to your DAG | dbt Developer Hub](https://docs.getdbt.com/docs/build/data-tests#new-data_tests-syntax)
         
     | 
| 
      
 988 
     | 
    
         
            +
            >
         
     | 
| 
      
 989 
     | 
    
         
            +
            >> Data tests were historically called "tests" in dbt as the only form of testing available. With the introduction of unit tests in v1.8, the key was renamed from `tests:` to `data_tests:`.
         
     | 
| 
      
 990 
     | 
    
         
            +
             
     | 
| 
       965 
991 
     | 
    
         
             
            ```yaml
         
     | 
| 
       966 
992 
     | 
    
         
             
            ---
         
     | 
| 
       967 
993 
     | 
    
         
             
            version: 2
         
     | 
| 
         @@ -977,22 +1003,22 @@ seeds: 
     | 
|
| 
       977 
1003 
     | 
    
         
             
            columns:
         
     | 
| 
       978 
1004 
     | 
    
         
             
            - name: status_before_type_of_cast
         
     | 
| 
       979 
1005 
     | 
    
         
             
              description: Status
         
     | 
| 
       980 
     | 
    
         
            -
               
     | 
| 
      
 1006 
     | 
    
         
            +
              data_tests:
         
     | 
| 
       981 
1007 
     | 
    
         
             
              - unique
         
     | 
| 
       982 
1008 
     | 
    
         
             
              - not_null
         
     | 
| 
       983 
1009 
     | 
    
         
             
            - name: status_key
         
     | 
| 
       984 
1010 
     | 
    
         
             
              description: Status(key)
         
     | 
| 
       985 
     | 
    
         
            -
               
     | 
| 
      
 1011 
     | 
    
         
            +
              data_tests:
         
     | 
| 
       986 
1012 
     | 
    
         
             
              - unique
         
     | 
| 
       987 
1013 
     | 
    
         
             
              - not_null
         
     | 
| 
       988 
1014 
     | 
    
         
             
            - name: status_en
         
     | 
| 
       989 
1015 
     | 
    
         
             
              description: Status(en)
         
     | 
| 
       990 
     | 
    
         
            -
               
     | 
| 
      
 1016 
     | 
    
         
            +
              data_tests:
         
     | 
| 
       991 
1017 
     | 
    
         
             
              - unique
         
     | 
| 
       992 
1018 
     | 
    
         
             
              - not_null
         
     | 
| 
       993 
1019 
     | 
    
         
             
            - name: status_ja
         
     | 
| 
       994 
1020 
     | 
    
         
             
              description: Status(ja)
         
     | 
| 
       995 
     | 
    
         
            -
               
     | 
| 
      
 1021 
     | 
    
         
            +
              data_tests:
         
     | 
| 
       996 
1022 
     | 
    
         
             
              - unique
         
     | 
| 
       997 
1023 
     | 
    
         
             
              - not_null
         
     | 
| 
       998 
1024 
     | 
    
         | 
| 
         @@ -3,11 +3,11 @@ 
     | 
|
| 
       3 
3 
     | 
    
         
             
            module ActiveRecord
         
     | 
| 
       4 
4 
     | 
    
         
             
              module Dbt
         
     | 
| 
       5 
5 
     | 
    
         
             
                module Column
         
     | 
| 
       6 
     | 
    
         
            -
                  class  
     | 
| 
       7 
     | 
    
         
            -
                    include ActiveRecord::Dbt::Column:: 
     | 
| 
       8 
     | 
    
         
            -
                    include ActiveRecord::Dbt::Column:: 
     | 
| 
       9 
     | 
    
         
            -
                    include ActiveRecord::Dbt::Column:: 
     | 
| 
       10 
     | 
    
         
            -
                    include ActiveRecord::Dbt::Column:: 
     | 
| 
      
 6 
     | 
    
         
            +
                  class DataTest
         
     | 
| 
      
 7 
     | 
    
         
            +
                    include ActiveRecord::Dbt::Column::DataTestable::AcceptedValuesDataTestable
         
     | 
| 
      
 8 
     | 
    
         
            +
                    include ActiveRecord::Dbt::Column::DataTestable::NotNullDataTestable
         
     | 
| 
      
 9 
     | 
    
         
            +
                    include ActiveRecord::Dbt::Column::DataTestable::RelationshipsDataTestable
         
     | 
| 
      
 10 
     | 
    
         
            +
                    include ActiveRecord::Dbt::Column::DataTestable::UniqueDataTestable
         
     | 
| 
       11 
11 
     | 
    
         | 
| 
       12 
12 
     | 
    
         
             
                    attr_reader :table_name, :column, :primary_keys, :foreign_keys
         
     | 
| 
       13 
13 
     | 
    
         | 
| 
         @@ -22,15 +22,15 @@ module ActiveRecord 
     | 
|
| 
       22 
22 
     | 
    
         
             
                      @config = ActiveRecord::Dbt::Config.instance
         
     | 
| 
       23 
23 
     | 
    
         
             
                    end
         
     | 
| 
       24 
24 
     | 
    
         | 
| 
       25 
     | 
    
         
            -
                    def  
     | 
| 
       26 
     | 
    
         
            -
                      ( 
     | 
| 
       27 
     | 
    
         
            -
                         
     | 
| 
      
 25 
     | 
    
         
            +
                    def properties
         
     | 
| 
      
 26 
     | 
    
         
            +
                      (data_tests.keys | data_tests_overrides_hash.keys).map do |key|
         
     | 
| 
      
 27 
     | 
    
         
            +
                        data_tests_overrides_hash[key] || data_tests[key]
         
     | 
| 
       28 
28 
     | 
    
         
             
                      end.presence
         
     | 
| 
       29 
29 
     | 
    
         
             
                    end
         
     | 
| 
       30 
30 
     | 
    
         | 
| 
       31 
31 
     | 
    
         
             
                    private
         
     | 
| 
       32 
32 
     | 
    
         | 
| 
       33 
     | 
    
         
            -
                    def  
     | 
| 
      
 33 
     | 
    
         
            +
                    def data_tests
         
     | 
| 
       34 
34 
     | 
    
         
             
                      {
         
     | 
| 
       35 
35 
     | 
    
         
             
                        'unique_test' => unique_test,
         
     | 
| 
       36 
36 
     | 
    
         
             
                        'not_null_test' => not_null_test,
         
     | 
| 
         @@ -39,10 +39,10 @@ module ActiveRecord 
     | 
|
| 
       39 
39 
     | 
    
         
             
                      }.compact
         
     | 
| 
       40 
40 
     | 
    
         
             
                    end
         
     | 
| 
       41 
41 
     | 
    
         | 
| 
       42 
     | 
    
         
            -
                    def  
     | 
| 
       43 
     | 
    
         
            -
                      @ 
     | 
| 
       44 
     | 
    
         
            -
                         
     | 
| 
       45 
     | 
    
         
            -
                          "#{extract_key( 
     | 
| 
      
 42 
     | 
    
         
            +
                    def data_tests_overrides_hash
         
     | 
| 
      
 43 
     | 
    
         
            +
                      @data_tests_overrides_hash ||=
         
     | 
| 
      
 44 
     | 
    
         
            +
                        data_tests_overrides.index_by do |data_tests_override|
         
     | 
| 
      
 45 
     | 
    
         
            +
                          "#{extract_key(data_tests_override)}_test"
         
     | 
| 
       46 
46 
     | 
    
         
             
                        end
         
     | 
| 
       47 
47 
     | 
    
         
             
                    end
         
     | 
| 
       48 
48 
     | 
    
         | 
| 
         @@ -50,9 +50,9 @@ module ActiveRecord 
     | 
|
| 
       50 
50 
     | 
    
         
             
                      item.is_a?(Hash) ? item.keys.first : item
         
     | 
| 
       51 
51 
     | 
    
         
             
                    end
         
     | 
| 
       52 
52 
     | 
    
         | 
| 
       53 
     | 
    
         
            -
                    def  
     | 
| 
       54 
     | 
    
         
            -
                      @ 
     | 
| 
       55 
     | 
    
         
            -
                        source_config.dig(:table_overrides, table_name, :columns, column_name, : 
     | 
| 
      
 53 
     | 
    
         
            +
                    def data_tests_overrides
         
     | 
| 
      
 54 
     | 
    
         
            +
                      @data_tests_overrides ||=
         
     | 
| 
      
 55 
     | 
    
         
            +
                        source_config.dig(:table_overrides, table_name, :columns, column_name, :data_tests) ||
         
     | 
| 
       56 
56 
     | 
    
         
             
                        []
         
     | 
| 
       57 
57 
     | 
    
         
             
                    end
         
     | 
| 
       58 
58 
     | 
    
         
             
                  end
         
     | 
| 
         @@ -3,8 +3,8 @@ 
     | 
|
| 
       3 
3 
     | 
    
         
             
            module ActiveRecord
         
     | 
| 
       4 
4 
     | 
    
         
             
              module Dbt
         
     | 
| 
       5 
5 
     | 
    
         
             
                module Column
         
     | 
| 
       6 
     | 
    
         
            -
                  module  
     | 
| 
       7 
     | 
    
         
            -
                    module  
     | 
| 
      
 6 
     | 
    
         
            +
                  module DataTestable
         
     | 
| 
      
 7 
     | 
    
         
            +
                    module AcceptedValuesDataTestable
         
     | 
| 
       8 
8 
     | 
    
         
             
                      extend ActiveRecord::Dbt::RequiredMethods
         
     | 
| 
       9 
9 
     | 
    
         | 
| 
       10 
10 
     | 
    
         
             
                      define_required_methods :@config, :column, :table_name, :column_name
         
     | 
| 
         @@ -3,9 +3,9 @@ 
     | 
|
| 
       3 
3 
     | 
    
         
             
            module ActiveRecord
         
     | 
| 
       4 
4 
     | 
    
         
             
              module Dbt
         
     | 
| 
       5 
5 
     | 
    
         
             
                module Column
         
     | 
| 
       6 
     | 
    
         
            -
                  module  
     | 
| 
       7 
     | 
    
         
            -
                    module  
     | 
| 
       8 
     | 
    
         
            -
                      include ActiveRecord::Dbt::DbtPackage::Dbterd::Column:: 
     | 
| 
      
 6 
     | 
    
         
            +
                  module DataTestable
         
     | 
| 
      
 7 
     | 
    
         
            +
                    module RelationshipsDataTestable
         
     | 
| 
      
 8 
     | 
    
         
            +
                      include ActiveRecord::Dbt::DbtPackage::Dbterd::Column::DataTestable::RelationshipsMetaRelationshipType
         
     | 
| 
       9 
9 
     | 
    
         | 
| 
       10 
10 
     | 
    
         
             
                      extend ActiveRecord::Dbt::RequiredMethods
         
     | 
| 
       11 
11 
     | 
    
         |