文件
Henglianshutong/tests/verify_user_wallet_card_spec.js

66 行
2.8 KiB
JavaScript

此文件含有模棱两可的 Unicode 字符

此文件含有可能会与其他字符混淆的 Unicode 字符。 如果您是想特意这样的,可以安全地忽略该警告。 使用 Escape 按钮显示他们。

const fs = require('fs');
const path = require('path');
let passed = 0;
let failed = 0;
function assert(condition, testName, detail = '') {
if (condition) {
console.log(` [PASS] ${testName}`);
passed++;
} else {
console.error(` [FAIL] ${testName} - ${detail}`);
failed++;
}
}
console.log("========================================================");
console.log(" 我的页面资产卡片(余额、dmepa、兑换券)功能规格测试");
console.log("========================================================\n");
// 1. 验证 pages/index/user.vue
const userVuePath = path.resolve(__dirname, '../uniapp/pages/index/user.vue');
assert(fs.existsSync(userVuePath), 'user.vue 文件存在');
const userVueContent = fs.readFileSync(userVuePath, 'utf-8');
assert(
userVueContent.includes('walletCard') && (userVueContent.includes('layoutBlocks') || userVueContent.includes('walletBlock')),
'user.vue 中包含 walletCard 资产卡片的保底注入机制',
'未在 user.vue 中检测到 walletCard 逻辑'
);
assert(
!userVueContent.includes('v-for="(item, index) in template.data"'),
'user.vue 模板遍历已升级为支持动态补充资产卡片的 blocks 计算列表',
'仍直接遍历未补充 walletCard 的 template.data'
);
// 2. 验证 sheep/components/s-wallet-card/s-wallet-card.vue
const walletCardPath = path.resolve(__dirname, '../uniapp/sheep/components/s-wallet-card/s-wallet-card.vue');
assert(fs.existsSync(walletCardPath), 's-wallet-card.vue 文件存在');
const walletCardContent = fs.readFileSync(walletCardPath, 'utf-8');
assert(
walletCardContent.includes('userInfo.money') && walletCardContent.includes('/pages/user/wallet/money') && (walletCardContent.includes('余额') || walletCardContent.includes('账户余额')),
's-wallet-card.vue 包含余额项、正确数据绑定与跳转路由',
'缺少余额配置或路由不正确'
);
assert(
walletCardContent.includes('displayMadow') && walletCardContent.includes('/pages/commission/madow') && walletCardContent.includes('dmepa'),
's-wallet-card.vue 包含dmepa项、正确数据绑定与跳转路由',
'缺少dmepa配置或路由不正确'
);
assert(
walletCardContent.includes('voucher_available') && walletCardContent.includes('/pages/commission/voucher') && (walletCardContent.includes('兑换券') || walletCardContent.includes('兑换卷')),
's-wallet-card.vue 包含兑换券(卷)项、正确数据绑定与跳转路由',
'缺少兑换券配置或路由不正确'
);
console.log("\n--------------------------------------------------------");
console.log(`测试执行结果: 通过 ${passed} 项, 失败 ${failed} 项`);
console.log("========================================================");
process.exit(failed === 0 ? 0 : 1);