"""vjsk_file_check用テストフィクスチャoverride"""


import os

import boto3
import pytest


@pytest.fixture
def s3_client():
    conn = boto3.client('s3')
    yield conn


@pytest.fixture
def bucket_name():
    return os.environ["JSKULT_DATA_BUCKET"]


@pytest.fixture
def receive_folder():
    return os.environ["JSKULT_DATA_FOLDER_RECV"]


# TODO 共通fixtureにして15個固定でput/delete、各個別fixtureで15個から引き算でdeleteする
@pytest.fixture
def init_check_received_files_ok1(s3_client, bucket_name, receive_folder):
    # setup

    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/stock_slip_data_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/slip_data_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/org_cnv_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/vop_hco_merge_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/whs_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/hld_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/fcl_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/mkr_org_horizon_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/tran_kbn_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/phm_prd_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/phm_price_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/whs_customer_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/mdb_conv_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/bio_slip_data_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/lot_num_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')

    yield

    # treadown

    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/stock_slip_data_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/slip_data_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/org_cnv_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/vop_hco_merge_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/whs_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/hld_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/fcl_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/mkr_org_horizon_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/tran_kbn_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/phm_prd_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/phm_price_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/whs_customer_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/mdb_conv_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/bio_slip_data_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/lot_num_mst_00000000000000.gz')


@pytest.fixture
def init_check_received_files_ok2(s3_client, bucket_name, receive_folder):
    # setup

    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/slip_data_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/org_cnv_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/vop_hco_merge_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/whs_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/hld_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/fcl_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/mkr_org_horizon_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/tran_kbn_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/phm_prd_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/phm_price_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/whs_customer_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/mdb_conv_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/bio_slip_data_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/lot_num_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')

    yield

    # treadown

    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/slip_data_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/org_cnv_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/vop_hco_merge_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/whs_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/hld_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/fcl_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/mkr_org_horizon_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/tran_kbn_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/phm_prd_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/phm_price_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/whs_customer_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/mdb_conv_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/bio_slip_data_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/lot_num_mst_00000000000000.gz')


@pytest.fixture
def init_check_received_files_ng01(s3_client, bucket_name, receive_folder):
    # setup

    # s3_client.put_object(Bucket=bucket_name,
    #                      Key=f'{receive_folder}/stock_slip_data_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/slip_data_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/org_cnv_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/vop_hco_merge_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/whs_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/hld_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/fcl_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/mkr_org_horizon_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/tran_kbn_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/phm_prd_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/phm_price_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/whs_customer_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/mdb_conv_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/bio_slip_data_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/lot_num_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')

    yield

    # treadown

    # s3_client.delete_object(Bucket=bucket_name,
    #                         Key=f'{receive_folder}/stock_slip_data_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/slip_data_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/org_cnv_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/vop_hco_merge_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/whs_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/hld_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/fcl_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/mkr_org_horizon_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/tran_kbn_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/phm_prd_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/phm_price_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/whs_customer_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/mdb_conv_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/bio_slip_data_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/lot_num_mst_00000000000000.gz')


@pytest.fixture
def init_check_received_files_ng02(s3_client, bucket_name, receive_folder):
    # setup

    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/stock_slip_data_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    # s3_client.put_object(Bucket=bucket_name,
    #                      Key=f'{receive_folder}/slip_data_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/org_cnv_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/vop_hco_merge_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/whs_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/hld_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/fcl_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/mkr_org_horizon_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/tran_kbn_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/phm_prd_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/phm_price_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/whs_customer_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/mdb_conv_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/bio_slip_data_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/lot_num_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')

    yield

    # treadown

    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/stock_slip_data_00000000000000.gz')
    # s3_client.delete_object(Bucket=bucket_name,
    #                         Key=f'{receive_folder}/slip_data_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/org_cnv_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/vop_hco_merge_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/whs_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/hld_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/fcl_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/mkr_org_horizon_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/tran_kbn_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/phm_prd_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/phm_price_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/whs_customer_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/mdb_conv_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/bio_slip_data_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/lot_num_mst_00000000000000.gz')


