-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathdiscovery_test.go
More file actions
39 lines (31 loc) · 1.38 KB
/
discovery_test.go
File metadata and controls
39 lines (31 loc) · 1.38 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
package hyperdrive
import (
"net/http"
"net/http/httptest"
)
func (suite *HyperdriveTestSuite) TestNewRootResource() {
suite.IsType(&RootResource{}, suite.TestRoot, "expects an instance of RootResource")
}
func (suite *HyperdriveTestSuite) TestRootResourceEndpointsEmpty() {
suite.Equal(0, len(suite.TestRoot.Endpoints), "expects 0 Endpoints")
}
func (suite *HyperdriveTestSuite) TestAddEndpointer() {
suite.TestRoot.AddEndpoint(suite.TestEndpoint)
suite.Equal(1, len(suite.TestRoot.Endpoints), "expects 1 Endpoints")
}
func (suite *HyperdriveTestSuite) TestNewEndpointResource() {
suite.Equal(suite.TestEndpointResourceCustom, NewEndpointResource(suite.TestCustomEndpoint), "expects the correct EndpointResource")
}
func (suite *HyperdriveTestSuite) TestNewEndpointResourceParam() {
suite.Equal(suite.TestEndpointResourceParam, NewEndpointResourceParam(suite.TestParsedParamCustom), "expects the correct EndpointResource")
}
func (suite *HyperdriveTestSuite) TestRootResourceServeHTTP() {
suite.Implements((*http.Handler)(nil), suite.TestRoot, "return an implementation of http.Handler")
}
func (suite *HyperdriveTestSuite) TestRootResourceRequest() {
rw := httptest.NewRecorder()
r := httptest.NewRequest("GET", "/", nil)
r.Header.Add("Accept", "application/json")
suite.TestRoot.ServeHTTP(rw, r)
suite.Equal(200, rw.Result().StatusCode, "expects request to discovery url to be successful")
}