znt/module/file/test/model/autodelete.php

68 lines
2.2 KiB
PHP
Raw Permalink Normal View History

#!/usr/bin/env php
<?php
/**
title=测试 fileModel::autoDelete();
timeout=0
cid=16492
- 步骤1空字符串UID输入 @10
- 步骤2正常UID但SESSION中无album数据 @10
- 步骤3有album数据但部分图片已标记使用 @9
- 步骤4有album数据但无used标记 @6
- 步骤5多个UID混合测试只影响指定UID @5
*/
include dirname(__FILE__, 5) . '/test/lib/init.php';
include dirname(__FILE__, 2) . '/lib/model.class.php';
$fileTable = zenData('file');
$fileTable->objectType->range('story,task,bug');
$fileTable->objectID->range('1-20');
$fileTable->pathname->range('test1.jpg,test2.png,test3.gif,test4.doc,test5.pdf');
$fileTable->title->range('测试图片1,测试图片2,测试图片3,测试文档1,测试文档2');
$fileTable->extension->range('jpg,png,gif,doc,pdf');
$fileTable->size->range('1024-102400');
$fileTable->addedBy->range('admin,user1,user2');
$fileTable->addedDate->range('`2023-01-01 00:00:00`-`2023-12-31 23:59:59`');
$fileTable->gen(10);
su('admin');
global $tester, $config;
$fileTest = new fileModelTest();
$debug = $config->debug;
$config->debug = 0;
// 清理SESSION状态
unset($_SESSION['album']);
$uid1 = 'test_uid_001';
$uid2 = 'test_uid_002';
r($fileTest->autoDeleteTest('')) && p() && e('10'); // 步骤1空字符串UID输入
r($fileTest->autoDeleteTest($uid1)) && p() && e('10'); // 步骤2正常UID但SESSION中无album数据
// 设置测试数据uid1包含图片1,2,3其中1,2已使用
$_SESSION['album'][$uid1] = array(1, 2, 3);
$_SESSION['album']['used'][$uid1] = array(1 => 1, 2 => 2);
r($fileTest->autoDeleteTest($uid1)) && p() && e('9'); // 步骤3有album数据但部分图片已标记使用
// 重新设置数据uid1包含图片4,5,6无used标记
$_SESSION['album'][$uid1] = array(4, 5, 6);
unset($_SESSION['album']['used'][$uid1]);
r($fileTest->autoDeleteTest($uid1)) && p() && e('6'); // 步骤4有album数据但无used标记
// 多UID测试设置两个不同的UID
$_SESSION['album'][$uid1] = array(7, 8);
$_SESSION['album'][$uid2] = array(9, 10);
$_SESSION['album']['used'][$uid1] = array(7 => 7);
r($fileTest->autoDeleteTest($uid1)) && p() && e('5'); // 步骤5多个UID混合测试只影响指定UID
$config->debug = $debug;