@@ -73,26 +73,36 @@ func doTestRepoCommitWithStatus(t *testing.T, state string, classes ...string) {
73
73
74
74
//By SHA
75
75
req = NewRequest (t , "GET" , "/api/v1/repos/user2/repo1/commits/" + path .Base (commitURL )+ "/statuses" )
76
- testRepoCommitsWithStatus (t , session .MakeRequest (t , req , http .StatusOK ), state )
76
+ reqOne := NewRequest (t , "GET" , "/api/v1/repos/user2/repo1/commits/" + path .Base (commitURL )+ "/status" )
77
+ testRepoCommitsWithStatus (t , session .MakeRequest (t , req , http .StatusOK ), session .MakeRequest (t , reqOne , http .StatusOK ), state )
78
+
77
79
//By Ref
78
80
req = NewRequest (t , "GET" , "/api/v1/repos/user2/repo1/commits/master/statuses" )
79
- testRepoCommitsWithStatus (t , session .MakeRequest (t , req , http .StatusOK ), state )
81
+ reqOne = NewRequest (t , "GET" , "/api/v1/repos/user2/repo1/commits/master/status" )
82
+ testRepoCommitsWithStatus (t , session .MakeRequest (t , req , http .StatusOK ), session .MakeRequest (t , reqOne , http .StatusOK ), state )
80
83
req = NewRequest (t , "GET" , "/api/v1/repos/user2/repo1/commits/v1.1/statuses" )
81
- testRepoCommitsWithStatus (t , session .MakeRequest (t , req , http .StatusOK ), state )
84
+ reqOne = NewRequest (t , "GET" , "/api/v1/repos/user2/repo1/commits/v1.1/status" )
85
+ testRepoCommitsWithStatus (t , session .MakeRequest (t , req , http .StatusOK ), session .MakeRequest (t , reqOne , http .StatusOK ), state )
82
86
}
83
87
84
- func testRepoCommitsWithStatus (t * testing.T , resp * httptest.ResponseRecorder , state string ) {
88
+ func testRepoCommitsWithStatus (t * testing.T , resp , respOne * httptest.ResponseRecorder , state string ) {
85
89
json := jsoniter .ConfigCompatibleWithStandardLibrary
86
- decoder := json .NewDecoder (resp .Body )
87
- statuses := []* api.CommitStatus {}
88
- assert .NoError (t , decoder .Decode (& statuses ))
89
- assert .Len (t , statuses , 1 )
90
- for _ , s := range statuses {
91
- assert .Equal (t , api .CommitStatusState (state ), s .State )
92
- assert .Equal (t , setting .AppURL + "api/v1/repos/user2/repo1/statuses/65f1bf27bc3bf70f64657658635e66094edbcb4d" , s .URL )
93
- assert .Equal (t , "http://test.ci/" , s .TargetURL )
94
- assert .Equal (t , "" , s .Description )
95
- assert .Equal (t , "testci" , s .Context )
90
+ var statuses []* api.CommitStatus
91
+ assert .NoError (t , json .Unmarshal (resp .Body .Bytes (), & statuses ))
92
+ var status api.CombinedStatus
93
+ assert .NoError (t , json .Unmarshal (respOne .Body .Bytes (), & status ))
94
+ assert .NotNil (t , status )
95
+
96
+ if assert .Len (t , statuses , 1 ) {
97
+ assert .Equal (t , api .CommitStatusState (state ), statuses [0 ].State )
98
+ assert .Equal (t , setting .AppURL + "api/v1/repos/user2/repo1/statuses/65f1bf27bc3bf70f64657658635e66094edbcb4d" , statuses [0 ].URL )
99
+ assert .Equal (t , "http://test.ci/" , statuses [0 ].TargetURL )
100
+ assert .Equal (t , "" , statuses [0 ].Description )
101
+ assert .Equal (t , "testci" , statuses [0 ].Context )
102
+
103
+ assert .Len (t , status .Statuses , 1 )
104
+ assert .Equal (t , statuses [0 ], status .Statuses [0 ])
105
+ assert .Equal (t , "65f1bf27bc3bf70f64657658635e66094edbcb4d" , status .SHA )
96
106
}
97
107
}
98
108
0 commit comments