Skip to content
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

Set up automated integration testing #1

Closed
clausherther opened this issue Oct 23, 2020 · 5 comments · Fixed by #159
Closed

Set up automated integration testing #1

clausherther opened this issue Oct 23, 2020 · 5 comments · Fixed by #159
Labels
help wanted Extra attention is needed

Comments

@clausherther
Copy link
Contributor

We should set up Github Actions or something similar to allow us to kick off integration tests. This could be triggered to avoid BigQuery charges, or automated (at least for Postgres)

@clausherther clausherther added the help wanted Extra attention is needed label Nov 2, 2020
@nysthee
Copy link
Contributor

nysthee commented Apr 9, 2021

I would like to work on this!

@sgoley
Copy link

sgoley commented Jul 13, 2021

Hey, github explorer & dbt fan here.

I know what Dylan Baker over at Spectacles did was for bigquery column / schema tests was to run queries with limit 0 appended. Basically, the query would succeed but return no data.

I think this could be used for your schema expectation tests without incurring charges?

@clausherther
Copy link
Contributor Author

Hi @sgoley, interesting! I think in our case though, we need all the data to come back from both the test model as well as the test output, so I'm not super sure where we'd inject the limit 0? Btw, on BigQuery, limit n has no effect on cost.

@makotonium
Copy link
Contributor

@clausherther I am curious to see how this is coming, and I may be able to offer help on getting something set up. How are you currently testing locally? Maybe we could replicate that as a start on GitHub Actions.

@clausherther
Copy link
Contributor Author

Hi @makotonium ! I haven't made much any progress here, since it hasn't been a blocker for development (yet). So far, I'm testing against my own BigQuery and Snowflake instances (in addition to a local postgres instance) which hasn't incurred any costs yet. I think your other note on documentation updates is probably much more impactful to the broader package user community, so if you had to chose a project, that's the one I'd direct the most energy to! :)

@clausherther clausherther linked a pull request Apr 2, 2022 that will close this issue
clausherther added a commit that referenced this issue Apr 4, 2022
…y_n_datepart` (#141)

* implement exclusion_condition (#1)

* move exclusion_condition to closing statement

* Update README.md

* Create expect_column_set_to_be_unique_case_insensitive.sql (#138)

* Create expect_column_set_to_be_unique_case_insensitive.sql

* adjusting consistent casing test and documentation

* adjusting formatting and adding integration test

* Fix formatting

* Formatting updates

* adjusting Readme and adding test instance

* Fix spelling

Co-authored-by: clausherther <claus@calogica.com>

* Change check for data date out of range to use timestamp (#145)

* Update CHANGELOG.md

* Update CHANGELOG.md

* Update CHANGELOG.md

* Added partition by in lag tests (#146)

* Added partition by parameter

* Added documentation

* Modified the test to accept list instead of string

* created data and implemented tests

* corrected test in yml

* Update formatting, test data and test macro

Co-authored-by: clausherther <claus@calogica.com>

* Update CHANGELOG.md

* Update CHANGELOG.md

* Fix emails.sql (#153)

* Adds test for column presence (#149)

* add test for column not to exist

* Update expect_table_columns_not_to_contain_set.sql

* Update README.md

* name change and inner joined

* update readme

* update test

* Fix expect_row_values_to_have_recent_data issues on bigquery (#147)

* Add datetime and timestamp test columns

* Convert all evals to timestamps

* Add datatypes

* Update schema tests

* Update CHANGELOG.md

* Update README.md

* Add pre-commit config (#156)

* Add github actions workflow (#159)

* Add github workflow

* Remove pre-commit

* Add .circleci/config.yml (#161)

* Add .circleci/config.yml

* Remove github action

* Update postgres test

* Add dbt install

* Add env variables

* Install dbt dependencies

* Empty postgres password

* Upgrade postgres image

* Update connection settings

* Fix postgres profile

* Move profiles

* Add BigQuery run

* Fix job name

* Update key path

* Update config

* Update schema

* Add Snowflake tests

* Update profile

* Add back postgres

* Show group_by columns in validation errors for column increasing test (#158)

* Show group_by columns in validation errors for column increasing test

* Add github actions workflow (#159)

* Add github workflow

* Remove pre-commit

* Show group_by columns in validation errors for column increasing test

* Add .circleci/config.yml (#161)

* Add .circleci/config.yml

* Remove github action

* Update postgres test

* Add dbt install

* Add env variables

* Install dbt dependencies

* Empty postgres password

* Upgrade postgres image

* Update connection settings

* Fix postgres profile

* Move profiles

* Add BigQuery run

* Fix job name

* Update key path

* Update config

* Update schema

* Add Snowflake tests

* Update profile

* Add back postgres

* Show group_by columns in validation errors for column increasing test

* Jinja whitespace update (to force CI)

Co-authored-by: Claus Herther <claus@calogica.com>

* implement exclusion_condition (#1)

* move exclusion_condition to closing statement

* Update README.md

* Add integration test

Co-authored-by: agusfigueroa-htg <77272542+agusfigueroa-htg@users.noreply.github.com>
Co-authored-by: clausherther <claus@calogica.com>
Co-authored-by: Josh Jones <josh.jones@accenture.com>
Co-authored-by: Lucas Larbodiere <62683844+Lucasthenoob@users.noreply.github.com>
Co-authored-by: Randy Caddell <64412616+rcaddell@users.noreply.github.com>
Co-authored-by: dluftspring <daniel.luftspring@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
help wanted Extra attention is needed
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants