(t *testing.T)
| 1008 | } |
| 1009 | |
| 1010 | func TestAPIClient_SiteEndpoints(t *testing.T) { |
| 1011 | mock := testutil.NewMockAPI() |
| 1012 | defer mock.Close() |
| 1013 | client := newTestClient(mock.Server.URL) |
| 1014 | |
| 1015 | tests := []struct { |
| 1016 | name string |
| 1017 | do func() (*lib.APIResponse, error) |
| 1018 | method string |
| 1019 | path string |
| 1020 | }{ |
| 1021 | {"list sites", func() (*lib.APIResponse, error) { return client.GET("/sites", nil) }, "GET", "/sites"}, |
| 1022 | {"get site", func() (*lib.APIResponse, error) { return client.GET("/sites/my-site", nil) }, "GET", "/sites/my-site"}, |
| 1023 | {"create site", func() (*lib.APIResponse, error) { |
| 1024 | return client.POST("/sites", []byte(`{"name":"My Site"}`), nil) |
| 1025 | }, "POST", "/sites"}, |
| 1026 | {"update site", func() (*lib.APIResponse, error) { |
| 1027 | return client.PUT("/sites/my-site", []byte(`{"name":"Updated"}`), nil) |
| 1028 | }, "PUT", "/sites/my-site"}, |
| 1029 | {"delete site", func() (*lib.APIResponse, error) { return client.DELETE("/sites/my-site", nil, nil) }, "DELETE", "/sites/my-site"}, |
| 1030 | {"query site", func() (*lib.APIResponse, error) { |
| 1031 | return client.POST("/sites/query", []byte(`{"site":"my-site","type":"aggregation"}`), nil) |
| 1032 | }, "POST", "/sites/query"}, |
| 1033 | {"list site errors", func() (*lib.APIResponse, error) { |
| 1034 | return client.GET("/site_errors", map[string]string{"site": "my-site"}) |
| 1035 | }, "GET", "/site_errors"}, |
| 1036 | {"get site error", func() (*lib.APIResponse, error) { return client.GET("/site_errors/err-001", nil) }, "GET", "/site_errors/err-001"}, |
| 1037 | } |
| 1038 | |
| 1039 | for _, tt := range tests { |
| 1040 | t.Run(tt.name, func(t *testing.T) { |
| 1041 | mock.Reset() |
| 1042 | _, err := tt.do() |
| 1043 | if err != nil { |
| 1044 | t.Fatalf("unexpected error: %v", err) |
| 1045 | } |
| 1046 | req := mock.LastRequest() |
| 1047 | if req.Method != tt.method { |
| 1048 | t.Errorf("expected %s, got %s", tt.method, req.Method) |
| 1049 | } |
| 1050 | if req.Path != tt.path { |
| 1051 | t.Errorf("expected %s, got %s", tt.path, req.Path) |
| 1052 | } |
| 1053 | }) |
| 1054 | } |
| 1055 | } |
| 1056 | |
| 1057 | // --- Filter/Query Param Tests --- |
| 1058 |
nothing calls this directly
no test coverage detected