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

Rest catalog integration testing #1469

Open
wants to merge 6 commits into
base: main
Choose a base branch
from

Conversation

AhmedNader42
Copy link
Contributor

This PR resolves #1439 by adding integration tests for the REST Catalog.

Functionality testing against the server can be simulated to a certain degree, but some checks are very hard to emulate for example, triggering a 500 response from the server or getting information from the request which is abstracted away by the catalog.

Here is the lists of the tests that were successfully created in this integration testing:

  1. test_create_namespace_200
  2. test_create_namespace_if_exists_409
  3. test_list_namespaces_200
  4. test_create_namespace_409
  5. test_drop_namespace_404
  6. test_drop_namespace_409
  7. test_load_namespace_properties_200
  8. test_load_namespace_properties_404
  9. test_update_namespace_properties_200
  10. test_update_namespace_properties_404
  11. test_namespace_exists_204
  12. test_namespace_exists_404
  13. test_namespace_empty
  14. test_load_table_200
  15. test_load_table_honor_access_delegation
  16. test_load_table_from_self_identifier_200
  17. test_list_tables_200
  18. test_list_tables_200_sigv4
  19. test_list_tables_404
  20. test_load_table_404
  21. test_table_exists_204
  22. test_table_exists_404
  23. test_drop_table_404
  24. test_create_table_200
  25. test_create_table_with_given_location_removes_trailing_slash_200
  26. test_create_staged_table_200
  27. test_create_table_409
  28. test_create_table_if_not_exists_200
  29. test_delete_namespace_204
  30. test_delete_table_204
  31. test_delete_table_from_self_identifier_204
  32. test_delete_table_404
  33. test_rename_table_200
  34. test_rename_table_from_self_identifier_200
  35. test_create_table_missing_namespace
  36. test_load_table_invalid_namespace
  37. test_drop_table_invalid_namespace
  38. test_purge_table_invalid_namespace
  39. test_create_namespace_invalid_namespace
  40. test_drop_namespace_invalid_namespace
  41. test_load_namespace_properties_invalid_namespace
  42. test_update_namespace_properties_invalid_namespace
  43. test_request_session_with_ssl_client_cert
  44. test_create_namespace_if_not_exists
  45. test_create_namespace_if_already_existing
  46. test_list_views_200_sigv4
  47. test_list_views_404
  48. test_drop_view_invalid_namespace
  49. test_drop_view_404
  50. test_properties_sets_headers
  51. test_no_uri_supplied

There are some tests that are either skipped or were not applicable to the integration test or producing incorrect results.

Here is the full list:

  1. test_catalog_from_environment_variables
  2. test_catalog_from_environment_variables_override
  3. test_catalog_from_parameters_empty_env
  4. test_config_200
  5. test_config_sets_headers
  6. test_create_table_419
  7. test_drop_view_204
  8. test_list_namespace_with_parent_200
  9. test_list_namespaces_token_expired
  10. test_list_views_200
  11. test_namespace_exists_200
  12. test_namespace_exists_500
  13. test_register_table_200
  14. test_register_table_409
  15. test_request_session_with_ssl_ca_bundle
  16. test_table_exists_200
  17. test_table_exists_500
  18. test_table_identifier_in_commit_table_request
  19. test_token_200
  20. test_token_200_w_auth_url
  21. test_token_200_without_optional_fields
  22. test_token_400
  23. test_token_401
  24. test_token_with_custom_scope
  25. test_token_with_default_scope
  26. test_token_with_optional_oauth_params
  27. test_token_with_optional_oauth_params_as_empty

@AhmedNader42
Copy link
Contributor Author

I had a look at the failing tests, and it appears the issue is in the sigv4 authentication option. But I can't reproduce it on local.

Any ideas where to proceed from here?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Add REST catalog integration tests
1 participant