========== 城市名称格式化器测试 ========== ✓ 测试 1: 标准格式:城市名 + SHI 输入: 'PU TIAN SHI' 输出: 'PUTIAN' ✓ 测试 2: 小写输入 输入: 'pu tian shi' 输出: 'PUTIAN' ✓ 测试 3: 多个空格 输入: 'PU TIAN SHI' 输出: 'PUTIAN' ✓ 测试 4: 单词城市名 + SHI 输入: 'PUTIAN SHI' 输出: 'PUTIAN' ✓ 测试 5: 北京 输入: 'BEIJING SHI' 输出: 'BEIJING' ✓ 测试 6: 上海 输入: 'SHANG HAI SHI' 输出: 'SHANGHAI' ✓ 测试 7: 广州 输入: 'GUANG ZHOU SHI' 输出: 'GUANGZHOU' ✓ 测试 8: 深圳 输入: 'SHEN ZHEN SHI' 输出: 'SHENZHEN' ✓ 测试 9: 杭州 输入: 'HANG ZHOU SHI' 输出: 'HANGZHOU' ✓ 测试 10: 南京 输入: 'NAN JING SHI' 输出: 'NANJING' ✓ 测试 11: 武汉 输入: 'WU HAN SHI' 输出: 'WUHAN' ✓ 测试 12: 成都 输入: 'CHENG DU SHI' 输出: 'CHENGDU' ✓ 测试 13: 西安 输入: 'XI AN SHI' 输出: 'XIAN' ✓ 测试 14: 重庆 输入: 'CHONG QING SHI' 输出: 'CHONGQING' ✓ 测试 15: 已经格式化的(无SHI) 输入: 'PUTIAN' 输出: 'PUTIAN' ✓ 测试 16: 已经格式化的(无SHI) 输入: 'BEIJING' 输出: 'BEIJING' ✓ 测试 17: 空字符串 输入: '' 输出: '' ✓ 测试 18: 只有空格 输入: ' ' 输出: '' ========== 测试结果 ========== 通过: 18/{18} 失败: 0/{18} ========== 批量格式化测试 ========== 输入: ["PU TIAN SHI","BEIJING SHI","SHANG HAI SHI"] 输出: ["PUTIAN","BEIJING","SHANGHAI"] ========== 格式检查测试 ========== ✓ 正确格式: 'PUTIAN' => true ✓ 未格式化: 'PU TIAN SHI' => false ✓ 包含SHI: 'PUTIAN SHI' => false ✓ 包含空格: 'PU TIAN' => false ========== 测试完成 ==========