def METHOD_NAME(self):
    split_path_dir = self.working_dir.joinpath('split')
    tgt_filename = '03_qr_stress_test_colorscan.pdf'
    tgt_num_pages = 6
    self.copyFiles([tgt_filename])
    args = [
        tgt_filename,
        str(split_path_dir),
        "https://url_testing.com/tests/?code=koalas&name=",
        urllib.parse.quote("#D0,.com"),
        str(split_path_dir.joinpath('bulk_upload_log.txt')),
        False
    ]
    os.chdir(split_path_dir)
    bulk_qr_split.main(args)
    #03_qr_stress_test_colorscan.pdf contains 36 pages, every 6 pages contains a qr code
    #also expect a png copy of each page and a cover image 
    self.assertTrue(Path('decoded.json').is_file())
    file_name = Path(tgt_filename).stem
    with open('decoded.json', 'r') as bulk_json:
        metadata = json.load(bulk_json)
        self.assertTrue('use_ocr' in metadata)
        self.assertEqual(metadata['use_ocr'], False)
        for i_idx in [0,5,7,11,15,23,31]:
            split_filename = file_name + '_' + str(i_idx).zfill(3) + '.pdf'
            self.assertTrue(split_filename in metadata)
            #03_qr_stress_test_colorscan.pdf does not start with a QR code, so index = 0's id will be 'BLANK'
            if i_idx > 0:
                #the qr codes encode a URL in 03_qr_stress_test_colorscan.pdf, make sure the prefix and suffix given remove everything except the user id
                user_id = metadata[split_filename]['id']
                self.assertTrue("https://url_testing.com/tests/?code=koalas&name=" not in user_id)
                self.assertTrue(urllib.parse.quote("#D0,.com") not in user_id)
                self.assertTrue(len(user_id) < 10)
            else:
                self.assertEqual(metadata[split_filename]['id'], 'BLANK')