@pytest.fixture
def init_check_received_files_ng03(s3_client, bucket_name, receive_folder):
    # setup

    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/stock_slip_data_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/slip_data_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    # s3_client.put_object(Bucket=bucket_name,
    #                      Key=f'{receive_folder}/org_cnv_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/vop_hco_merge_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/whs_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/hld_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/fcl_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/mkr_org_horizon_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/tran_kbn_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/phm_prd_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/phm_price_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/whs_customer_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/mdb_conv_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/bio_slip_data_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/lot_num_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')

    yield

    # treadown

    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/stock_slip_data_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/slip_data_00000000000000.gz')
    # s3_client.delete_object(Bucket=bucket_name,
    #                         Key=f'{receive_folder}/org_cnv_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/vop_hco_merge_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/whs_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/hld_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/fcl_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/mkr_org_horizon_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/tran_kbn_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/phm_prd_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/phm_price_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/whs_customer_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/mdb_conv_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/bio_slip_data_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/lot_num_mst_00000000000000.gz')


@pytest.fixture
def init_check_received_files_ng04(s3_client, bucket_name, receive_folder):
    # setup

    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/stock_slip_data_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/slip_data_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/org_cnv_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    # s3_client.put_object(Bucket=bucket_name,
    #                      Key=f'{receive_folder}/vop_hco_merge_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/whs_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/hld_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/fcl_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/mkr_org_horizon_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/tran_kbn_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/phm_prd_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/phm_price_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/whs_customer_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/mdb_conv_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/bio_slip_data_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/lot_num_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')

    yield

    # treadown

    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/stock_slip_data_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/slip_data_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/org_cnv_mst_00000000000000.gz')
    # s3_client.delete_object(Bucket=bucket_name,
    #                         Key=f'{receive_folder}/vop_hco_merge_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/whs_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/hld_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/fcl_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/mkr_org_horizon_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/tran_kbn_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/phm_prd_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/phm_price_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/whs_customer_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/mdb_conv_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/bio_slip_data_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/lot_num_mst_00000000000000.gz')


@pytest.fixture
def init_check_received_files_ng05(s3_client, bucket_name, receive_folder):
    # setup

    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/stock_slip_data_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/slip_data_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/org_cnv_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/vop_hco_merge_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    # s3_client.put_object(Bucket=bucket_name,
    #                      Key=f'{receive_folder}/whs_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/hld_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/fcl_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/mkr_org_horizon_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/tran_kbn_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/phm_prd_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/phm_price_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/whs_customer_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/mdb_conv_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/bio_slip_data_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/lot_num_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')

    yield

    # treadown

    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/stock_slip_data_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/slip_data_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/org_cnv_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/vop_hco_merge_00000000000000.gz')
    # s3_client.delete_object(Bucket=bucket_name,
    #                         Key=f'{receive_folder}/whs_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/hld_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/fcl_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/mkr_org_horizon_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/tran_kbn_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/phm_prd_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/phm_price_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/whs_customer_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/mdb_conv_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/bio_slip_data_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/lot_num_mst_00000000000000.gz')


@pytest.fixture
def init_check_received_files_ng06(s3_client, bucket_name, receive_folder):
    # setup

    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/stock_slip_data_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/slip_data_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/org_cnv_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/vop_hco_merge_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/whs_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    # s3_client.put_object(Bucket=bucket_name,
    #                      Key=f'{receive_folder}/hld_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/fcl_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/mkr_org_horizon_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/tran_kbn_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/phm_prd_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/phm_price_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/whs_customer_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/mdb_conv_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/bio_slip_data_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/lot_num_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')

    yield

    # treadown

    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/stock_slip_data_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/slip_data_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/org_cnv_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/vop_hco_merge_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/whs_mst_00000000000000.gz')
    # s3_client.delete_object(Bucket=bucket_name,
    #                         Key=f'{receive_folder}/hld_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/fcl_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/mkr_org_horizon_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/tran_kbn_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/phm_prd_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/phm_price_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/whs_customer_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/mdb_conv_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/bio_slip_data_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/lot_num_mst_00000000000000.gz')


