znt/module/sonarqube/test/model/apivalidate.php

43 lines
1.9 KiB
PHP
Raw Permalink Normal View History

#!/usr/bin/env php
<?php
/**
title=测试 sonarqubeModel::apiValidate();
timeout=0
cid=18380
- 步骤1使用默认有效配置验证 @success
- 步骤2有效host但无效token @return false
- 步骤3有效host但非管理员token @return false
- 步骤4空host参数 @return false
- 步骤5无效格式host @return false
- 步骤6空token参数 @return false
- 步骤7特殊字符host @return false
*/
include dirname(__FILE__, 5) . '/test/lib/init.php';
include dirname(__FILE__, 2) . '/lib/model.class.php';
su('admin');
zenData('pipeline')->loadYaml('pipeline')->gen(5);
$sonarqubeID = 2;
$validHost = 'https://sonardev.qc.oop.cc';
$validToken = 'c29uYXI6a2tHQXpFMXA5cE9vcUpBOWJMSWg=';
$invalidToken = 'abc';
$noAdminToken = 'dGVzdDoxMjM0NTY=';
$emptyHost = '';
$invalidHost = 'not-a-valid-url';
$emptyToken = '';
$specialCharHost = 'https://test<script>alert(1)</script>.com';
$sonarqube = new sonarqubeModelTest();
r($sonarqube->apiValidateTest()) && p() && e('success'); // 步骤1使用默认有效配置验证
r($sonarqube->apiValidateTest($validHost, $invalidToken, false)) && p() && e('return false'); // 步骤2有效host但无效token
r($sonarqube->apiValidateTest($validHost, $noAdminToken, false)) && p() && e('return false'); // 步骤3有效host但非管理员token
r($sonarqube->apiValidateTest($emptyHost, $validToken, false)) && p() && e('return false'); // 步骤4空host参数
r($sonarqube->apiValidateTest($invalidHost, $validToken, false)) && p() && e('return false'); // 步骤5无效格式host
r($sonarqube->apiValidateTest($validHost, $emptyToken, false)) && p() && e('return false'); // 步骤6空token参数
r($sonarqube->apiValidateTest($specialCharHost, $validToken, false)) && p() && e('return false'); // 步骤7特殊字符host