def setup_commit_point_tests(tmpdir, mocker): (oracle_processor, mock_target_db, mockargv, mock_audit_factory, mock_audit_db) = cdc_utils.setup_dependencies(tmpdir, mocker, None, None, None) at_auditcommitpoint_mock = mocker.patch.object(PostgresCdcApplier, 'at_auditcommitpoint') at_auditcommitpoint_mock.return_value = True is_end_of_batch_mock = mocker.patch( 'data_pipeline.applier.applier._is_end_of_batch') is_end_of_batch_mock.return_value = True end_batch_mock = mocker.patch.object(PostgresCdcApplier, '_end_batch') end_batch_mock.return_value = True can_apply_mock = mocker.patch.object(PostgresCdcApplier, '_can_apply') can_apply_mock.return_valule = True oracle_message = OracleMessage() config = { 'value.return_value': oracle_message.serialise(), 'offset.return_value': 1 } mock_message = mocker.Mock(**config) yield (PostgresCdcApplier(oracle_processor, mock_target_db, mockargv, mock_audit_factory), mock_target_db, mock_message, mock_audit_db)
def test_default_next_offset_to_read(tmpdir, mocker): """Override the default setup because we want to mock out the the query result of _get_last_apply_record to return nothing """ (oracle_processor, mock_target_db, mockargv, mock_audit_factory, mock_audit_db) = cdc_utils.setup_dependencies(tmpdir, mocker, None, None, None) def execute_query_se(sql, arraysize, bind_variables): print("Query executed: {}".format(sql)) if "SELECT executor_run_id, executor_status, status" in sql: mock_query_results_config = {'fetchone.return_value': None} return mocker.Mock(**mock_query_results_config) raise Exception("Query '{}' is not supported in mock!".format(sql)) mock_db_config = {'execute_query.side_effect': execute_query_se} mock_db = mocker.Mock(**mock_db_config) mock_db_factory = mocker.patch("data_pipeline.audit.factory.db_factory") mock_db_factory.build.return_value = mock_db postgres_applier = PostgresCdcApplier(oracle_processor, mock_target_db, mockargv, mock_audit_factory) offset = postgres_applier.next_offset_to_read assert offset != confluent_kafka.OFFSET_END assert offset is None
def setup(tmpdir, mocker): (oracle_processor, mock_target_db, mockargv, mock_audit_factory, mock_audit_db) = cdc_utils.setup_dependencies(tmpdir, mocker, None, None, None) yield (PostgresCdcApplier(oracle_processor, mock_target_db, mockargv, mock_audit_factory), mock_target_db, mock_audit_db)
def setup_bulkapply(tmpdir, mocker): bulk_apply_config = {'bulkapply': True} (oracle_processor, mock_target_db, mockargv, mock_audit_factory, mock_audit_db) = cdc_utils.setup_dependencies(tmpdir, mocker, None, None, bulk_apply_config) yield (PostgresCdcApplier(oracle_processor, mock_target_db, mockargv, mock_audit_factory), mock_target_db, mock_audit_db)
def setup_skipbatch(tmpdir, mocker): skip_batch_config = {'skipbatch': 1} (oracle_processor, mock_target_db, mockargv, mock_audit_factory, mock_audit_db) = cdc_utils.setup_dependencies(tmpdir, mocker, None, None, skip_batch_config) yield (PostgresCdcApplier(oracle_processor, mock_target_db, mockargv, mock_audit_factory), mock_target_db, mock_audit_db)
def setup_inactive_applied_tables(tmpdir, mocker): inactive_applied_tables = set() inactive_applied_tables.add('ctl.inactive_table') (oracle_processor, mock_target_db, mockargv, mock_audit_factory, mock_audit_db) = cdc_utils.setup_dependencies(tmpdir, mocker, None, inactive_applied_tables, None) yield (PostgresCdcApplier(oracle_processor, mock_target_db, mockargv, mock_audit_factory), mock_target_db, mock_audit_db)
def setup_metacols(tmpdir, mocker): metacols = { 'insert_timestamp_column': 'ctl_ins_ts', 'update_timestamp_column': 'ctl_upd_ts' } (oracle_processor, mock_target_db, mockargv, mock_audit_factory, mock_audit_db) = cdc_utils.setup_dependencies(tmpdir, mocker, metacols, None, None) yield (PostgresCdcApplier(oracle_processor, mock_target_db, mockargv, mock_audit_factory), mock_target_db, mock_audit_db)