@pytest.fixture
def init_check_received_files_ng07(s3_client, bucket_name, receive_folder):
    # setup

    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/stock_slip_data_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/slip_data_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/org_cnv_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/vop_hco_merge_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/whs_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/hld_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    # s3_client.put_object(Bucket=bucket_name,
    #                      Key=f'{receive_folder}/fcl_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/mkr_org_horizon_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/tran_kbn_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/phm_prd_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/phm_price_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/whs_customer_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/mdb_conv_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/bio_slip_data_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/lot_num_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')

    yield

    # treadown

    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/stock_slip_data_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/slip_data_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/org_cnv_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/vop_hco_merge_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/whs_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/hld_mst_00000000000000.gz')
    # s3_client.delete_object(Bucket=bucket_name,
    #                         Key=f'{receive_folder}/fcl_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/mkr_org_horizon_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/tran_kbn_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/phm_prd_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/phm_price_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/whs_customer_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/mdb_conv_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/bio_slip_data_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/lot_num_mst_00000000000000.gz')


@pytest.fixture
def init_check_received_files_ng08(s3_client, bucket_name, receive_folder):
    # setup

    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/stock_slip_data_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/slip_data_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/org_cnv_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/vop_hco_merge_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/whs_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/hld_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/fcl_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    # s3_client.put_object(Bucket=bucket_name,
    #                      Key=f'{receive_folder}/mkr_org_horizon_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/tran_kbn_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/phm_prd_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/phm_price_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/whs_customer_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/mdb_conv_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/bio_slip_data_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/lot_num_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')

    yield

    # treadown

    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/stock_slip_data_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/slip_data_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/org_cnv_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/vop_hco_merge_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/whs_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/hld_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/fcl_mst_00000000000000.gz')
    # s3_client.delete_object(Bucket=bucket_name,
    #                         Key=f'{receive_folder}/mkr_org_horizon_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/tran_kbn_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/phm_prd_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/phm_price_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/whs_customer_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/mdb_conv_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/bio_slip_data_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/lot_num_mst_00000000000000.gz')


@pytest.fixture
def init_check_received_files_ng09(s3_client, bucket_name, receive_folder):
    # setup

    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/stock_slip_data_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/slip_data_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/org_cnv_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/vop_hco_merge_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/whs_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/hld_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/fcl_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/mkr_org_horizon_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    # s3_client.put_object(Bucket=bucket_name,
    #                      Key=f'{receive_folder}/tran_kbn_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/phm_prd_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/phm_price_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/whs_customer_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/mdb_conv_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/bio_slip_data_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/lot_num_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')

    yield

    # treadown

    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/stock_slip_data_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/slip_data_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/org_cnv_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/vop_hco_merge_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/whs_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/hld_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/fcl_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/mkr_org_horizon_00000000000000.gz')
    # s3_client.delete_object(Bucket=bucket_name,
    #                         Key=f'{receive_folder}/tran_kbn_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/phm_prd_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/phm_price_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/whs_customer_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/mdb_conv_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/bio_slip_data_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/lot_num_mst_00000000000000.gz')


