Skip to content

AI-1169 bump version

7973e3a
Select commit
Loading
Failed to load commit list.
Sign in for the full log view
Merged

AI-1169 Add link in run_job tool, update JobDetail to fit the schema #185

AI-1169 bump version
7973e3a
Select commit
Loading
Failed to load commit list.
GitHub Actions / Test results (3.11) succeeded Jun 27, 2025 in 1s

212 passed, 0 failed and 0 skipped

Tests passed successfully

✅ ./test-results.xml

212 tests were completed in 3s with 212 passed, 0 failed and 0 skipped.

Test suite Passed Failed Skipped Time
pytest 212✅ 3s

✅ pytest

tests.test_client.TestRawKeboolaClient
  ✅ test_raise_for_status_500_with_exception_id
  ✅ test_raise_for_status_500_without_exception_id
  ✅ test_raise_for_status_500_with_malformed_json
  ✅ test_raise_for_status_404_uses_standard_exception
  ✅ test_get_method_integration_with_enhanced_error_handling
tests.test_config.TestConfig
  ✅ test_from_dict[d0-expected0]
  ✅ test_from_dict[d1-expected1]
  ✅ test_from_dict[d2-expected2]
  ✅ test_from_dict[d3-expected3]
  ✅ test_from_dict[d4-expected4]
  ✅ test_from_dict[d5-expected5]
  ✅ test_replace_by[orig0-d0-expected0]
  ✅ test_replace_by[orig1-d1-expected1]
  ✅ test_replace_by[orig2-d2-expected2]
  ✅ test_replace_by[orig3-d3-expected3]
  ✅ test_defaults
  ✅ test_no_token_password_in_repr
  ✅ test_url_field
tests.test_errors
  ✅ test_tool_errors[function_with_value_error-General recovery message.-recovery_instructions0-Check that data has valid types.-Simulated ValueError]
  ✅ test_tool_errors[function_with_value_error-General recovery message.-recovery_instructions1-General recovery message.-Simulated ValueError]
  ✅ test_tool_errors[function_with_value_error-None-recovery_instructions2-Check that data has valid types.-Simulated ValueError]
  ✅ test_tool_errors[function_with_value_error-None-recovery_instructions3-None-Simulated ValueError]
  ✅ test_logging_on_tool_exception
