-
Notifications
You must be signed in to change notification settings - Fork 1.2k
feat: Add integration tests for dbt import with local dbt project #5877
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
Conversation
Co-authored-by: franciscojavierarceo <4163062+franciscojavierarceo@users.noreply.github.com>
Co-authored-by: franciscojavierarceo <4163062+franciscojavierarceo@users.noreply.github.com>
Co-authored-by: franciscojavierarceo <4163062+franciscojavierarceo@users.noreply.github.com>
|
@YassinNouh21 mind reviewing? |
| with: | ||
| enable-cache: true | ||
|
|
||
| - name: Install dependencies |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@copilot we should use the Makefile to install dependencies here
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Updated to use make install-python-dependencies-ci in commit 621cefb.
| path: ':memory:' | ||
| threads: 1 | ||
|
|
||
| bigquery_test: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@copilot we should noly test with the sqlite setup, no need for us to use bigquery or snowflake imo
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Removed BigQuery and Snowflake profiles, kept only DuckDB setup in commit e25d08f.
Co-authored-by: franciscojavierarceo <4163062+franciscojavierarceo@users.noreply.github.com>
| uv pip install --system -e "." | ||
| uv pip install --system dbt-artifacts-parser pytest pytest-xdist | ||
|
|
||
| - name: Run dbt integration tests |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@copillot we should also run the standard dbt commands; i.e,.
dbt run
dbt build
dbt testafter that we should then test the new feast cli and test that feast materialization works from a dbt model into a sqlite online store.
Co-authored-by: franciscojavierarceo <4163062+franciscojavierarceo@users.noreply.github.com>
What this PR does / why we need it:
Adds comprehensive integration tests for the dbt import feature (PR #5827), which previously lacked end-to-end testing with actual dbt project structure.
Changes
Test Infrastructure
sdk/python/tests/integration/dbt/with 600+ lines covering:feast,ml,recommendations)Test dbt Project
test_dbt_project/with 3 models:driver_features: INT types, multiple tagscustomer_features: STRING entityproduct_features: FLOAT32, tag filtering testCI/CD
dbt-integration-tests.ymlmake install-python-dependencies-ci)Bug Fixes
PytestUnhandledCoroutineWarningfrom pytest.iniTest Example
Which issue(s) this PR fixes:
Related to #3335
Misc
Comprehensive documentation added for test structure and dbt project. The manifest.json format may need minor schema adjustments for dbt-artifacts-parser v0.12.0 compatibility, but test logic and infrastructure are production-ready.
Original prompt
💬 We'd love your input! Share your thoughts on Copilot coding agent in our 2 minute survey.