Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
易企天创
zentaoatf
提交
5da77b3b
Z
zentaoatf
项目概览
易企天创
/
zentaoatf
9 个月 前同步成功
通知
11
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
3
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
Z
zentaoatf
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
3
Issue
3
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
前往新版Gitcode,体验更适合开发者的 AI 搜索 >>
提交
5da77b3b
编写于
9月 16, 2019
作者:
aaronchen2k2k
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
config before first run
上级
9255f70c
变更
8
隐藏空白更改
内联
并排
Showing
8 changed file
with
145 addition
and
120 deletion
+145
-120
res/messages_en.json
res/messages_en.json
+1
-1
src/action/gen.go
src/action/gen.go
+2
-1
src/action/run.go
src/action/run.go
+3
-2
src/action/set.go
src/action/set.go
+2
-72
src/test/test.go
src/test/test.go
+16
-3
src/utils/common/utils.go
src/utils/common/utils.go
+13
-0
src/utils/config/config.go
src/utils/config/config.go
+106
-32
src/ztf.go
src/ztf.go
+2
-9
未找到文件。
res/messages_en.json
浏览文件 @
5da77b3b
...
@@ -104,7 +104,7 @@
...
@@ -104,7 +104,7 @@
{
{
"id"
:
"need_config"
,
"id"
:
"need_config"
,
"translation"
:
"You need to config Zentao
site
before checkout, type 'exit' to quit."
"translation"
:
"You need to config Zentao
connection
before checkout, type 'exit' to quit."
},
},
{
{
"id"
:
"begin_config"
,
"id"
:
"begin_config"
,
...
...
src/action/gen.go
浏览文件 @
5da77b3b
...
@@ -3,6 +3,7 @@ package action
...
@@ -3,6 +3,7 @@ package action
import
(
import
(
"github.com/easysoft/zentaoatf/src/service/script"
"github.com/easysoft/zentaoatf/src/service/script"
"github.com/easysoft/zentaoatf/src/service/zentao"
"github.com/easysoft/zentaoatf/src/service/zentao"
configUtils
"github.com/easysoft/zentaoatf/src/utils/config"
"github.com/easysoft/zentaoatf/src/utils/const"
"github.com/easysoft/zentaoatf/src/utils/const"
"github.com/easysoft/zentaoatf/src/utils/i118"
"github.com/easysoft/zentaoatf/src/utils/i118"
"github.com/easysoft/zentaoatf/src/utils/lang"
"github.com/easysoft/zentaoatf/src/utils/lang"
...
@@ -14,7 +15,7 @@ import (
...
@@ -14,7 +15,7 @@ import (
func
Generate
(
productId
string
,
moduleId
string
,
suiteId
string
,
taskId
string
,
func
Generate
(
productId
string
,
moduleId
string
,
suiteId
string
,
taskId
string
,
independentFile
bool
,
scriptLang
string
)
{
independentFile
bool
,
scriptLang
string
)
{
CheckRequestConfig
()
configUtils
.
CheckRequestConfig
()
if
((
productId
!=
""
)
||
(
moduleId
!=
""
&&
productId
!=
""
)
||
suiteId
!=
""
||
taskId
!=
""
)
&&
scriptLang
!=
""
{
if
((
productId
!=
""
)
||
(
moduleId
!=
""
&&
productId
!=
""
)
||
suiteId
!=
""
||
taskId
!=
""
)
&&
scriptLang
!=
""
{
...
...
src/action/run.go
浏览文件 @
5da77b3b
...
@@ -6,6 +6,7 @@ import (
...
@@ -6,6 +6,7 @@ import (
testingService
"github.com/easysoft/zentaoatf/src/service/testing"
testingService
"github.com/easysoft/zentaoatf/src/service/testing"
zentaoService
"github.com/easysoft/zentaoatf/src/service/zentao"
zentaoService
"github.com/easysoft/zentaoatf/src/service/zentao"
"github.com/easysoft/zentaoatf/src/utils/common"
"github.com/easysoft/zentaoatf/src/utils/common"
configUtils
"github.com/easysoft/zentaoatf/src/utils/config"
constant
"github.com/easysoft/zentaoatf/src/utils/const"
constant
"github.com/easysoft/zentaoatf/src/utils/const"
fileUtils
"github.com/easysoft/zentaoatf/src/utils/file"
fileUtils
"github.com/easysoft/zentaoatf/src/utils/file"
i118Utils
"github.com/easysoft/zentaoatf/src/utils/i118"
i118Utils
"github.com/easysoft/zentaoatf/src/utils/i118"
...
@@ -68,7 +69,7 @@ func getCaseByTaskId(id string, dir string) []string {
...
@@ -68,7 +69,7 @@ func getCaseByTaskId(id string, dir string) []string {
taskId
,
err
:=
strconv
.
Atoi
(
id
)
taskId
,
err
:=
strconv
.
Atoi
(
id
)
if
err
==
nil
&&
taskId
>
0
{
if
err
==
nil
&&
taskId
>
0
{
CheckRequestConfig
()
configUtils
.
CheckRequestConfig
()
zentaoService
.
GetCaseIdsByTask
(
id
,
&
caseIdMap
)
zentaoService
.
GetCaseIdsByTask
(
id
,
&
caseIdMap
)
}
}
...
@@ -82,7 +83,7 @@ func getCaseBySuiteId(id string, dir string) []string {
...
@@ -82,7 +83,7 @@ func getCaseBySuiteId(id string, dir string) []string {
suiteId
,
err
:=
strconv
.
Atoi
(
id
)
suiteId
,
err
:=
strconv
.
Atoi
(
id
)
if
err
==
nil
&&
suiteId
>
0
{
if
err
==
nil
&&
suiteId
>
0
{
CheckRequestConfig
()
configUtils
.
CheckRequestConfig
()
zentaoService
.
GetCaseIdsBySuite
(
id
,
&
caseIdMap
)
zentaoService
.
GetCaseIdsBySuite
(
id
,
&
caseIdMap
)
}
}
...
...
src/action/set.go
浏览文件 @
5da77b3b
package
action
package
action
import
(
import
(
"fmt"
configUtils
"github.com/easysoft/zentaoatf/src/utils/config"
configUtils
"github.com/easysoft/zentaoatf/src/utils/config"
i118Utils
"github.com/easysoft/zentaoatf/src/utils/i118"
stdinUtils
"github.com/easysoft/zentaoatf/src/utils/stdin"
)
)
func
InputForSet
()
{
func
Set
()
{
conf
:=
configUtils
.
ReadCurrConfig
()
configUtils
.
InputForSet
()
var
configSite
bool
language
:=
""
url
:=
""
account
:=
""
password
:=
""
fmt
.
Println
(
i118Utils
.
I118Prt
.
Sprintf
(
"begin_config"
))
enCheck
:=
""
var
numb
string
if
conf
.
Language
==
"en"
{
enCheck
=
"*"
numb
=
"1"
}
zhCheck
:=
""
if
conf
.
Language
==
"zh"
{
zhCheck
=
"*"
numb
=
"2"
}
numbSelected
:=
stdinUtils
.
GetInput
(
"(1|2)"
,
numb
,
"enter_language"
,
enCheck
,
zhCheck
)
if
numbSelected
==
"1"
{
language
=
"en"
}
else
{
language
=
"zh"
}
stdinUtils
.
InputForBool
(
&
configSite
,
true
,
"config_zentao_site"
)
if
configSite
{
url
=
stdinUtils
.
GetInput
(
"(http://.*)"
,
conf
.
Url
,
"enter_url"
,
conf
.
Url
)
account
=
stdinUtils
.
GetInput
(
"(.{2,})"
,
conf
.
Account
,
"enter_account"
,
conf
.
Account
)
password
=
stdinUtils
.
GetInput
(
"(.{2,})"
,
conf
.
Password
,
"enter_password"
,
conf
.
Password
)
}
configUtils
.
SaveConfig
(
language
,
url
,
account
,
password
)
configUtils
.
PrintCurrConfig
()
}
func
CheckRequestConfig
()
{
conf
:=
configUtils
.
ReadCurrConfig
()
if
conf
.
Url
==
""
||
conf
.
Account
==
""
||
conf
.
Password
==
""
{
InputForRequest
()
}
}
func
InputForRequest
()
{
conf
:=
configUtils
.
ReadCurrConfig
()
url
:=
""
account
:=
""
password
:=
""
fmt
.
Println
(
i118Utils
.
I118Prt
.
Sprintf
(
"begin_config"
))
url
=
stdinUtils
.
GetInput
(
"(http://.*)"
,
conf
.
Url
,
"enter_url"
,
conf
.
Url
)
account
=
stdinUtils
.
GetInput
(
"(.{2,})"
,
conf
.
Account
,
"enter_account"
,
conf
.
Account
)
password
=
stdinUtils
.
GetInput
(
"(.{2,})"
,
conf
.
Password
,
"enter_password"
,
conf
.
Password
)
configUtils
.
SaveConfig
(
""
,
url
,
account
,
password
)
}
}
src/test/test.go
浏览文件 @
5da77b3b
...
@@ -2,10 +2,23 @@ package main
...
@@ -2,10 +2,23 @@ package main
import
(
import
(
"fmt"
"fmt"
commonUtils
"github.com/easysoft/zentaoatf/src/utils/common"
"os"
"path/filepath"
"strings"
)
)
func
main
()
{
func
main
()
{
osName
:=
commonUtils
.
GetOs
()
fmt
.
Println
(
osName
)
var
dir
string
arg1
:=
os
.
Args
[
0
]
if
strings
.
Index
(
arg1
,
"build"
)
>
-
1
{
dir
,
_
=
os
.
Getwd
()
}
else
{
dir
,
_
=
filepath
.
Abs
(
filepath
.
Dir
(
os
.
Args
[
0
]))
}
fmt
.
Println
(
dir
)
}
}
src/utils/common/utils.go
浏览文件 @
5da77b3b
...
@@ -147,3 +147,16 @@ func IngoreFile(path string) bool {
...
@@ -147,3 +147,16 @@ func IngoreFile(path string) bool {
return
false
return
false
}
}
}
}
func
GetZtfDir
()
string
{
var
dir
string
arg1
:=
os
.
Args
[
0
]
if
strings
.
Index
(
arg1
,
"build"
)
>
-
1
{
dir
,
_
=
os
.
Getwd
()
}
else
{
dir
,
_
=
filepath
.
Abs
(
filepath
.
Dir
(
os
.
Args
[
0
]))
}
return
dir
}
src/utils/config/config.go
浏览文件 @
5da77b3b
...
@@ -9,12 +9,12 @@ import (
...
@@ -9,12 +9,12 @@ import (
fileUtils
"github.com/easysoft/zentaoatf/src/utils/file"
fileUtils
"github.com/easysoft/zentaoatf/src/utils/file"
"github.com/easysoft/zentaoatf/src/utils/i118"
"github.com/easysoft/zentaoatf/src/utils/i118"
logUtils
"github.com/easysoft/zentaoatf/src/utils/log"
logUtils
"github.com/easysoft/zentaoatf/src/utils/log"
stdinUtils
"github.com/easysoft/zentaoatf/src/utils/stdin"
"github.com/easysoft/zentaoatf/src/utils/vari"
"github.com/easysoft/zentaoatf/src/utils/vari"
"github.com/fatih/color"
"github.com/fatih/color"
"gopkg.in/yaml.v2"
"gopkg.in/yaml.v2"
"io/ioutil"
"io/ioutil"
"reflect"
"reflect"
"sync"
)
)
func
InitConfig
()
{
func
InitConfig
()
{
...
@@ -26,7 +26,6 @@ func InitConfig() {
...
@@ -26,7 +26,6 @@ func InitConfig() {
// internationalization
// internationalization
i118Utils
.
InitI118
(
vari
.
Config
.
Language
)
i118Utils
.
InitI118
(
vari
.
Config
.
Language
)
}
}
func
InitScreenSize
()
{
func
InitScreenSize
()
{
...
@@ -35,28 +34,6 @@ func InitScreenSize() {
...
@@ -35,28 +34,6 @@ func InitScreenSize() {
vari
.
ScreenHeight
=
h
vari
.
ScreenHeight
=
h
}
}
func
getInst
()
model
.
Config
{
var
once
sync
.
Once
once
.
Do
(
func
()
{
vari
.
Config
=
model
.
Config
{}
if
fileUtils
.
FileExist
(
constant
.
ConfigFile
)
{
buf
,
_
:=
ioutil
.
ReadFile
(
constant
.
ConfigFile
)
yaml
.
Unmarshal
(
buf
,
&
vari
.
Config
)
if
vari
.
Config
.
Version
!=
constant
.
ConfigVer
{
// init
if
vari
.
Config
.
Language
!=
"en"
&&
vari
.
Config
.
Language
!=
"zh"
{
vari
.
Config
.
Language
=
"en"
}
SaveConfig
(
vari
.
Config
.
Language
,
vari
.
Config
.
Url
,
vari
.
Config
.
Account
,
vari
.
Config
.
Password
)
}
}
else
{
// init
vari
.
Config
=
saveEmptyConfig
()
}
})
return
vari
.
Config
}
func
SaveConfig
(
language
string
,
url
string
,
account
string
,
password
string
)
error
{
func
SaveConfig
(
language
string
,
url
string
,
account
string
,
password
string
)
error
{
config
:=
ReadCurrConfig
()
config
:=
ReadCurrConfig
()
...
@@ -99,22 +76,119 @@ func ReadCurrConfig() model.Config {
...
@@ -99,22 +76,119 @@ func ReadCurrConfig() model.Config {
configPath
:=
constant
.
ConfigFile
configPath
:=
constant
.
ConfigFile
var
config
model
.
Config
var
config
model
.
Config
if
!
fileUtils
.
FileExist
(
configPath
)
{
saveEmptyConfig
()
}
buf
,
_
:=
ioutil
.
ReadFile
(
configPath
)
buf
,
_
:=
ioutil
.
ReadFile
(
configPath
)
yaml
.
Unmarshal
(
buf
,
&
config
)
yaml
.
Unmarshal
(
buf
,
&
config
)
if
config
.
Language
==
""
{
config
.
Language
=
"en"
i118Utils
.
InitI118
(
"en"
)
}
config
.
Url
=
commonUtils
.
UpdateUrl
(
config
.
Url
)
config
.
Url
=
commonUtils
.
UpdateUrl
(
config
.
Url
)
if
vari
.
Config
.
Version
!=
constant
.
ConfigVer
{
// old config file, re-init
if
vari
.
Config
.
Language
!=
"en"
&&
vari
.
Config
.
Language
!=
"zh"
{
vari
.
Config
.
Language
=
"en"
}
SaveConfig
(
vari
.
Config
.
Language
,
vari
.
Config
.
Url
,
vari
.
Config
.
Account
,
vari
.
Config
.
Password
)
}
return
config
return
config
}
}
func
saveEmptyConfig
()
model
.
Config
{
func
getInst
()
model
.
Config
{
config
:=
model
.
Config
{
Version
:
constant
.
ConfigVer
,
Language
:
"en"
,
Url
:
""
,
Account
:
""
,
Password
:
""
}
CheckConfig
()
vari
.
Config
=
model
.
Config
{}
data
,
_
:=
yaml
.
Marshal
(
&
config
)
buf
,
_
:=
ioutil
.
ReadFile
(
constant
.
ConfigFile
)
ioutil
.
WriteFile
(
constant
.
ConfigFile
,
data
,
0666
)
yaml
.
Unmarshal
(
buf
,
&
vari
.
Config
)
return
config
if
vari
.
Config
.
Version
!=
constant
.
ConfigVer
{
// old config file, re-init
if
vari
.
Config
.
Language
!=
"en"
&&
vari
.
Config
.
Language
!=
"zh"
{
vari
.
Config
.
Language
=
"en"
}
SaveConfig
(
vari
.
Config
.
Language
,
vari
.
Config
.
Url
,
vari
.
Config
.
Account
,
vari
.
Config
.
Password
)
}
return
vari
.
Config
}
func
CheckConfig
()
{
configPath
:=
constant
.
ConfigFile
if
!
fileUtils
.
FileExist
(
configPath
)
{
InputForSet
()
}
}
func
InputForSet
()
{
conf
:=
ReadCurrConfig
()
var
configSite
bool
language
:=
""
url
:=
""
account
:=
""
password
:=
""
logUtils
.
PrintToStdOut
(
i118Utils
.
I118Prt
.
Sprintf
(
"begin_config"
),
color
.
FgCyan
)
enCheck
:=
""
var
numb
string
if
conf
.
Language
==
"en"
{
enCheck
=
"*"
numb
=
"1"
}
zhCheck
:=
""
if
conf
.
Language
==
"zh"
{
zhCheck
=
"*"
numb
=
"2"
}
numbSelected
:=
stdinUtils
.
GetInput
(
"(1|2)"
,
numb
,
"enter_language"
,
enCheck
,
zhCheck
)
if
numbSelected
==
"1"
{
language
=
"en"
}
else
{
language
=
"zh"
}
stdinUtils
.
InputForBool
(
&
configSite
,
true
,
"config_zentao_site"
)
if
configSite
{
url
=
stdinUtils
.
GetInput
(
"(http://.*)"
,
conf
.
Url
,
"enter_url"
,
conf
.
Url
)
account
=
stdinUtils
.
GetInput
(
"(.{2,})"
,
conf
.
Account
,
"enter_account"
,
conf
.
Account
)
password
=
stdinUtils
.
GetInput
(
"(.{2,})"
,
conf
.
Password
,
"enter_password"
,
conf
.
Password
)
}
SaveConfig
(
language
,
url
,
account
,
password
)
PrintCurrConfig
()
}
func
CheckRequestConfig
()
{
conf
:=
ReadCurrConfig
()
if
conf
.
Url
==
""
||
conf
.
Account
==
""
||
conf
.
Password
==
""
{
InputForRequest
()
}
}
func
InputForRequest
()
{
conf
:=
ReadCurrConfig
()
url
:=
""
account
:=
""
password
:=
""
logUtils
.
PrintToStdOut
(
i118Utils
.
I118Prt
.
Sprintf
(
"need_config"
),
color
.
FgCyan
)
url
=
stdinUtils
.
GetInput
(
"(http://.*)"
,
conf
.
Url
,
"enter_url"
,
conf
.
Url
)
account
=
stdinUtils
.
GetInput
(
"(.{2,})"
,
conf
.
Account
,
"enter_account"
,
conf
.
Account
)
password
=
stdinUtils
.
GetInput
(
"(.{2,})"
,
conf
.
Password
,
"enter_password"
,
conf
.
Password
)
SaveConfig
(
""
,
url
,
account
,
password
)
}
}
src/ztf.go
浏览文件 @
5da77b3b
...
@@ -108,7 +108,7 @@ func main() {
...
@@ -108,7 +108,7 @@ func main() {
}
}
case
"set"
,
"-set"
:
case
"set"
,
"-set"
:
action
.
InputFor
Set
()
action
.
Set
()
case
"help"
,
"-h"
:
case
"help"
,
"-h"
:
logUtils
.
PrintUsage
()
logUtils
.
PrintUsage
()
...
@@ -136,13 +136,6 @@ func run(args []string) {
...
@@ -136,13 +136,6 @@ func run(args []string) {
}
}
func
init
()
{
func
init
()
{
if
len
(
os
.
Args
)
>
1
{
vari
.
RunFromCui
=
false
if
os
.
Args
[
1
]
==
"cui"
{
vari
.
RunFromCui
=
true
}
else
{
vari
.
RunFromCui
=
false
}
}
configUtils
.
InitConfig
()
configUtils
.
InitConfig
()
}
}
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录