Files
cunkebao_v3/Server/tests/miniprogram_qrcode_smoke.php
Manus AI 03ae8c07b6 feat: 同步本地全量开发到 GitHub(前端/后端/超管/开发文档规则)
含 AI 助手、抖音 OAuth、流量池推送、支付获客、SuperAdmin 设备与场景管理等本地迭代;以本地为准单向推送,未拉取远程。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-05-26 22:12:40 +08:00

56 lines
1.9 KiB
PHP

#!/usr/bin/env php
<?php
namespace think\facade {
class Cache
{
public static function get($k) { return null; }
public static function set($k, $v, $t = 0) {}
}
class Env
{
public static function get($k, $d = null) { return $d; }
}
class Log
{
public static function warning($m, $c = []) {}
}
}
namespace {
function config($key = null, $default = null)
{
$map = [
'wechat.poster_qrcode_mode' => 'miniprogram',
'wechat.poster_allow_h5_fallback' => false,
'wechat.poster' => ['qr_size' => 280, 'qr_cache_ttl' => 86400, 'use_short_url' => false],
'wechat.api_public_base' => 'https://ckbapi.quwanzhi.com',
'wechat.mini_program' => [
'app_id' => 'wx789850448e26c91d',
'secret' => 'test',
'name' => '存客宝',
'poster_page' => 'pages/poster/index2',
],
'wechat.h5' => ['base_url' => 'https://h5.ckb.quwanzhi.com'],
];
if ($key === null) {
return $map;
}
return $map[$key] ?? $default;
}
require dirname(__DIR__) . '/application/cunkebao/service/MiniProgramQrCodeService.php';
use app\cunkebao\service\MiniProgramQrCodeService;
assert(MiniProgramQrCodeService::qrcodeMode() === 'miniprogram', 'default mode miniprogram');
assert(MiniProgramQrCodeService::allowH5Fallback() === false, 'h5 fallback disabled by default');
$meta = MiniProgramQrCodeService::miniProgramMeta();
assert(($meta['page'] ?? '') === 'pages/poster/index2', 'poster landing page');
$h5 = MiniProgramQrCodeService::generateH5QrFallback('https://h5.ckb.quwanzhi.com/#/pages/form/input2?id=179');
assert((int)($h5['code'] ?? 0) === 200, 'h5 qr generator available for copy-link only');
echo "[PASS] MiniProgramQrCodeService\n";
}