mirror of
https://github.com/httprunner/httprunner.git
synced 2026-06-06 16:29:37 +08:00
fix: unittest with failfast
This commit is contained in:
@@ -109,6 +109,6 @@ func TestLoopCount(t *testing.T) {
|
|||||||
go runner.start()
|
go runner.start()
|
||||||
<-runner.stopChan
|
<-runner.stopChan
|
||||||
if !assert.Equal(t, runner.loop.loopCount, atomic.LoadInt64(&runner.loop.finishedCount)) {
|
if !assert.Equal(t, runner.loop.loopCount, atomic.LoadInt64(&runner.loop.finishedCount)) {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -155,7 +155,7 @@ func TestSerializeStats(t *testing.T) {
|
|||||||
first := serialized[0]
|
first := serialized[0]
|
||||||
entry, err := deserializeStatsEntry(first)
|
entry, err := deserializeStatsEntry(first)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
|
|
||||||
if entry.Name != "success" {
|
if entry.Name != "success" {
|
||||||
|
|||||||
@@ -20,7 +20,7 @@ func TestStartsWith(t *testing.T) {
|
|||||||
|
|
||||||
for _, data := range testData {
|
for _, data := range testData {
|
||||||
if !assert.True(t, StartsWith(t, data.raw, data.expected)) {
|
if !assert.True(t, StartsWith(t, data.raw, data.expected)) {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -38,7 +38,7 @@ func TestEndsWith(t *testing.T) {
|
|||||||
|
|
||||||
for _, data := range testData {
|
for _, data := range testData {
|
||||||
if !assert.True(t, EndsWith(t, data.raw, data.expected)) {
|
if !assert.True(t, EndsWith(t, data.raw, data.expected)) {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -58,7 +58,7 @@ func TestEqualLength(t *testing.T) {
|
|||||||
|
|
||||||
for _, data := range testData {
|
for _, data := range testData {
|
||||||
if !assert.True(t, EqualLength(t, data.raw, data.expected)) {
|
if !assert.True(t, EqualLength(t, data.raw, data.expected)) {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -78,7 +78,7 @@ func TestLessThanLength(t *testing.T) {
|
|||||||
|
|
||||||
for _, data := range testData {
|
for _, data := range testData {
|
||||||
if !assert.True(t, LessThanLength(t, data.raw, data.expected)) {
|
if !assert.True(t, LessThanLength(t, data.raw, data.expected)) {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -98,7 +98,7 @@ func TestLessOrEqualsLength(t *testing.T) {
|
|||||||
|
|
||||||
for _, data := range testData {
|
for _, data := range testData {
|
||||||
if !assert.True(t, LessOrEqualsLength(t, data.raw, data.expected)) {
|
if !assert.True(t, LessOrEqualsLength(t, data.raw, data.expected)) {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -115,7 +115,7 @@ func TestGreaterThanLength(t *testing.T) {
|
|||||||
|
|
||||||
for _, data := range testData {
|
for _, data := range testData {
|
||||||
if !assert.True(t, GreaterThanLength(t, data.raw, data.expected)) {
|
if !assert.True(t, GreaterThanLength(t, data.raw, data.expected)) {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -135,7 +135,7 @@ func TestGreaterOrEqualsLength(t *testing.T) {
|
|||||||
|
|
||||||
for _, data := range testData {
|
for _, data := range testData {
|
||||||
if !assert.True(t, GreaterOrEqualsLength(t, data.raw, data.expected)) {
|
if !assert.True(t, GreaterOrEqualsLength(t, data.raw, data.expected)) {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -152,7 +152,7 @@ func TestContainedBy(t *testing.T) {
|
|||||||
|
|
||||||
for _, data := range testData {
|
for _, data := range testData {
|
||||||
if !assert.True(t, ContainedBy(t, data.raw, data.expected)) {
|
if !assert.True(t, ContainedBy(t, data.raw, data.expected)) {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -169,7 +169,7 @@ func TestStringEqual(t *testing.T) {
|
|||||||
|
|
||||||
for _, data := range testData {
|
for _, data := range testData {
|
||||||
if !assert.True(t, StringEqual(t, data.raw, data.expected)) {
|
if !assert.True(t, StringEqual(t, data.raw, data.expected)) {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -185,7 +185,7 @@ func TestRegexMatch(t *testing.T) {
|
|||||||
|
|
||||||
for _, data := range testData {
|
for _, data := range testData {
|
||||||
if !assert.True(t, RegexMatch(t, data.raw, data.expected)) {
|
if !assert.True(t, RegexMatch(t, data.raw, data.expected)) {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -270,11 +270,12 @@ func loadFromCSV(path string) []map[string]interface{} {
|
|||||||
log.Error().Err(err).Msg("parse csv file failed")
|
log.Error().Err(err).Msg("parse csv file failed")
|
||||||
os.Exit(1)
|
os.Exit(1)
|
||||||
}
|
}
|
||||||
|
firstLine := content[0] // parameter names
|
||||||
var result []map[string]interface{}
|
var result []map[string]interface{}
|
||||||
for i := 1; i < len(content); i++ {
|
for i := 1; i < len(content); i++ {
|
||||||
row := make(map[string]interface{})
|
row := make(map[string]interface{})
|
||||||
for j := 0; j < len(content[i]); j++ {
|
for j := 0; j < len(content[i]); j++ {
|
||||||
row[content[0][j]] = content[i][j]
|
row[firstLine[j]] = content[i][j]
|
||||||
}
|
}
|
||||||
result = append(result, row)
|
result = append(result, row)
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -17,20 +17,20 @@ var (
|
|||||||
func TestGenJSON(t *testing.T) {
|
func TestGenJSON(t *testing.T) {
|
||||||
jsonPath, err := NewHAR(harPath).GenJSON()
|
jsonPath, err := NewHAR(harPath).GenJSON()
|
||||||
if !assert.NoError(t, err) {
|
if !assert.NoError(t, err) {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
if !assert.NotEmpty(t, jsonPath) {
|
if !assert.NotEmpty(t, jsonPath) {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
func TestGenYAML(t *testing.T) {
|
func TestGenYAML(t *testing.T) {
|
||||||
yamlPath, err := NewHAR(harPath2).GenYAML()
|
yamlPath, err := NewHAR(harPath2).GenYAML()
|
||||||
if !assert.NoError(t, err) {
|
if !assert.NoError(t, err) {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
if !assert.NotEmpty(t, yamlPath) {
|
if !assert.NotEmpty(t, yamlPath) {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -38,13 +38,13 @@ func TestLoadHAR(t *testing.T) {
|
|||||||
har := NewHAR(harPath)
|
har := NewHAR(harPath)
|
||||||
h, err := har.load()
|
h, err := har.load()
|
||||||
if !assert.NoError(t, err) {
|
if !assert.NoError(t, err) {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
if !assert.Equal(t, "GET", h.Log.Entries[0].Request.Method) {
|
if !assert.Equal(t, "GET", h.Log.Entries[0].Request.Method) {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
if !assert.Equal(t, "POST", h.Log.Entries[1].Request.Method) {
|
if !assert.Equal(t, "POST", h.Log.Entries[1].Request.Method) {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -53,18 +53,18 @@ func TestLoadHARWithProfile(t *testing.T) {
|
|||||||
har.SetProfile(profilePath)
|
har.SetProfile(profilePath)
|
||||||
_, err := har.load()
|
_, err := har.load()
|
||||||
if !assert.NoError(t, err) {
|
if !assert.NoError(t, err) {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
|
|
||||||
if !assert.Equal(t,
|
if !assert.Equal(t,
|
||||||
map[string]interface{}{"Content-Type": "application/x-www-form-urlencoded"},
|
map[string]interface{}{"Content-Type": "application/x-www-form-urlencoded"},
|
||||||
har.profile["headers"]) {
|
har.profile["headers"]) {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
if !assert.Equal(t,
|
if !assert.Equal(t,
|
||||||
map[string]interface{}{"UserName": "debugtalk"},
|
map[string]interface{}{"UserName": "debugtalk"},
|
||||||
har.profile["cookies"]) {
|
har.profile["cookies"]) {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -72,73 +72,73 @@ func TestMakeTestCase(t *testing.T) {
|
|||||||
har := NewHAR(harPath)
|
har := NewHAR(harPath)
|
||||||
tCase, err := har.makeTestCase()
|
tCase, err := har.makeTestCase()
|
||||||
if !assert.NoError(t, err) {
|
if !assert.NoError(t, err) {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
|
|
||||||
// make request method
|
// make request method
|
||||||
if !assert.EqualValues(t, "GET", tCase.TestSteps[0].Request.Method) {
|
if !assert.EqualValues(t, "GET", tCase.TestSteps[0].Request.Method) {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
if !assert.EqualValues(t, "POST", tCase.TestSteps[1].Request.Method) {
|
if !assert.EqualValues(t, "POST", tCase.TestSteps[1].Request.Method) {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
|
|
||||||
// make request url
|
// make request url
|
||||||
if !assert.Equal(t, "https://postman-echo.com/get", tCase.TestSteps[0].Request.URL) {
|
if !assert.Equal(t, "https://postman-echo.com/get", tCase.TestSteps[0].Request.URL) {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
if !assert.Equal(t, "https://postman-echo.com/post", tCase.TestSteps[1].Request.URL) {
|
if !assert.Equal(t, "https://postman-echo.com/post", tCase.TestSteps[1].Request.URL) {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
|
|
||||||
// make request params
|
// make request params
|
||||||
if !assert.Equal(t, "HDnY8", tCase.TestSteps[0].Request.Params["foo1"]) {
|
if !assert.Equal(t, "HDnY8", tCase.TestSteps[0].Request.Params["foo1"]) {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
|
|
||||||
// make request cookies
|
// make request cookies
|
||||||
if !assert.NotEmpty(t, tCase.TestSteps[1].Request.Cookies["sails.sid"]) {
|
if !assert.NotEmpty(t, tCase.TestSteps[1].Request.Cookies["sails.sid"]) {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
|
|
||||||
// make request headers
|
// make request headers
|
||||||
if !assert.Equal(t, "HttpRunnerPlus", tCase.TestSteps[0].Request.Headers["User-Agent"]) {
|
if !assert.Equal(t, "HttpRunnerPlus", tCase.TestSteps[0].Request.Headers["User-Agent"]) {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
if !assert.Equal(t, "postman-echo.com", tCase.TestSteps[0].Request.Headers["Host"]) {
|
if !assert.Equal(t, "postman-echo.com", tCase.TestSteps[0].Request.Headers["Host"]) {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
|
|
||||||
// make request data
|
// make request data
|
||||||
if !assert.Equal(t, nil, tCase.TestSteps[0].Request.Body) {
|
if !assert.Equal(t, nil, tCase.TestSteps[0].Request.Body) {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
if !assert.Equal(t, map[string]interface{}{"foo1": "HDnY8", "foo2": 12.3}, tCase.TestSteps[1].Request.Body) {
|
if !assert.Equal(t, map[string]interface{}{"foo1": "HDnY8", "foo2": 12.3}, tCase.TestSteps[1].Request.Body) {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
if !assert.Equal(t, "foo1=HDnY8&foo2=12.3", tCase.TestSteps[2].Request.Body) {
|
if !assert.Equal(t, "foo1=HDnY8&foo2=12.3", tCase.TestSteps[2].Request.Body) {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
|
|
||||||
// make validators
|
// make validators
|
||||||
validator, ok := tCase.TestSteps[0].Validators[0].(hrp.Validator)
|
validator, ok := tCase.TestSteps[0].Validators[0].(hrp.Validator)
|
||||||
if !ok || !assert.Equal(t, "status_code", validator.Check) {
|
if !ok || !assert.Equal(t, "status_code", validator.Check) {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
validator, ok = tCase.TestSteps[0].Validators[1].(hrp.Validator)
|
validator, ok = tCase.TestSteps[0].Validators[1].(hrp.Validator)
|
||||||
if !ok || !assert.Equal(t, "headers.\"Content-Type\"", validator.Check) {
|
if !ok || !assert.Equal(t, "headers.\"Content-Type\"", validator.Check) {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
validator, ok = tCase.TestSteps[0].Validators[2].(hrp.Validator)
|
validator, ok = tCase.TestSteps[0].Validators[2].(hrp.Validator)
|
||||||
if !ok || !assert.Equal(t, "body.url", validator.Check) {
|
if !ok || !assert.Equal(t, "body.url", validator.Check) {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
func TestGetFilenameWithoutExtension(t *testing.T) {
|
func TestGetFilenameWithoutExtension(t *testing.T) {
|
||||||
filename := getFilenameWithoutExtension(harPath2)
|
filename := getFilenameWithoutExtension(harPath2)
|
||||||
if !assert.Equal(t, "postman-echo", filename) {
|
if !assert.Equal(t, "postman-echo", filename) {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -154,13 +154,13 @@ func TestMakeRequestHeaders(t *testing.T) {
|
|||||||
}
|
}
|
||||||
step, err := har.prepareTestStep(entry)
|
step, err := har.prepareTestStep(entry)
|
||||||
if !assert.NoError(t, err) {
|
if !assert.NoError(t, err) {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
|
|
||||||
if !assert.Equal(t, map[string]string{
|
if !assert.Equal(t, map[string]string{
|
||||||
"Content-Type": "application/json; charset=utf-8",
|
"Content-Type": "application/json; charset=utf-8",
|
||||||
}, step.Request.Headers) {
|
}, step.Request.Headers) {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -177,13 +177,13 @@ func TestMakeRequestHeadersWithProfile(t *testing.T) {
|
|||||||
}
|
}
|
||||||
step, err := har.prepareTestStep(entry)
|
step, err := har.prepareTestStep(entry)
|
||||||
if !assert.NoError(t, err) {
|
if !assert.NoError(t, err) {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
|
|
||||||
if !assert.Equal(t, map[string]string{
|
if !assert.Equal(t, map[string]string{
|
||||||
"Content-Type": "application/x-www-form-urlencoded",
|
"Content-Type": "application/x-www-form-urlencoded",
|
||||||
}, step.Request.Headers) {
|
}, step.Request.Headers) {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -200,14 +200,14 @@ func TestMakeRequestCookies(t *testing.T) {
|
|||||||
}
|
}
|
||||||
step, err := har.prepareTestStep(entry)
|
step, err := har.prepareTestStep(entry)
|
||||||
if !assert.NoError(t, err) {
|
if !assert.NoError(t, err) {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
|
|
||||||
if !assert.Equal(t, map[string]string{
|
if !assert.Equal(t, map[string]string{
|
||||||
"abc": "123",
|
"abc": "123",
|
||||||
"UserName": "leolee",
|
"UserName": "leolee",
|
||||||
}, step.Request.Cookies) {
|
}, step.Request.Cookies) {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -225,13 +225,13 @@ func TestMakeRequestCookiesWithProfile(t *testing.T) {
|
|||||||
}
|
}
|
||||||
step, err := har.prepareTestStep(entry)
|
step, err := har.prepareTestStep(entry)
|
||||||
if !assert.NoError(t, err) {
|
if !assert.NoError(t, err) {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
|
|
||||||
if !assert.Equal(t, map[string]string{
|
if !assert.Equal(t, map[string]string{
|
||||||
"UserName": "debugtalk",
|
"UserName": "debugtalk",
|
||||||
}, step.Request.Cookies) {
|
}, step.Request.Cookies) {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -251,11 +251,11 @@ func TestMakeRequestDataParams(t *testing.T) {
|
|||||||
}
|
}
|
||||||
step, err := har.prepareTestStep(entry)
|
step, err := har.prepareTestStep(entry)
|
||||||
if !assert.NoError(t, err) {
|
if !assert.NoError(t, err) {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
|
|
||||||
if !assert.Equal(t, "a=1&b=2", step.Request.Body) {
|
if !assert.Equal(t, "a=1&b=2", step.Request.Body) {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -272,11 +272,11 @@ func TestMakeRequestDataJSON(t *testing.T) {
|
|||||||
}
|
}
|
||||||
step, err := har.prepareTestStep(entry)
|
step, err := har.prepareTestStep(entry)
|
||||||
if !assert.NoError(t, err) {
|
if !assert.NoError(t, err) {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
|
|
||||||
if !assert.Equal(t, map[string]interface{}{"a": "1", "b": "2"}, step.Request.Body) {
|
if !assert.Equal(t, map[string]interface{}{"a": "1", "b": "2"}, step.Request.Body) {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -293,11 +293,11 @@ func TestMakeRequestDataTextEmpty(t *testing.T) {
|
|||||||
}
|
}
|
||||||
step, err := har.prepareTestStep(entry)
|
step, err := har.prepareTestStep(entry)
|
||||||
if !assert.NoError(t, err) {
|
if !assert.NoError(t, err) {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
|
|
||||||
if !assert.Equal(t, nil, step.Request.Body) { // TODO
|
if !assert.Equal(t, nil, step.Request.Body) { // TODO
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -320,11 +320,11 @@ func TestMakeValidate(t *testing.T) {
|
|||||||
}
|
}
|
||||||
step, err := har.prepareTestStep(entry)
|
step, err := har.prepareTestStep(entry)
|
||||||
if !assert.NoError(t, err) {
|
if !assert.NoError(t, err) {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
validator, ok := step.Validators[0].(hrp.Validator)
|
validator, ok := step.Validators[0].(hrp.Validator)
|
||||||
if !ok {
|
if !ok {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
if !assert.Equal(t, validator,
|
if !assert.Equal(t, validator,
|
||||||
hrp.Validator{
|
hrp.Validator{
|
||||||
@@ -332,12 +332,12 @@ func TestMakeValidate(t *testing.T) {
|
|||||||
Expect: 200,
|
Expect: 200,
|
||||||
Assert: "equals",
|
Assert: "equals",
|
||||||
Message: "assert response status code"}) {
|
Message: "assert response status code"}) {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
|
|
||||||
validator, ok = step.Validators[1].(hrp.Validator)
|
validator, ok = step.Validators[1].(hrp.Validator)
|
||||||
if !ok {
|
if !ok {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
if !assert.Equal(t, validator,
|
if !assert.Equal(t, validator,
|
||||||
hrp.Validator{
|
hrp.Validator{
|
||||||
@@ -345,12 +345,12 @@ func TestMakeValidate(t *testing.T) {
|
|||||||
Expect: "application/json; charset=utf-8",
|
Expect: "application/json; charset=utf-8",
|
||||||
Assert: "equals",
|
Assert: "equals",
|
||||||
Message: "assert response header Content-Type"}) {
|
Message: "assert response header Content-Type"}) {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
|
|
||||||
validator, ok = step.Validators[2].(hrp.Validator)
|
validator, ok = step.Validators[2].(hrp.Validator)
|
||||||
if !ok {
|
if !ok {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
if !assert.Equal(t, validator,
|
if !assert.Equal(t, validator,
|
||||||
hrp.Validator{
|
hrp.Validator{
|
||||||
@@ -358,6 +358,6 @@ func TestMakeValidate(t *testing.T) {
|
|||||||
Expect: float64(200), // TODO
|
Expect: float64(200), // TODO
|
||||||
Assert: "equals",
|
Assert: "equals",
|
||||||
Message: "assert response body Code"}) {
|
Message: "assert response body Code"}) {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -10,20 +10,20 @@ func TestGenDemoExamples(t *testing.T) {
|
|||||||
os.RemoveAll(dir)
|
os.RemoveAll(dir)
|
||||||
err := CreateScaffold(dir, Go)
|
err := CreateScaffold(dir, Go)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
|
|
||||||
dir = "../../../examples/demo-with-py-plugin"
|
dir = "../../../examples/demo-with-py-plugin"
|
||||||
os.RemoveAll(dir)
|
os.RemoveAll(dir)
|
||||||
err = CreateScaffold(dir, Py)
|
err = CreateScaffold(dir, Py)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
|
|
||||||
dir = "../../../examples/demo-without-plugin"
|
dir = "../../../examples/demo-without-plugin"
|
||||||
os.RemoveAll(dir)
|
os.RemoveAll(dir)
|
||||||
err = CreateScaffold(dir, Ignore)
|
err = CreateScaffold(dir, Ignore)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
6
hrp/internal/scaffold/templates/pytest.ini
Normal file
6
hrp/internal/scaffold/templates/pytest.ini
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
[pytest]
|
||||||
|
addopts = -s
|
||||||
|
# https://docs.pytest.org/en/latest/how-to/output.html
|
||||||
|
junit_logging = all
|
||||||
|
junit_duration_report = total
|
||||||
|
log_cli = False
|
||||||
@@ -25,6 +25,6 @@ func TestStructToUrlValues(t *testing.T) {
|
|||||||
}
|
}
|
||||||
val := structToUrlValues(event)
|
val := structToUrlValues(event)
|
||||||
if val.Encode() != "ea=convert&ec=unittest&el=v0.3.0&ev=123" {
|
if val.Encode() != "ea=convert&ec=unittest&el=v0.3.0&ev=123" {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -454,7 +454,7 @@ func (p *Parser) ParseVariables(variables map[string]interface{}) (map[string]in
|
|||||||
return parsedVariables, nil
|
return parsedVariables, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
type variableSet map[string]struct{}
|
type variableSet map[string]struct{} // TODO
|
||||||
|
|
||||||
func extractVariables(raw interface{}) variableSet {
|
func extractVariables(raw interface{}) variableSet {
|
||||||
rawValue := reflect.ValueOf(raw)
|
rawValue := reflect.ValueOf(raw)
|
||||||
|
|||||||
@@ -13,41 +13,41 @@ func TestBuildURL(t *testing.T) {
|
|||||||
|
|
||||||
url = buildURL("https://postman-echo.com", "/get")
|
url = buildURL("https://postman-echo.com", "/get")
|
||||||
if !assert.Equal(t, url, "https://postman-echo.com/get") {
|
if !assert.Equal(t, url, "https://postman-echo.com/get") {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
url = buildURL("https://postman-echo.com", "get")
|
url = buildURL("https://postman-echo.com", "get")
|
||||||
if !assert.Equal(t, url, "https://postman-echo.com/get") {
|
if !assert.Equal(t, url, "https://postman-echo.com/get") {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
url = buildURL("https://postman-echo.com/", "/get")
|
url = buildURL("https://postman-echo.com/", "/get")
|
||||||
if !assert.Equal(t, url, "https://postman-echo.com/get") {
|
if !assert.Equal(t, url, "https://postman-echo.com/get") {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
|
|
||||||
url = buildURL("https://postman-echo.com/abc/", "/get?a=1&b=2")
|
url = buildURL("https://postman-echo.com/abc/", "/get?a=1&b=2")
|
||||||
if !assert.Equal(t, url, "https://postman-echo.com/abc/get?a=1&b=2") {
|
if !assert.Equal(t, url, "https://postman-echo.com/abc/get?a=1&b=2") {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
url = buildURL("https://postman-echo.com/abc", "get?a=1&b=2")
|
url = buildURL("https://postman-echo.com/abc", "get?a=1&b=2")
|
||||||
if !assert.Equal(t, url, "https://postman-echo.com/abc/get?a=1&b=2") {
|
if !assert.Equal(t, url, "https://postman-echo.com/abc/get?a=1&b=2") {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
|
|
||||||
// omit query string in base url
|
// omit query string in base url
|
||||||
url = buildURL("https://postman-echo.com/abc?x=6&y=9", "/get?a=1&b=2")
|
url = buildURL("https://postman-echo.com/abc?x=6&y=9", "/get?a=1&b=2")
|
||||||
if !assert.Equal(t, url, "https://postman-echo.com/abc/get?a=1&b=2") {
|
if !assert.Equal(t, url, "https://postman-echo.com/abc/get?a=1&b=2") {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
|
|
||||||
url = buildURL("", "https://postman-echo.com/get")
|
url = buildURL("", "https://postman-echo.com/get")
|
||||||
if !assert.Equal(t, url, "https://postman-echo.com/get") {
|
if !assert.Equal(t, url, "https://postman-echo.com/get") {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
|
|
||||||
// notice: step request url > config base url
|
// notice: step request url > config base url
|
||||||
url = buildURL("https://postman-echo.com", "https://httpbin.org/get")
|
url = buildURL("https://postman-echo.com", "https://httpbin.org/get")
|
||||||
if !assert.Equal(t, url, "https://httpbin.org/get") {
|
if !assert.Equal(t, url, "https://httpbin.org/get") {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -64,7 +64,7 @@ func TestRegexCompileVariable(t *testing.T) {
|
|||||||
for _, expr := range testData {
|
for _, expr := range testData {
|
||||||
varMatched := regexCompileVariable.FindStringSubmatch(expr)
|
varMatched := regexCompileVariable.FindStringSubmatch(expr)
|
||||||
if !assert.Len(t, varMatched, 3) {
|
if !assert.Len(t, varMatched, 3) {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -81,7 +81,7 @@ func TestRegexCompileAbnormalVariable(t *testing.T) {
|
|||||||
for _, expr := range testData {
|
for _, expr := range testData {
|
||||||
varMatched := regexCompileVariable.FindStringSubmatch(expr)
|
varMatched := regexCompileVariable.FindStringSubmatch(expr)
|
||||||
if !assert.Len(t, varMatched, 0) {
|
if !assert.Len(t, varMatched, 0) {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -99,7 +99,7 @@ func TestRegexCompileFunction(t *testing.T) {
|
|||||||
for _, expr := range testData {
|
for _, expr := range testData {
|
||||||
varMatched := regexCompileFunction.FindStringSubmatch(expr)
|
varMatched := regexCompileFunction.FindStringSubmatch(expr)
|
||||||
if !assert.Len(t, varMatched, 3) {
|
if !assert.Len(t, varMatched, 3) {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -121,7 +121,7 @@ func TestRegexCompileAbnormalFunction(t *testing.T) {
|
|||||||
for _, expr := range testData {
|
for _, expr := range testData {
|
||||||
varMatched := regexCompileFunction.FindStringSubmatch(expr)
|
varMatched := regexCompileFunction.FindStringSubmatch(expr)
|
||||||
if !assert.Len(t, varMatched, 0) {
|
if !assert.Len(t, varMatched, 0) {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -183,10 +183,10 @@ func TestParseDataStringWithVariables(t *testing.T) {
|
|||||||
for _, data := range testData {
|
for _, data := range testData {
|
||||||
parsedData, err := parser.Parse(data.expr, variablesMapping)
|
parsedData, err := parser.Parse(data.expr, variablesMapping)
|
||||||
if !assert.NoError(t, err) {
|
if !assert.NoError(t, err) {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
if !assert.Equal(t, data.expect, parsedData) {
|
if !assert.Equal(t, data.expect, parsedData) {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -208,10 +208,10 @@ func TestParseDataStringWithUndefinedVariables(t *testing.T) {
|
|||||||
for _, data := range testData {
|
for _, data := range testData {
|
||||||
parsedData, err := parser.Parse(data.expr, variablesMapping)
|
parsedData, err := parser.Parse(data.expr, variablesMapping)
|
||||||
if !assert.Error(t, err) {
|
if !assert.Error(t, err) {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
if !assert.Equal(t, data.expect, parsedData) {
|
if !assert.Equal(t, data.expect, parsedData) {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -253,10 +253,10 @@ func TestParseDataStringWithVariablesAbnormal(t *testing.T) {
|
|||||||
for _, data := range testData {
|
for _, data := range testData {
|
||||||
parsedData, err := parser.Parse(data.expr, variablesMapping)
|
parsedData, err := parser.Parse(data.expr, variablesMapping)
|
||||||
if !assert.NoError(t, err) {
|
if !assert.NoError(t, err) {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
if !assert.Equal(t, data.expect, parsedData) {
|
if !assert.Equal(t, data.expect, parsedData) {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -284,10 +284,10 @@ func TestParseDataMapWithVariables(t *testing.T) {
|
|||||||
for _, data := range testData {
|
for _, data := range testData {
|
||||||
parsedData, err := parser.Parse(data.expr, variablesMapping)
|
parsedData, err := parser.Parse(data.expr, variablesMapping)
|
||||||
if !assert.NoError(t, err) {
|
if !assert.NoError(t, err) {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
if !assert.Equal(t, data.expect, parsedData) {
|
if !assert.Equal(t, data.expect, parsedData) {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -318,10 +318,10 @@ func TestParseHeaders(t *testing.T) {
|
|||||||
for _, data := range testData {
|
for _, data := range testData {
|
||||||
parsedHeaders, err := parser.ParseHeaders(data.rawHeaders, variablesMapping)
|
parsedHeaders, err := parser.ParseHeaders(data.rawHeaders, variablesMapping)
|
||||||
if !assert.NoError(t, err) {
|
if !assert.NoError(t, err) {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
if !assert.Equal(t, data.expectHeaders, parsedHeaders) {
|
if !assert.Equal(t, data.expectHeaders, parsedHeaders) {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -347,7 +347,7 @@ func TestMergeVariables(t *testing.T) {
|
|||||||
for _, data := range testData {
|
for _, data := range testData {
|
||||||
mergedVariables := mergeVariables(data.stepVariables, data.configVariables)
|
mergedVariables := mergeVariables(data.stepVariables, data.configVariables)
|
||||||
if !assert.Equal(t, data.expectVariables, mergedVariables) {
|
if !assert.Equal(t, data.expectVariables, mergedVariables) {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -383,7 +383,7 @@ func TestMergeMap(t *testing.T) {
|
|||||||
for _, data := range testData {
|
for _, data := range testData {
|
||||||
mergedMap := mergeMap(data.m, data.overriddenMap)
|
mergedMap := mergeMap(data.m, data.overriddenMap)
|
||||||
if !assert.Equal(t, data.expectMap, mergedMap) {
|
if !assert.Equal(t, data.expectMap, mergedMap) {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -414,7 +414,7 @@ func TestMergeSlices(t *testing.T) {
|
|||||||
for _, data := range testData {
|
for _, data := range testData {
|
||||||
mergedSlice := mergeSlices(data.slice, data.overriddenSlice)
|
mergedSlice := mergeSlices(data.slice, data.overriddenSlice)
|
||||||
if !assert.Equal(t, data.expectSlice, mergedSlice) {
|
if !assert.Equal(t, data.expectSlice, mergedSlice) {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -453,7 +453,7 @@ func TestMergeValidators(t *testing.T) {
|
|||||||
for _, data := range testData {
|
for _, data := range testData {
|
||||||
mergedValidators := mergeValidators(data.validators, data.overriddenValidators)
|
mergedValidators := mergeValidators(data.validators, data.overriddenValidators)
|
||||||
if !assert.Equal(t, data.expectValidators, mergedValidators) {
|
if !assert.Equal(t, data.expectValidators, mergedValidators) {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -464,35 +464,35 @@ func TestCallBuiltinFunction(t *testing.T) {
|
|||||||
// call function without arguments
|
// call function without arguments
|
||||||
_, err := parser.CallFunc("get_timestamp")
|
_, err := parser.CallFunc("get_timestamp")
|
||||||
if !assert.NoError(t, err) {
|
if !assert.NoError(t, err) {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
|
|
||||||
// call function with one argument
|
// call function with one argument
|
||||||
timeStart := time.Now()
|
timeStart := time.Now()
|
||||||
_, err = parser.CallFunc("sleep", 1)
|
_, err = parser.CallFunc("sleep", 1)
|
||||||
if !assert.NoError(t, err) {
|
if !assert.NoError(t, err) {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
if !assert.Greater(t, time.Since(timeStart), time.Duration(1)*time.Second) {
|
if !assert.Greater(t, time.Since(timeStart), time.Duration(1)*time.Second) {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
|
|
||||||
// call function with one argument
|
// call function with one argument
|
||||||
result, err := parser.CallFunc("gen_random_string", 10)
|
result, err := parser.CallFunc("gen_random_string", 10)
|
||||||
if !assert.NoError(t, err) {
|
if !assert.NoError(t, err) {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
if !assert.Equal(t, 10, len(result.(string))) {
|
if !assert.Equal(t, 10, len(result.(string))) {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
|
|
||||||
// call function with two argument
|
// call function with two argument
|
||||||
result, err = parser.CallFunc("max", float64(10), 9.99)
|
result, err = parser.CallFunc("max", float64(10), 9.99)
|
||||||
if !assert.NoError(t, err) {
|
if !assert.NoError(t, err) {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
if !assert.Equal(t, float64(10), result.(float64)) {
|
if !assert.Equal(t, float64(10), result.(float64)) {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -517,10 +517,10 @@ func TestLiteralEval(t *testing.T) {
|
|||||||
for _, data := range testData {
|
for _, data := range testData {
|
||||||
value, err := literalEval(data.expr)
|
value, err := literalEval(data.expr)
|
||||||
if !assert.NoError(t, err) {
|
if !assert.NoError(t, err) {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
if !assert.Equal(t, data.expect, value) {
|
if !assert.Equal(t, data.expect, value) {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -547,10 +547,10 @@ func TestParseFunctionArguments(t *testing.T) {
|
|||||||
for _, data := range testData {
|
for _, data := range testData {
|
||||||
value, err := parseFunctionArguments(data.expr)
|
value, err := parseFunctionArguments(data.expr)
|
||||||
if !assert.NoError(t, err) {
|
if !assert.NoError(t, err) {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
if !assert.Equal(t, data.expect, value) {
|
if !assert.Equal(t, data.expect, value) {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -576,10 +576,10 @@ func TestParseDataStringWithFunctions(t *testing.T) {
|
|||||||
for _, data := range testData1 {
|
for _, data := range testData1 {
|
||||||
value, err := parser.Parse(data.expr, variablesMapping)
|
value, err := parser.Parse(data.expr, variablesMapping)
|
||||||
if !assert.NoError(t, err) {
|
if !assert.NoError(t, err) {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
if !assert.Equal(t, data.expect, len(value.(string))) {
|
if !assert.Equal(t, data.expect, len(value.(string))) {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -595,10 +595,10 @@ func TestParseDataStringWithFunctions(t *testing.T) {
|
|||||||
for _, data := range testData2 {
|
for _, data := range testData2 {
|
||||||
value, err := parser.Parse(data.expr, variablesMapping)
|
value, err := parser.Parse(data.expr, variablesMapping)
|
||||||
if !assert.NoError(t, err) {
|
if !assert.NoError(t, err) {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
if !assert.Equal(t, data.expect, value) {
|
if !assert.Equal(t, data.expect, value) {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -619,7 +619,7 @@ func TestConvertString(t *testing.T) {
|
|||||||
for _, data := range testData {
|
for _, data := range testData {
|
||||||
value := convertString(data.raw)
|
value := convertString(data.raw)
|
||||||
if !assert.Equal(t, data.expect, value) {
|
if !assert.Equal(t, data.expect, value) {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -643,10 +643,10 @@ func TestParseVariables(t *testing.T) {
|
|||||||
for _, data := range testData {
|
for _, data := range testData {
|
||||||
value, err := parser.ParseVariables(data.rawVars)
|
value, err := parser.ParseVariables(data.rawVars)
|
||||||
if !assert.NoError(t, err) {
|
if !assert.NoError(t, err) {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
if !assert.Equal(t, data.expectVars, value) {
|
if !assert.Equal(t, data.expectVars, value) {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -674,10 +674,10 @@ func TestParseVariablesAbnormal(t *testing.T) {
|
|||||||
for _, data := range testData {
|
for _, data := range testData {
|
||||||
value, err := parser.ParseVariables(data.rawVars)
|
value, err := parser.ParseVariables(data.rawVars)
|
||||||
if !assert.Error(t, err) {
|
if !assert.Error(t, err) {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
if !assert.Equal(t, data.expectVars, value) {
|
if !assert.Equal(t, data.expectVars, value) {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -710,7 +710,7 @@ func TestExtractVariables(t *testing.T) {
|
|||||||
}
|
}
|
||||||
sort.Strings(varList)
|
sort.Strings(varList)
|
||||||
if !assert.Equal(t, data.expectVars, varList) {
|
if !assert.Equal(t, data.expectVars, varList) {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -749,7 +749,7 @@ func TestFindallVariables(t *testing.T) {
|
|||||||
}
|
}
|
||||||
sort.Strings(varList)
|
sort.Strings(varList)
|
||||||
if !assert.Equal(t, data.expectVars, varList) {
|
if !assert.Equal(t, data.expectVars, varList) {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -10,36 +10,36 @@ func TestLocateFile(t *testing.T) {
|
|||||||
// specify target file path
|
// specify target file path
|
||||||
_, err := locateFile(templatesDir+"plugin/debugtalk.go", "debugtalk.go")
|
_, err := locateFile(templatesDir+"plugin/debugtalk.go", "debugtalk.go")
|
||||||
if !assert.Nil(t, err) {
|
if !assert.Nil(t, err) {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
|
|
||||||
// specify path with the same dir
|
// specify path with the same dir
|
||||||
_, err = locateFile(templatesDir+"plugin/debugtalk.py", "debugtalk.go")
|
_, err = locateFile(templatesDir+"plugin/debugtalk.py", "debugtalk.go")
|
||||||
if !assert.Nil(t, err) {
|
if !assert.Nil(t, err) {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
|
|
||||||
// specify target file path dir
|
// specify target file path dir
|
||||||
_, err = locateFile(templatesDir+"plugin/", "debugtalk.go")
|
_, err = locateFile(templatesDir+"plugin/", "debugtalk.go")
|
||||||
if !assert.Nil(t, err) {
|
if !assert.Nil(t, err) {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
|
|
||||||
// specify wrong path
|
// specify wrong path
|
||||||
_, err = locateFile(".", "debugtalk.go")
|
_, err = locateFile(".", "debugtalk.go")
|
||||||
if !assert.Error(t, err) {
|
if !assert.Error(t, err) {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
_, err = locateFile("/abc", "debugtalk.go")
|
_, err = locateFile("/abc", "debugtalk.go")
|
||||||
if !assert.Error(t, err) {
|
if !assert.Error(t, err) {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
func TestLocatePythonPlugin(t *testing.T) {
|
func TestLocatePythonPlugin(t *testing.T) {
|
||||||
_, err := locatePlugin(templatesDir + "plugin/debugtalk.py")
|
_, err := locatePlugin(templatesDir + "plugin/debugtalk.py")
|
||||||
if !assert.Nil(t, err) {
|
if !assert.Nil(t, err) {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -49,6 +49,6 @@ func TestLocateGoPlugin(t *testing.T) {
|
|||||||
|
|
||||||
_, err := locatePlugin(templatesDir + "debugtalk.bin")
|
_, err := locatePlugin(templatesDir + "debugtalk.bin")
|
||||||
if !assert.Nil(t, err) {
|
if !assert.Nil(t, err) {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -24,11 +24,11 @@ func TestSearchJmespath(t *testing.T) {
|
|||||||
resp.Body = io.NopCloser(strings.NewReader(testText))
|
resp.Body = io.NopCloser(strings.NewReader(testText))
|
||||||
respObj, err := newResponseObject(t, newParser(), &resp)
|
respObj, err := newResponseObject(t, newParser(), &resp)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
for _, data := range testData {
|
for _, data := range testData {
|
||||||
if !assert.Equal(t, data.expected, respObj.searchJmespath(data.raw)) {
|
if !assert.Equal(t, data.expected, respObj.searchJmespath(data.raw)) {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -49,11 +49,11 @@ func TestSearchRegexp(t *testing.T) {
|
|||||||
resp.Body = io.NopCloser(strings.NewReader(testText))
|
resp.Body = io.NopCloser(strings.NewReader(testText))
|
||||||
respObj, err := newResponseObject(t, newParser(), &resp)
|
respObj, err := newResponseObject(t, newParser(), &resp)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
for _, data := range testData {
|
for _, data := range testData {
|
||||||
if !assert.Equal(t, data.expected, respObj.searchRegexp(data.raw)) {
|
if !assert.Equal(t, data.expected, respObj.searchRegexp(data.raw)) {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -161,7 +161,7 @@ func TestRunCaseWithPluginJSON(t *testing.T) {
|
|||||||
|
|
||||||
err := NewRunner(nil).Run(&demoTestCaseWithPluginJSONPath) // hrp.Run(testCase)
|
err := NewRunner(nil).Run(&demoTestCaseWithPluginJSONPath) // hrp.Run(testCase)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -171,7 +171,7 @@ func TestRunCaseWithPluginYAML(t *testing.T) {
|
|||||||
|
|
||||||
err := NewRunner(nil).Run(&demoTestCaseWithPluginYAMLPath) // hrp.Run(testCase)
|
err := NewRunner(nil).Run(&demoTestCaseWithPluginYAMLPath) // hrp.Run(testCase)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -181,7 +181,7 @@ func TestRunCaseWithRefAPI(t *testing.T) {
|
|||||||
|
|
||||||
err := NewRunner(nil).Run(&demoTestCaseWithRefAPIPath)
|
err := NewRunner(nil).Run(&demoTestCaseWithRefAPIPath)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
|
|
||||||
testcase := &TestCase{
|
testcase := &TestCase{
|
||||||
@@ -195,7 +195,7 @@ func TestRunCaseWithRefAPI(t *testing.T) {
|
|||||||
r := NewRunner(t)
|
r := NewRunner(t)
|
||||||
err = r.Run(testcase)
|
err = r.Run(testcase)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -204,30 +204,30 @@ func TestLoadTestCases(t *testing.T) {
|
|||||||
tc := TestCasePath("../examples/demo-with-py-plugin/testcases/")
|
tc := TestCasePath("../examples/demo-with-py-plugin/testcases/")
|
||||||
testCases, err := loadTestCases(&tc)
|
testCases, err := loadTestCases(&tc)
|
||||||
if !assert.Nil(t, err) {
|
if !assert.Nil(t, err) {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
if !assert.Equal(t, len(testCases), 3) {
|
if !assert.Equal(t, len(testCases), 3) {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
|
|
||||||
// load test cases from folder path, including sub folders
|
// load test cases from folder path, including sub folders
|
||||||
tc = TestCasePath("../examples/demo-with-py-plugin/")
|
tc = TestCasePath("../examples/demo-with-py-plugin/")
|
||||||
testCases, err = loadTestCases(&tc)
|
testCases, err = loadTestCases(&tc)
|
||||||
if !assert.Nil(t, err) {
|
if !assert.Nil(t, err) {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
if !assert.Equal(t, len(testCases), 3) {
|
if !assert.Equal(t, len(testCases), 3) {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
|
|
||||||
// load test cases from single file path
|
// load test cases from single file path
|
||||||
tc = demoTestCaseWithPluginJSONPath
|
tc = demoTestCaseWithPluginJSONPath
|
||||||
testCases, err = loadTestCases(&tc)
|
testCases, err = loadTestCases(&tc)
|
||||||
if !assert.Nil(t, err) {
|
if !assert.Nil(t, err) {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
if !assert.Equal(t, 1, len(testCases)) {
|
if !assert.Equal(t, 1, len(testCases)) {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
|
|
||||||
// load test cases from TestCase instance
|
// load test cases from TestCase instance
|
||||||
@@ -236,9 +236,9 @@ func TestLoadTestCases(t *testing.T) {
|
|||||||
}
|
}
|
||||||
testCases, err = loadTestCases(testcase)
|
testCases, err = loadTestCases(testcase)
|
||||||
if !assert.Nil(t, err) {
|
if !assert.Nil(t, err) {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
if !assert.Equal(t, len(testCases), 1) {
|
if !assert.Equal(t, len(testCases), 1) {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -156,21 +156,21 @@ func TestGenDemoTestCase(t *testing.T) {
|
|||||||
tCase := demoTestCaseWithPlugin.ToTCase()
|
tCase := demoTestCaseWithPlugin.ToTCase()
|
||||||
err := builtin.Dump2JSON(tCase, demoTestCaseWithPluginJSONPath.GetPath())
|
err := builtin.Dump2JSON(tCase, demoTestCaseWithPluginJSONPath.GetPath())
|
||||||
if err != nil {
|
if err != nil {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
err = builtin.Dump2YAML(tCase, demoTestCaseWithPluginYAMLPath.GetPath())
|
err = builtin.Dump2YAML(tCase, demoTestCaseWithPluginYAMLPath.GetPath())
|
||||||
if err != nil {
|
if err != nil {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
|
|
||||||
tCase = demoTestCaseWithoutPlugin.ToTCase()
|
tCase = demoTestCaseWithoutPlugin.ToTCase()
|
||||||
err = builtin.Dump2JSON(tCase, demoTestCaseWithoutPluginJSONPath.GetPath())
|
err = builtin.Dump2JSON(tCase, demoTestCaseWithoutPluginJSONPath.GetPath())
|
||||||
if err != nil {
|
if err != nil {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
err = builtin.Dump2YAML(tCase, demoTestCaseWithoutPluginYAMLPath.GetPath())
|
err = builtin.Dump2YAML(tCase, demoTestCaseWithoutPluginYAMLPath.GetPath())
|
||||||
if err != nil {
|
if err != nil {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -179,24 +179,24 @@ func TestLoadCase(t *testing.T) {
|
|||||||
tcYAML := &TCase{}
|
tcYAML := &TCase{}
|
||||||
err := builtin.LoadFile(demoTestCaseWithPluginJSONPath.GetPath(), tcJSON)
|
err := builtin.LoadFile(demoTestCaseWithPluginJSONPath.GetPath(), tcJSON)
|
||||||
if !assert.NoError(t, err) {
|
if !assert.NoError(t, err) {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
err = builtin.LoadFile(demoTestCaseWithPluginYAMLPath.GetPath(), tcYAML)
|
err = builtin.LoadFile(demoTestCaseWithPluginYAMLPath.GetPath(), tcYAML)
|
||||||
if !assert.NoError(t, err) {
|
if !assert.NoError(t, err) {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
|
|
||||||
if !assert.Equal(t, tcJSON.Config.Name, tcYAML.Config.Name) {
|
if !assert.Equal(t, tcJSON.Config.Name, tcYAML.Config.Name) {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
if !assert.Equal(t, tcJSON.Config.BaseURL, tcYAML.Config.BaseURL) {
|
if !assert.Equal(t, tcJSON.Config.BaseURL, tcYAML.Config.BaseURL) {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
if !assert.Equal(t, tcJSON.TestSteps[1].Name, tcYAML.TestSteps[1].Name) {
|
if !assert.Equal(t, tcJSON.TestSteps[1].Name, tcYAML.TestSteps[1].Name) {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
if !assert.Equal(t, tcJSON.TestSteps[1].Request, tcYAML.TestSteps[1].Request) {
|
if !assert.Equal(t, tcJSON.TestSteps[1].Request, tcYAML.TestSteps[1].Request) {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -222,7 +222,7 @@ func TestConvertCheckExpr(t *testing.T) {
|
|||||||
}
|
}
|
||||||
for _, expr := range exprs {
|
for _, expr := range exprs {
|
||||||
if !assert.Equal(t, convertCheckExpr(expr.before), expr.after) {
|
if !assert.Equal(t, convertCheckExpr(expr.before), expr.after) {
|
||||||
t.Fail()
|
t.Fatal()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user