github.com/maier/nomad@v0.4.1-0.20161110003312-a9e3d0b8549d/command/agent/status_endpoint_test.go (about)

     1  package agent
     2  
     3  import (
     4  	"net/http"
     5  	"net/http/httptest"
     6  	"testing"
     7  )
     8  
     9  func TestHTTP_StatusLeader(t *testing.T) {
    10  	httpTest(t, nil, func(s *TestServer) {
    11  		// Make the HTTP request
    12  		req, err := http.NewRequest("GET", "/v1/status/leader", nil)
    13  		if err != nil {
    14  			t.Fatalf("err: %v", err)
    15  		}
    16  		respW := httptest.NewRecorder()
    17  
    18  		// Make the request
    19  		obj, err := s.Server.StatusLeaderRequest(respW, req)
    20  		if err != nil {
    21  			t.Fatalf("err: %v", err)
    22  		}
    23  
    24  		leader := obj.(string)
    25  		if leader == "" {
    26  			t.Fatalf("bad: %#v", leader)
    27  		}
    28  	})
    29  }
    30  
    31  func TestHTTP_StatusPeers(t *testing.T) {
    32  	httpTest(t, nil, func(s *TestServer) {
    33  		// Make the HTTP request
    34  		req, err := http.NewRequest("GET", "/v1/status/peers", nil)
    35  		if err != nil {
    36  			t.Fatalf("err: %v", err)
    37  		}
    38  		respW := httptest.NewRecorder()
    39  
    40  		// Make the request
    41  		obj, err := s.Server.StatusPeersRequest(respW, req)
    42  		if err != nil {
    43  			t.Fatalf("err: %v", err)
    44  		}
    45  
    46  		// Check the job
    47  		peers := obj.([]string)
    48  		if len(peers) == 0 {
    49  			t.Fatalf("bad: %#v", peers)
    50  		}
    51  	})
    52  }