diff --git a/module/repo/test/zen/getbrowseinfo.php b/module/repo/test/zen/getbrowseinfo.php new file mode 100755 index 0000000000..fbda735cc1 --- /dev/null +++ b/module/repo/test/zen/getbrowseinfo.php @@ -0,0 +1,70 @@ +#!/usr/bin/env php +id->range('1-5'); +$table->SCM->range('Gitlab{1},Git{1},Subversion{1},Gitea{1},Gogs{1}'); +$table->name->range('gitlab-repo,git-repo,svn-repo,gitea-repo,gogs-repo'); +$table->serviceHost->range('1,2,3,4,5'); +$table->serviceProject->range('10,20,30,40,50'); +$table->path->range('/var/git/gitlab-repo,/var/git/git-repo,/var/svn/svn-repo,/var/git/gitea-repo,/var/git/gogs-repo'); +$table->encoding->range('UTF-8{5}'); +$table->client->range('git{3},svn{1},git{1}'); +$table->account->range('admin{3},user{2}'); +$table->password->range('123456{5}'); +$table->gen(5); + +su('admin'); + +$repoZenTest = new repoZenTest(); + +$gitlabRepo = new stdclass(); +$gitlabRepo->SCM = 'Gitlab'; +$gitlabRepo->serviceHost = 1; +$gitlabRepo->serviceProject = 10; +$gitlabRepo->path = '/var/git/gitlab-repo'; +$gitlabRepo->encoding = 'UTF-8'; +$gitlabRepo->client = 'git'; +$gitlabRepo->account = 'admin'; +$gitlabRepo->password = '123456'; + +$gitRepo = new stdclass(); +$gitRepo->SCM = 'Git'; + +$emptyRepo = null; + +$invalidRepo = 'not-an-object'; + +$gitlabRepoEmpty = new stdclass(); +$gitlabRepoEmpty->SCM = 'Gitlab'; +$gitlabRepoEmpty->serviceHost = 2; +$gitlabRepoEmpty->serviceProject = 20; +$gitlabRepoEmpty->path = '/var/git/gitlab-repo-empty'; +$gitlabRepoEmpty->encoding = 'UTF-8'; +$gitlabRepoEmpty->client = 'git'; +$gitlabRepoEmpty->account = 'admin'; +$gitlabRepoEmpty->password = '123456'; + +r($repoZenTest->getBrowseInfoTest($gitlabRepo)) && p('0:master') && e('master'); +r($repoZenTest->getBrowseInfoTest($gitRepo)) && p() && e('0'); +r($repoZenTest->getBrowseInfoTest($emptyRepo)) && p() && e('0'); +r($repoZenTest->getBrowseInfoTest($invalidRepo)) && p() && e('0'); +r($repoZenTest->getBrowseInfoTest($gitlabRepoEmpty)) && p('1:0') && e('v1.0'); \ No newline at end of file diff --git a/module/repo/test/zen/yaml/repo_getbrowseinfo.yaml b/module/repo/test/zen/yaml/repo_getbrowseinfo.yaml new file mode 100644 index 0000000000..1d1ffdd2e6 --- /dev/null +++ b/module/repo/test/zen/yaml/repo_getbrowseinfo.yaml @@ -0,0 +1,77 @@ +--- +title: 测试 repoZen::getBrowseInfo() 方法的测试数据 +desc: 用于测试 getBrowseInfo 方法的 repo 数据配置 +author: Claude +version: 1.0 + +fields: +- field: id + note: 代码库ID + range: 1-5 + prefix: "" + postfix: "" + loop: 0 + format: "" +- field: SCM + note: 代码库类型 + range: 'Gitlab{1},Git{1},Subversion{1},Gitea{1},Gogs{1}' + prefix: "" + postfix: "" + loop: 0 + format: "" +- field: name + note: 代码库名称 + range: 'gitlab-test-repo,git-test-repo,svn-test-repo,gitea-test-repo,gogs-test-repo' + prefix: "" + postfix: "" + loop: 0 + format: "" +- field: gitService + note: Git服务ID + range: '1-5' + prefix: "" + postfix: "" + loop: 0 + format: "" +- field: serviceProject + note: 服务项目ID + range: '10,20,30,40,50' + prefix: "" + postfix: "" + loop: 0 + format: "" +- field: path + note: 代码库路径 + range: '/var/git/gitlab-repo,/var/git/git-repo,/var/svn/svn-repo,/var/git/gitea-repo,/var/git/gogs-repo' + prefix: "" + postfix: "" + loop: 0 + format: "" +- field: encoding + note: 编码格式 + range: 'UTF-8{5}' + prefix: "" + postfix: "" + loop: 0 + format: "" +- field: client + note: 客户端 + range: 'git{3},svn{1},git{1}' + prefix: "" + postfix: "" + loop: 0 + format: "" +- field: account + note: 账号 + range: 'admin{3},user{2}' + prefix: "" + postfix: "" + loop: 0 + format: "" +- field: password + note: 密码 + range: '123456{5}' + prefix: "" + postfix: "" + loop: 0 + format: "" \ No newline at end of file