文件
xiaozhongchuf/tests/UserOauthPayOpenidTest.php

42 行
1.4 KiB
PHP

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

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

<?php
define('ROOT_PATH', __DIR__ . '/../');
define('APP_PATH', ROOT_PATH . 'application/');
define('ADDON_PATH', ROOT_PATH . 'addons' . DIRECTORY_SEPARATOR);
define('DS', DIRECTORY_SEPARATOR);
require ROOT_PATH . 'thinkphp/base.php';
\think\Config::set('database', include ROOT_PATH . 'application/database.php');
// 注册 epay 命名空间
$libraryDir = ADDON_PATH . 'epay' . DS . 'library' . DS;
\think\Loader::addNamespace('Yansongda\\Pay', $libraryDir . 'v2' . DS . 'Yansongda' . DS . 'Pay' . DS);
\think\Loader::addNamespace('Yansongda\\Supports', $libraryDir . 'v2' . DS . 'Yansongda' . DS . 'Supports' . DS);
// 测试用例:验证用户 24 的 openid 获取逻辑与统一下单参数匹配
$userId = 24;
$platform = 'wxMiniProgram';
// 测试:按 id desc 排序获取最新的 openid
$oauth = \addons\shopro\model\UserOauth::where([
'user_id' => $userId,
'provider' => 'Wechat',
'platform' => $platform
])->order('id', 'desc')->find();
echo "【测试】查询用户 {$userId} 的最新授权记录:\n";
if (!$oauth) {
echo "FAIL: 未找到用户授权记录\n";
exit(1);
}
echo "ID: {$oauth->id}, Openid: {$oauth->openid}\n";
// 验证 openid 是否为当前小程序的有效 openid(以 oGsUG 开头)
if (strpos($oauth->openid, 'oGsUG') !== 0) {
echo "FAIL: 获取到的不是当前小程序的有效 openid (期望以 oGsUG 开头)\n";
exit(1);
}
echo "PASS: 成功获取到当前小程序匹配的有效 openid\n";
exit(0);