179 lines
4.2 KiB
JavaScript
179 lines
4.2 KiB
JavaScript
|
|
// 简单的地址保存功能测试
|
|||
|
|
// 可以在浏览器控制台中运行
|
|||
|
|
|
|||
|
|
// 模拟地址API
|
|||
|
|
const mockAddressApi = {
|
|||
|
|
add: function(data) {
|
|||
|
|
return new Promise((resolve) => {
|
|||
|
|
console.log('🧪 [模拟API] 添加地址:', data)
|
|||
|
|
// 模拟成功响应
|
|||
|
|
setTimeout(() => {
|
|||
|
|
resolve({
|
|||
|
|
code: 200,
|
|||
|
|
message: '添加成功',
|
|||
|
|
data: {
|
|||
|
|
id: Date.now(),
|
|||
|
|
...data,
|
|||
|
|
createTime: new Date().toISOString()
|
|||
|
|
}
|
|||
|
|
})
|
|||
|
|
}, 1000)
|
|||
|
|
})
|
|||
|
|
},
|
|||
|
|
|
|||
|
|
update: function(data) {
|
|||
|
|
return new Promise((resolve) => {
|
|||
|
|
console.log('🧪 [模拟API] 更新地址:', data)
|
|||
|
|
setTimeout(() => {
|
|||
|
|
resolve({
|
|||
|
|
code: 200,
|
|||
|
|
message: '更新成功',
|
|||
|
|
data: data
|
|||
|
|
})
|
|||
|
|
}, 1000)
|
|||
|
|
})
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
// 测试地址保存功能
|
|||
|
|
async function testAddressSave() {
|
|||
|
|
console.log('🔍 [测试] 开始测试地址保存功能')
|
|||
|
|
|
|||
|
|
// 模拟表单数据
|
|||
|
|
const formData = {
|
|||
|
|
name: '测试用户',
|
|||
|
|
phone: '13800138000',
|
|||
|
|
province: '北京市',
|
|||
|
|
city: '北京市',
|
|||
|
|
district: '朝阳区',
|
|||
|
|
detail: '测试地址123号',
|
|||
|
|
isDefault: 1
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
console.log('🔍 [测试] 表单数据:', formData)
|
|||
|
|
|
|||
|
|
try {
|
|||
|
|
// 测试添加地址
|
|||
|
|
console.log('🔍 [测试] 调用添加地址接口')
|
|||
|
|
const result = await mockAddressApi.add(formData)
|
|||
|
|
console.log('🔍 [测试] 添加结果:', result)
|
|||
|
|
|
|||
|
|
if (result.code === 200) {
|
|||
|
|
console.log('✅ [测试] 地址添加成功!')
|
|||
|
|
|
|||
|
|
// 测试更新地址
|
|||
|
|
console.log('🔍 [测试] 调用更新地址接口')
|
|||
|
|
const updateData = {
|
|||
|
|
...result.data,
|
|||
|
|
name: '更新后的用户名'
|
|||
|
|
}
|
|||
|
|
const updateResult = await mockAddressApi.update(updateData)
|
|||
|
|
console.log('🔍 [测试] 更新结果:', updateResult)
|
|||
|
|
|
|||
|
|
if (updateResult.code === 200) {
|
|||
|
|
console.log('✅ [测试] 地址更新成功!')
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
} catch (error) {
|
|||
|
|
console.error('❌ [测试] 测试失败:', error)
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
// 运行测试
|
|||
|
|
testAddressSave()
|
|||
|
|
|
|||
|
|
// 测试表单验证
|
|||
|
|
function testFormValidation() {
|
|||
|
|
console.log('🔍 [验证] 测试表单验证逻辑')
|
|||
|
|
|
|||
|
|
const testCases = [
|
|||
|
|
{
|
|||
|
|
name: '',
|
|||
|
|
phone: '13800138000',
|
|||
|
|
province: '北京市',
|
|||
|
|
city: '北京市',
|
|||
|
|
district: '朝阳区',
|
|||
|
|
detail: '测试地址',
|
|||
|
|
expected: false
|
|||
|
|
},
|
|||
|
|
{
|
|||
|
|
name: '测试用户',
|
|||
|
|
phone: '',
|
|||
|
|
province: '北京市',
|
|||
|
|
city: '北京市',
|
|||
|
|
district: '朝阳区',
|
|||
|
|
detail: '测试地址',
|
|||
|
|
expected: false
|
|||
|
|
},
|
|||
|
|
{
|
|||
|
|
name: '测试用户',
|
|||
|
|
phone: '13800138000',
|
|||
|
|
province: '',
|
|||
|
|
city: '北京市',
|
|||
|
|
district: '朝阳区',
|
|||
|
|
detail: '测试地址',
|
|||
|
|
expected: false
|
|||
|
|
},
|
|||
|
|
{
|
|||
|
|
name: '测试用户',
|
|||
|
|
phone: '13800138000',
|
|||
|
|
province: '北京市',
|
|||
|
|
city: '北京市',
|
|||
|
|
district: '朝阳区',
|
|||
|
|
detail: '',
|
|||
|
|
expected: false
|
|||
|
|
},
|
|||
|
|
{
|
|||
|
|
name: '测试用户',
|
|||
|
|
phone: '13800138000',
|
|||
|
|
province: '北京市',
|
|||
|
|
city: '北京市',
|
|||
|
|
district: '朝阳区',
|
|||
|
|
detail: '测试地址',
|
|||
|
|
expected: true
|
|||
|
|
}
|
|||
|
|
]
|
|||
|
|
|
|||
|
|
testCases.forEach((testCase, index) => {
|
|||
|
|
const isValid = validateForm(testCase)
|
|||
|
|
const result = isValid === testCase.expected ? '✅ 通过' : '❌ 失败'
|
|||
|
|
console.log(`🔍 [验证] 测试用例 ${index + 1}: ${result}`)
|
|||
|
|
})
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
// 表单验证函数(从edit.vue复制)
|
|||
|
|
function validateForm(form) {
|
|||
|
|
if (!form.name) {
|
|||
|
|
console.log('❌ 请输入收货人姓名')
|
|||
|
|
return false
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if (!form.phone) {
|
|||
|
|
console.log('❌ 请输入手机号')
|
|||
|
|
return false
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if (!/^1[3-9]\d{9}$/.test(form.phone)) {
|
|||
|
|
console.log('❌ 请输入正确的手机号')
|
|||
|
|
return false
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if (!form.province || !form.city || !form.district) {
|
|||
|
|
console.log('❌ 请选择所在地区')
|
|||
|
|
return false
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if (!form.detail) {
|
|||
|
|
console.log('❌ 请输入详细地址')
|
|||
|
|
return false
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
return true
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
// 运行验证测试
|
|||
|
|
testFormValidation()
|
|||
|
|
|
|||
|
|
console.log('🎉 [完成] 地址管理功能测试完成!')
|
|||
|
|
console.log('💡 [提示] 如果后端服务器无法启动,可以使用这个模拟API进行前端测试')
|