@pytest.fixture
def init_check_received_files_ng10(s3_client, bucket_name, receive_folder):
    # setup

    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/stock_slip_data_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/slip_data_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/org_cnv_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/vop_hco_merge_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/whs_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/hld_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/fcl_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/mkr_org_horizon_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/tran_kbn_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    # s3_client.put_object(Bucket=bucket_name,
    #                      Key=f'{receive_folder}/phm_prd_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/phm_price_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/whs_customer_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/mdb_conv_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/bio_slip_data_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/lot_num_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')

    yield

    # treadown

    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/stock_slip_data_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/slip_data_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/org_cnv_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/vop_hco_merge_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/whs_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/hld_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/fcl_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/mkr_org_horizon_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/tran_kbn_mst_00000000000000.gz')
    # s3_client.delete_object(Bucket=bucket_name,
    #                         Key=f'{receive_folder}/phm_prd_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/phm_price_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/whs_customer_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/mdb_conv_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/bio_slip_data_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/lot_num_mst_00000000000000.gz')


@pytest.fixture
def init_check_received_files_ng11(s3_client, bucket_name, receive_folder):
    # setup

    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/stock_slip_data_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/slip_data_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/org_cnv_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/vop_hco_merge_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/whs_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/hld_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/fcl_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/mkr_org_horizon_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/tran_kbn_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/phm_prd_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    # s3_client.put_object(Bucket=bucket_name,
    #                      Key=f'{receive_folder}/phm_price_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/whs_customer_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/mdb_conv_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/bio_slip_data_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/lot_num_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')

    yield

    # treadown

    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/stock_slip_data_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/slip_data_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/org_cnv_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/vop_hco_merge_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/whs_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/hld_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/fcl_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/mkr_org_horizon_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/tran_kbn_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/phm_prd_mst_00000000000000.gz')
    # s3_client.delete_object(Bucket=bucket_name,
    #                         Key=f'{receive_folder}/phm_price_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/whs_customer_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/mdb_conv_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/bio_slip_data_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/lot_num_mst_00000000000000.gz')


@pytest.fixture
def init_check_received_files_ng12(s3_client, bucket_name, receive_folder):
    # setup

    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/stock_slip_data_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/slip_data_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/org_cnv_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/vop_hco_merge_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/whs_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/hld_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/fcl_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/mkr_org_horizon_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/tran_kbn_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/phm_prd_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/phm_price_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    # s3_client.put_object(Bucket=bucket_name,
    #                      Key=f'{receive_folder}/whs_customer_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/mdb_conv_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/bio_slip_data_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/lot_num_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')

    yield

    # treadown

    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/stock_slip_data_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/slip_data_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/org_cnv_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/vop_hco_merge_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/whs_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/hld_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/fcl_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/mkr_org_horizon_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/tran_kbn_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/phm_prd_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/phm_price_mst_00000000000000.gz')
    # s3_client.delete_object(Bucket=bucket_name,
    #                         Key=f'{receive_folder}/whs_customer_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/mdb_conv_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/bio_slip_data_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/lot_num_mst_00000000000000.gz')


@pytest.fixture
def init_check_received_files_ng13(s3_client, bucket_name, receive_folder):
    # setup

    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/stock_slip_data_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/slip_data_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/org_cnv_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/vop_hco_merge_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/whs_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/hld_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/fcl_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/mkr_org_horizon_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/tran_kbn_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/phm_prd_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/phm_price_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/whs_customer_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    # s3_client.put_object(Bucket=bucket_name,
    #                      Key=f'{receive_folder}/mdb_conv_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/bio_slip_data_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/lot_num_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')

    yield

    # treadown

    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/stock_slip_data_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/slip_data_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/org_cnv_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/vop_hco_merge_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/whs_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/hld_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/fcl_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/mkr_org_horizon_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/tran_kbn_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/phm_prd_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/phm_price_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/whs_customer_mst_00000000000000.gz')
    # s3_client.delete_object(Bucket=bucket_name,
    #                         Key=f'{receive_folder}/mdb_conv_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/bio_slip_data_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/lot_num_mst_00000000000000.gz')