tests.test_oauth.TestSimpleOAuthProvider
  ✅ test_load_authorization_code[auth_code0-secret-expected0]
  ✅ test_load_authorization_code[auth_code1-secret-expected1]
  ✅ test_load_authorization_code[auth_code2-secret-expected2]
  ✅ test_load_authorization_code[auth_code3-!@#$%^&-None]
tests.test_server.TestServer
  ✅ test_list_tools
  ✅ test_tools_have_descriptions
tests.test_server
  ✅ test_with_session_state[config0-envs0]
  ✅ test_with_session_state[config1-envs1]
  ✅ test_with_session_state[config2-envs2]
  ✅ test_with_session_state[config3-envs3]
  ✅ test_keboola_injection_and_lifespan[os_environ_params0-expected_params0]
  ✅ test_keboola_injection_and_lifespan[os_environ_params1-expected_params1]
tests.tools.components.test_tools
  ✅ test_list_configs_by_types
  ✅ test_list_transformations
  ✅ test_list_configs_from_ids
  ✅ test_list_transformations_from_ids
  ✅ test_get_config
  ✅ test_create_sql_transformation[Snowflake-keboola.snowflake-transformation-1234]
  ✅ test_create_sql_transformation[BigQuery-keboola.google-bigquery-transformation-5678]
  ✅ test_create_sql_transformation_fail[Unknown]
  ✅ test_update_sql_transformation[Snowflake-keboola.snowflake-transformation]
  ✅ test_update_sql_transformation[BigQuery-keboola.google-bigquery-transformation]
  ✅ test_get_config_examples
tests.tools.components.test_utils
  ✅ test_handle_component_types[application-expected0]
  ✅ test_handle_component_types[component_type1-expected1]
  ✅ test_handle_component_types[None-expected2]
  ✅ test_handle_component_types[component_type3-expected3]
  ✅ test_get_transformation_configuration[sql_statements0-created_table_names0-test name-out.c-test-name]
  ✅ test_get_transformation_configuration[sql_statements1-created_table_names1-test name two-out.c-test-name-two]
  ✅ test_get_transformation_configuration[sql_statements2-created_table_names2-test name-out.c-test-name]
  ✅ test_clean_bucket_name[!@#$%^&*()+,./;'[]"\\`-]
  ✅ test_clean_bucket_name[a_--a_-]
  ✅ test_clean_bucket_name[1234567890-1234567890]
  ✅ test_clean_bucket_name[test_table_1-test_table_1]
  ✅ test_clean_bucket_name[test:-Table-1!-test-Table-1]
  ✅ test_clean_bucket_name[test Test-test-Test]
  ✅ test_clean_bucket_name[__test_test-test_test]
  ✅ test_clean_bucket_name[--test-test---test-test]
  ✅ test_clean_bucket_name[+\u011b\u0161\u010d\u0159\u017e\xfd\xe1\xed\xe9-escrzyaie]
  ✅ test_transformation_configuration_serialization[sql_statements]
  ✅ test_transformation_configuration_serialization[script]
tests.tools.components.test_validation
  ✅ test_load_schema[storage-schema.json-expected_keywords0]
  ✅ test_validate_storage_valid[tests/resources/storage/storage_valid_1.json]
  ✅ test_validate_storage_valid[tests/resources/storage/storage_valid_2.json]
  ✅ test_validate_storage_valid[tests/resources/storage/storage_valid_3.json]
  ✅ test_validate_storage_valid[tests/resources/storage/storage_valid_4.json]
  ✅ test_validate_storage_invalid[tests/resources/storage/storage_invalid_1.json]
  ✅ test_validate_storage_invalid[tests/resources/storage/storage_invalid_2.json]
  ✅ test_validate_storage_invalid[tests/resources/storage/storage_invalid_3.json]
  ✅ test_validate_storage_invalid[tests/resources/storage/storage_invalid_4.json]
  ✅ test_validate_storage_invalid[tests/resources/storage/storage_invalid_5.json]
  ✅ test_validate_storage_invalid[tests/resources/storage/storage_invalid_6.json]
  ✅ test_validate_storage_invalid[tests/resources/storage/storage_invalid_7.json]
  ✅ test_validate_storage_output_format[input_storage0-output_storage0]
  ✅ test_validate_storage_output_format[input_storage1-output_storage1]
  ✅ test_validate_parameters_output_format[input_parameters0-output_parameters0]
  ✅ test_validate_parameters_output_format[input_parameters1-output_parameters1]
  ✅ test_validate_flow_valid[tests/resources/flow/flow_valid_1.json]
  ✅ test_validate_flow_valid[tests/resources/flow/flow_valid_2.json]
  ✅ test_validate_flow_valid[tests/resources/flow/flow_valid_3.json]
  ✅ test_validate_flow_invalid[tests/resources/flow/flow_invalid_1.json]
  ✅ test_validate_flow_invalid[tests/resources/flow/flow_invalid_2.json]
  ✅ test_validate_flow_invalid[tests/resources/flow/flow_invalid_3.json]
  ✅ test_validate_flow_invalid[tests/resources/flow/flow_invalid_4.json]
  ✅ test_validate_flow_invalid[tests/resources/flow/flow_invalid_5.json]
  ✅ test_validate_flow_invalid[tests/resources/flow/flow_invalid_6.json]
  ✅ test_validate_json_against_schema_invalid_schema
  ✅ test_recoverable_validation_error_str
  ✅ test_normalize_schema[input_schema0-expected_schema0]
  ✅ test_normalize_schema[input_schema1-expected_schema1]
  ✅ test_normalize_schema[input_schema2-expected_schema2]
  ✅ test_normalize_schema[input_schema3-expected_schema3]
  ✅ test_normalize_schema[input_schema4-expected_schema4]
  ✅ test_normalize_schema[input_schema5-expected_schema5]
  ✅ test_normalize_schema[input_schema6-expected_schema6]
  ✅ test_normalize_schema[input_schema7-expected_schema7]
  ✅ test_normalize_schema[input_schema8-expected_schema8]
  ✅ test_normalize_schema[input_schema9-expected_schema9]
  ✅ test_normalize_schema[input_schema10-expected_schema10]
  ✅ test_normalize_schema_invalid_parameters[input_schema0]
  ✅ test_normalize_schema_invalid_parameters[input_schema1]
  ✅ test_schema_validation[tests/resources/parameters/root_parameters_schema.json-json_data0]
  ✅ test_schema_validation[tests/resources/parameters/row_parameters_schema.json-json_data1]
  ✅ test_validate_row_parameters[tests/resources/parameters/row_parameters_schema.json-tests/resources/parameters/row_parameters_valid.json-True]
  ✅ test_validate_row_parameters[tests/resources/parameters/row_parameters_schema.json-tests/resources/parameters/row_parameters_invalid.json-False]
  ✅ test_validate_root_parameters[tests/resources/parameters/root_parameters_schema.json-tests/resources/parameters/root_parameters_valid.json-True]
  ✅ test_validate_root_parameters[tests/resources/parameters/root_parameters_schema.json-tests/resources/parameters/root_parameters_invalid.json-False]
  ✅ test_validate_storage_configuration_output[input_storage0-output_storage0]
  ✅ test_validate_storage_configuration_output[input_storage1-output_storage1]
  ✅ test_validate_storage_configuration_output[input_storage2-output_storage2]
  ✅ test_validate_storage_configuration_output[None-output_storage3]
  ✅ test_validate_storage_configuration_output[input_storage4-output_storage4]
  ✅ test_validate_storage_of_row_based_and_root_based_writers[False-storage0-False-None]
  ✅ test_validate_storage_of_row_based_and_root_based_writers[False-storage1-False-The "storage" must contain "input" mappings for the root configuration of the writer component]
  ✅ test_validate_storage_of_row_based_and_root_based_writers[False-storage2-True-None]
  ✅ test_validate_storage_of_row_based_and_root_based_writers[True-storage3-True-None]
  ✅ test_validate_storage_of_row_based_and_root_based_writers[True-storage4-True-The "storage" must contain "input" mappings for the row configuration of the writer component]
  ✅ test_validate_storage_of_sql_transformation[storage0-False]
  ✅ test_validate_storage_of_sql_transformation[storage1-False]
  ✅ test_validate_storage_of_sql_transformation[storage2-False]
  ✅ test_validate_storage_of_sql_transformation[storage3-False]
  ✅ test_validate_storage_of_sql_transformation[storage4-False]
  ✅ test_validate_storage_of_sql_transformation[storage5-False]
  ✅ test_validate_storage_of_sql_transformation[storage6-False]
  ✅ test_validate_storage_of_sql_transformation[storage7-True]
  ✅ test_validate_storage_of_sql_transformation[storage8-True]
  ✅ test_validate_root_parameters_configuration_output[input_parameters0-output_parameters0]
  ✅ test_validate_root_parameters_configuration_output[input_parameters1-output_parameters1]
  ✅ test_validate_row_parameters_configuration_output[input_parameters0-output_parameters0]
  ✅ test_validate_row_parameters_configuration_output[input_parameters1-output_parameters1]
  ✅ test_validate_parameters_configuration_no_schema[None]
  ✅ test_validate_parameters_configuration_no_schema[input_schema1]
  ✅ test_validate_parameters_root_real_scenario[tests/resources/parameters/root_parameters_invalid.json-True-False]
  ✅ test_validate_parameters_root_real_scenario[tests/resources/parameters/root_parameters_invalid.json-False-False]
  ✅ test_validate_parameters_root_real_scenario[tests/resources/parameters/root_parameters_valid.json-True-True]
  ✅ test_validate_parameters_root_real_scenario[tests/resources/parameters/root_parameters_valid.json-False-True]
tests.tools.flow.test_model.TestFlowModels
  ✅ test_flow_configuration_response_model_validate
  ✅ test_reduced_flow_model_validate
  ✅ test_empty_flow_model_validate
tests.tools.flow.test_tools.TestFlowTools
  ✅ test_create_flow
  ✅ test_list_flows_all
  ✅ test_list_flows_specific_ids
  ✅ test_list_flows_with_missing_id
  ✅ test_get_flow
  ✅ test_update_flow
tests.tools.flow.test_tools.TestFlowEdgeCases
  ✅ test_create_flow_with_invalid_structure
tests.tools.flow.test_tools
  ✅ test_complete_flow_workflow
tests.tools.flow.test_utils.TestFlowHelpers
  ✅ test_ensure_phase_ids_with_missing_ids
  ✅ test_ensure_phase_ids_with_existing_ids
  ✅ test_ensure_task_ids_with_missing_ids
  ✅ test_ensure_task_ids_adds_default_mode
  ✅ test_ensure_task_ids_validates_required_fields
  ✅ test_validate_flow_structure_success
  ✅ test_validate_flow_structure_invalid_phase_dependency
  ✅ test_validate_flow_structure_invalid_task_phase
tests.tools.flow.test_utils.TestCircularDependencies
  ✅ test_no_circular_dependencies
  ✅ test_direct_circular_dependency
  ✅ test_indirect_circular_dependency
  ✅ test_self_referencing_dependency
  ✅ test_complex_valid_dependencies
tests.tools.flow.test_utils.TestFlowEdgeCases
  ✅ test_phase_validation_with_missing_name
  ✅ test_task_validation_with_missing_name
  ✅ test_empty_flow_validation
tests.tools.test_doc
  ✅ test_docs_query
tests.tools.test_jobs
  ✅ test_list_jobs
  ✅ test_get_job
  ✅ test_list_jobs_with_component_and_config_id
  ✅ test_list_jobs_with_component_id_without_config_id
  ✅ test_run_job
  ✅ test_run_job_fail
  ✅ test_job_detail_model_validate_dict_fields[result-input_value0-expected_result0]
  ✅ test_job_detail_model_validate_dict_fields[result-input_value1-expected_result1]
  ✅ test_job_detail_model_validate_dict_fields[result-input_value2-expected_result2]
  ✅ test_job_detail_model_validate_dict_fields[result-None-expected_result3]
  ✅ test_job_detail_model_validate_dict_fields[result-input_value4-ValueError]
  ✅ test_job_detail_model_validate_dict_fields[configData-input_value5-expected_result5]
  ✅ test_job_detail_model_validate_dict_fields[configData-input_value6-expected_result6]
  ✅ test_job_detail_model_validate_dict_fields[configData-input_value7-ValueError]
tests.tools.test_project
  ✅ test_get_project_info
tests.tools.test_sql
  ✅ test_query_data[select 1;-result0-a\r\n1\r\n]
  ✅ test_query_data[select id, name, email from user;-result1-id,name,email\r\n1,John,[email protected]\r\n2,Joe,[email protected]\r\n]
  ✅ test_query_data[create table foo (id integer, name varchar);-result2-message\r\n1 table created\r\n]
  ✅ test_get_sql_dialect[snowflake]
  ✅ test_get_sql_dialect[biq-query]
  ✅ test_get_sql_dialect[foo]
tests.tools.test_sql.TestWorkspaceManagerSnowflake
  ✅ test_get_sql_dialect
  ✅ test_get_quoted_name
  ✅ test_get_table_fqn[table0-sapi_result0-expected0]
  ✅ test_get_table_fqn[table1-sapi_result1-expected1]
  ✅ test_get_table_fqn[table2-sapi_result2-expected2]
  ✅ test_execute_query[select id, name, email from user;-expected0]
  ✅ test_execute_query[create table foo (id integer, name varchar);-expected1]
  ✅ test_execute_query[bla bla bla-expected2]
tests.tools.test_sql.TestWorkspaceManagerBigQuery
  ✅ test_get_sql_dialect
  ✅ test_get_quoted_name
  ✅ test_get_table_fqn[table0-expected0]
  ✅ test_get_table_fqn[table1-expected1]
  ✅ test_execute_query[select id, name, email from user;-expected0]
  ✅ test_execute_query[CREATE TABLE `foo` (id INT64, name STRING);-expected1]
  ✅ test_execute_query[bla bla bla-expected2]
tests.tools.test_storage
  ✅ test_get_bucket[bucket1]
  ✅ test_get_bucket[bucket2]
  ✅ test_list_buckets
  ✅ test_get_table
  ✅ test_list_tables[sapi_response0-expected0]
  ✅ test_list_tables[sapi_response1-expected1]
  ✅ test_update_bucket_description_success
  ✅ test_update_table_description_success
  ✅ test_update_column_description_success