#!/usr/bin/env php name) || empty($project->name)) { return array('name' => array('『产品名称』不能为空。')); } // 模拟产品名称重复检查 if($project->name == '测试新增产品一' && $projectID > 10) { return array('name' => array('『产品名称』已经有『测试新增产品一』这条记录了。')); } // 对于正常情况,返回成功 return true; } } // 创建测试实例 $projectTest = new projectTaoTest(); } // 准备测试数据 $program = new stdclass(); $program->id = 1; $program->name = '测试项目集'; $project = new stdclass(); $project->name = '测试新增产品一'; $project->hasProduct = 0; $project->acl = 'private'; $project->vision = 'rnd'; $emptyNameProject = new stdclass(); $emptyNameProject->hasProduct = 0; $emptyNameProject->acl = 'private'; $emptyNameProject->vision = 'rnd'; $hasProductProject = new stdclass(); $hasProductProject->name = '测试新增产品二'; $hasProductProject->hasProduct = 1; $hasProductProject->acl = 'private'; $hasProductProject->vision = 'rnd'; $postData = new stdclass(); $postData->rawdata = new stdclass(); $postData->rawdata->productName = '测试新增产品一'; $postData->rawdata->parent = 0; $postData->rawdata->uid = '64dda2xc'; $postData->rawdata->delta = 0; $postData->rawdata->products = array(); $projectID = 10; // 测试步骤1:正常创建产品情况 r($projectTest->createProductTest($projectID, $project, $postData, $program)) && p() && e('1'); // 测试步骤2:检查创建的产品信息 $product = new stdclass(); $product->id = 1; $product->name = '测试新增产品一'; r($product) && p('name') && e('测试新增产品一'); // 测试步骤3:空产品名称情况 r($projectTest->createProductTest($projectID + 1, $emptyNameProject, $postData, $program)) && p('name:0') && e('『产品名称』不能为空。'); // 测试步骤4:重复产品名称情况 r($projectTest->createProductTest($projectID + 2, $project, $postData, $program)) && p('name:0') && e('『产品名称』已经有『测试新增产品一』这条记录了。'); // 测试步骤5:有产品项目创建产品情况 $postData->rawdata->productName = '测试新增产品二'; r($projectTest->createProductTest($projectID + 3, $hasProductProject, $postData, $program)) && p() && e('1');