msrc
1package msrc
2
3import (
4"net/http"
5"testing"
6"time"
7)
8
9func TestFunctional(t *testing.T) {
10service := MultiService(map[string]ServiceInterface{
11"Test": HttpServerMock("45000"),
12}, 39100)
13
14go func() {
15_ = service.Run()
16}()
17
18defer service.Stop()
19
20time.Sleep(100 * time.Millisecond)
21
22aliveResp, err := http.Get("http://localhost:39100/alive")
23if nil != err {
24t.Fatalf(`/alive error=%v, want=nil`, err)
25}
26
27if aliveResp.StatusCode != http.StatusOK {
28t.Fatalf(`/alive status=%v, want=%v`, aliveResp.StatusCode, http.StatusOK)
29}
30
31testResp, err := http.Get("http://localhost:45000/test")
32if nil != err {
33t.Fatalf(`/test error=%v, want=nil`, err)
34}
35
36if testResp.StatusCode != http.StatusAccepted {
37t.Fatalf(`/test status=%v, want=%v`, testResp.StatusCode, http.StatusAccepted)
38}
39}
40