@pytest.fixture
def init_check_received_files_ng14(s3_client, bucket_name, receive_folder):
    # setup

    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/stock_slip_data_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/slip_data_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/org_cnv_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/vop_hco_merge_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/whs_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/hld_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/fcl_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/mkr_org_horizon_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/tran_kbn_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/phm_prd_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/phm_price_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/whs_customer_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/mdb_conv_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    # s3_client.put_object(Bucket=bucket_name,
    #                      Key=f'{receive_folder}/bio_slip_data_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/lot_num_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')

    yield

    # treadown

    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/stock_slip_data_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/slip_data_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/org_cnv_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/vop_hco_merge_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/whs_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/hld_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/fcl_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/mkr_org_horizon_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/tran_kbn_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/phm_prd_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/phm_price_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/whs_customer_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/mdb_conv_mst_00000000000000.gz')
    # s3_client.delete_object(Bucket=bucket_name,
    #                         Key=f'{receive_folder}/bio_slip_data_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/lot_num_mst_00000000000000.gz')


@pytest.fixture
def init_check_received_files_ng15(s3_client, bucket_name, receive_folder):
    # setup

    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/stock_slip_data_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/slip_data_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/org_cnv_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/vop_hco_merge_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/whs_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/hld_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/fcl_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/mkr_org_horizon_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/tran_kbn_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/phm_prd_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/phm_price_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/whs_customer_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/mdb_conv_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/bio_slip_data_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    # s3_client.put_object(Bucket=bucket_name,
    #                      Key=f'{receive_folder}/lot_num_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')

    yield

    # treadown

    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/stock_slip_data_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/slip_data_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/org_cnv_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/vop_hco_merge_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/whs_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/hld_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/fcl_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/mkr_org_horizon_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/tran_kbn_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/phm_prd_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/phm_price_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/whs_customer_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/mdb_conv_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/bio_slip_data_00000000000000.gz')
    # s3_client.delete_object(Bucket=bucket_name,
    #                         Key=f'{receive_folder}/lot_num_mst_00000000000000.gz')


@pytest.fixture
def init_check_received_files_ng16(s3_client, bucket_name, receive_folder):
    # setup

    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/stock_slip_data_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/slip_data_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/org_cnv_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/vop_hco_merge_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/whs_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/hld_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/fcl_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/mkr_org_horizon_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/tran_kbn_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/phm_prd_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/phm_price_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/whs_customer_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/mdb_conv_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/bio_slip_data_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/lot_num_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/dummy_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')

    yield

    # treadown

    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/stock_slip_data_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/slip_data_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/org_cnv_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/vop_hco_merge_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/whs_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/hld_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/fcl_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/mkr_org_horizon_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/tran_kbn_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/phm_prd_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/phm_price_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/whs_customer_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/mdb_conv_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/bio_slip_data_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/lot_num_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/dummy_00000000000000.gz')


@pytest.fixture
def init_check_received_files_ng17(s3_client, bucket_name, receive_folder):
    # setup

    # s3_client.put_object(Bucket=bucket_name,
    #                      Key=f'{receive_folder}/stock_slip_data_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/slip_data_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/org_cnv_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/vop_hco_merge_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/whs_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/hld_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/fcl_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/mkr_org_horizon_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/tran_kbn_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/phm_prd_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/phm_price_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/whs_customer_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/mdb_conv_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/bio_slip_data_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/lot_num_mst_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')
    s3_client.put_object(Bucket=bucket_name,
                         Key=f'{receive_folder}/dummy_00000000000000.gz', Body=b'aaaaaaaaaaaaaaa')

    yield

    # treadown

    # s3_client.delete_object(Bucket=bucket_name,
    #                         Key=f'{receive_folder}/stock_slip_data_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/slip_data_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/org_cnv_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/vop_hco_merge_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/whs_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/hld_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/fcl_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/mkr_org_horizon_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/tran_kbn_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/phm_prd_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/phm_price_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/whs_customer_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/mdb_conv_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/bio_slip_data_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/lot_num_mst_00000000000000.gz')
    s3_client.delete_object(Bucket=bucket_name,
                            Key=f'{receive_folder}/dummy_00000000000000.gz')
