Du kan inte välja fler än 25 ämnen Ämnen måste starta med en bokstav eller siffra, kan innehålla bindestreck ('-') och vara max 35 tecken långa.
 
 
 

1678 rader
47 KiB

  1. // Copyright 2019 Google LLC
  2. //
  3. // Licensed under the Apache License, Version 2.0 (the "License");
  4. // you may not use this file except in compliance with the License.
  5. // You may obtain a copy of the License at
  6. //
  7. // https://www.apache.org/licenses/LICENSE-2.0
  8. //
  9. // Unless required by applicable law or agreed to in writing, software
  10. // distributed under the License is distributed on an "AS IS" BASIS,
  11. // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  12. // See the License for the specific language governing permissions and
  13. // limitations under the License.
  14. // Code generated by gapic-generator. DO NOT EDIT.
  15. package logging
  16. import (
  17. emptypb "github.com/golang/protobuf/ptypes/empty"
  18. monitoredrespb "google.golang.org/genproto/googleapis/api/monitoredres"
  19. loggingpb "google.golang.org/genproto/googleapis/logging/v2"
  20. field_maskpb "google.golang.org/genproto/protobuf/field_mask"
  21. )
  22. import (
  23. "context"
  24. "flag"
  25. "fmt"
  26. "io"
  27. "log"
  28. "net"
  29. "os"
  30. "strings"
  31. "testing"
  32. "github.com/golang/protobuf/proto"
  33. "github.com/golang/protobuf/ptypes"
  34. "google.golang.org/api/option"
  35. status "google.golang.org/genproto/googleapis/rpc/status"
  36. "google.golang.org/grpc"
  37. "google.golang.org/grpc/codes"
  38. "google.golang.org/grpc/metadata"
  39. gstatus "google.golang.org/grpc/status"
  40. )
  41. var _ = io.EOF
  42. var _ = ptypes.MarshalAny
  43. var _ status.Status
  44. type mockLoggingServer struct {
  45. // Embed for forward compatibility.
  46. // Tests will keep working if more methods are added
  47. // in the future.
  48. loggingpb.LoggingServiceV2Server
  49. reqs []proto.Message
  50. // If set, all calls return this error.
  51. err error
  52. // responses to return if err == nil
  53. resps []proto.Message
  54. }
  55. func (s *mockLoggingServer) DeleteLog(ctx context.Context, req *loggingpb.DeleteLogRequest) (*emptypb.Empty, error) {
  56. md, _ := metadata.FromIncomingContext(ctx)
  57. if xg := md["x-goog-api-client"]; len(xg) == 0 || !strings.Contains(xg[0], "gl-go/") {
  58. return nil, fmt.Errorf("x-goog-api-client = %v, expected gl-go key", xg)
  59. }
  60. s.reqs = append(s.reqs, req)
  61. if s.err != nil {
  62. return nil, s.err
  63. }
  64. return s.resps[0].(*emptypb.Empty), nil
  65. }
  66. func (s *mockLoggingServer) WriteLogEntries(ctx context.Context, req *loggingpb.WriteLogEntriesRequest) (*loggingpb.WriteLogEntriesResponse, error) {
  67. md, _ := metadata.FromIncomingContext(ctx)
  68. if xg := md["x-goog-api-client"]; len(xg) == 0 || !strings.Contains(xg[0], "gl-go/") {
  69. return nil, fmt.Errorf("x-goog-api-client = %v, expected gl-go key", xg)
  70. }
  71. s.reqs = append(s.reqs, req)
  72. if s.err != nil {
  73. return nil, s.err
  74. }
  75. return s.resps[0].(*loggingpb.WriteLogEntriesResponse), nil
  76. }
  77. func (s *mockLoggingServer) ListLogEntries(ctx context.Context, req *loggingpb.ListLogEntriesRequest) (*loggingpb.ListLogEntriesResponse, error) {
  78. md, _ := metadata.FromIncomingContext(ctx)
  79. if xg := md["x-goog-api-client"]; len(xg) == 0 || !strings.Contains(xg[0], "gl-go/") {
  80. return nil, fmt.Errorf("x-goog-api-client = %v, expected gl-go key", xg)
  81. }
  82. s.reqs = append(s.reqs, req)
  83. if s.err != nil {
  84. return nil, s.err
  85. }
  86. return s.resps[0].(*loggingpb.ListLogEntriesResponse), nil
  87. }
  88. func (s *mockLoggingServer) ListMonitoredResourceDescriptors(ctx context.Context, req *loggingpb.ListMonitoredResourceDescriptorsRequest) (*loggingpb.ListMonitoredResourceDescriptorsResponse, error) {
  89. md, _ := metadata.FromIncomingContext(ctx)
  90. if xg := md["x-goog-api-client"]; len(xg) == 0 || !strings.Contains(xg[0], "gl-go/") {
  91. return nil, fmt.Errorf("x-goog-api-client = %v, expected gl-go key", xg)
  92. }
  93. s.reqs = append(s.reqs, req)
  94. if s.err != nil {
  95. return nil, s.err
  96. }
  97. return s.resps[0].(*loggingpb.ListMonitoredResourceDescriptorsResponse), nil
  98. }
  99. func (s *mockLoggingServer) ListLogs(ctx context.Context, req *loggingpb.ListLogsRequest) (*loggingpb.ListLogsResponse, error) {
  100. md, _ := metadata.FromIncomingContext(ctx)
  101. if xg := md["x-goog-api-client"]; len(xg) == 0 || !strings.Contains(xg[0], "gl-go/") {
  102. return nil, fmt.Errorf("x-goog-api-client = %v, expected gl-go key", xg)
  103. }
  104. s.reqs = append(s.reqs, req)
  105. if s.err != nil {
  106. return nil, s.err
  107. }
  108. return s.resps[0].(*loggingpb.ListLogsResponse), nil
  109. }
  110. type mockConfigServer struct {
  111. // Embed for forward compatibility.
  112. // Tests will keep working if more methods are added
  113. // in the future.
  114. loggingpb.ConfigServiceV2Server
  115. reqs []proto.Message
  116. // If set, all calls return this error.
  117. err error
  118. // responses to return if err == nil
  119. resps []proto.Message
  120. }
  121. func (s *mockConfigServer) ListSinks(ctx context.Context, req *loggingpb.ListSinksRequest) (*loggingpb.ListSinksResponse, error) {
  122. md, _ := metadata.FromIncomingContext(ctx)
  123. if xg := md["x-goog-api-client"]; len(xg) == 0 || !strings.Contains(xg[0], "gl-go/") {
  124. return nil, fmt.Errorf("x-goog-api-client = %v, expected gl-go key", xg)
  125. }
  126. s.reqs = append(s.reqs, req)
  127. if s.err != nil {
  128. return nil, s.err
  129. }
  130. return s.resps[0].(*loggingpb.ListSinksResponse), nil
  131. }
  132. func (s *mockConfigServer) GetSink(ctx context.Context, req *loggingpb.GetSinkRequest) (*loggingpb.LogSink, error) {
  133. md, _ := metadata.FromIncomingContext(ctx)
  134. if xg := md["x-goog-api-client"]; len(xg) == 0 || !strings.Contains(xg[0], "gl-go/") {
  135. return nil, fmt.Errorf("x-goog-api-client = %v, expected gl-go key", xg)
  136. }
  137. s.reqs = append(s.reqs, req)
  138. if s.err != nil {
  139. return nil, s.err
  140. }
  141. return s.resps[0].(*loggingpb.LogSink), nil
  142. }
  143. func (s *mockConfigServer) CreateSink(ctx context.Context, req *loggingpb.CreateSinkRequest) (*loggingpb.LogSink, error) {
  144. md, _ := metadata.FromIncomingContext(ctx)
  145. if xg := md["x-goog-api-client"]; len(xg) == 0 || !strings.Contains(xg[0], "gl-go/") {
  146. return nil, fmt.Errorf("x-goog-api-client = %v, expected gl-go key", xg)
  147. }
  148. s.reqs = append(s.reqs, req)
  149. if s.err != nil {
  150. return nil, s.err
  151. }
  152. return s.resps[0].(*loggingpb.LogSink), nil
  153. }
  154. func (s *mockConfigServer) UpdateSink(ctx context.Context, req *loggingpb.UpdateSinkRequest) (*loggingpb.LogSink, error) {
  155. md, _ := metadata.FromIncomingContext(ctx)
  156. if xg := md["x-goog-api-client"]; len(xg) == 0 || !strings.Contains(xg[0], "gl-go/") {
  157. return nil, fmt.Errorf("x-goog-api-client = %v, expected gl-go key", xg)
  158. }
  159. s.reqs = append(s.reqs, req)
  160. if s.err != nil {
  161. return nil, s.err
  162. }
  163. return s.resps[0].(*loggingpb.LogSink), nil
  164. }
  165. func (s *mockConfigServer) DeleteSink(ctx context.Context, req *loggingpb.DeleteSinkRequest) (*emptypb.Empty, error) {
  166. md, _ := metadata.FromIncomingContext(ctx)
  167. if xg := md["x-goog-api-client"]; len(xg) == 0 || !strings.Contains(xg[0], "gl-go/") {
  168. return nil, fmt.Errorf("x-goog-api-client = %v, expected gl-go key", xg)
  169. }
  170. s.reqs = append(s.reqs, req)
  171. if s.err != nil {
  172. return nil, s.err
  173. }
  174. return s.resps[0].(*emptypb.Empty), nil
  175. }
  176. func (s *mockConfigServer) ListExclusions(ctx context.Context, req *loggingpb.ListExclusionsRequest) (*loggingpb.ListExclusionsResponse, error) {
  177. md, _ := metadata.FromIncomingContext(ctx)
  178. if xg := md["x-goog-api-client"]; len(xg) == 0 || !strings.Contains(xg[0], "gl-go/") {
  179. return nil, fmt.Errorf("x-goog-api-client = %v, expected gl-go key", xg)
  180. }
  181. s.reqs = append(s.reqs, req)
  182. if s.err != nil {
  183. return nil, s.err
  184. }
  185. return s.resps[0].(*loggingpb.ListExclusionsResponse), nil
  186. }
  187. func (s *mockConfigServer) GetExclusion(ctx context.Context, req *loggingpb.GetExclusionRequest) (*loggingpb.LogExclusion, error) {
  188. md, _ := metadata.FromIncomingContext(ctx)
  189. if xg := md["x-goog-api-client"]; len(xg) == 0 || !strings.Contains(xg[0], "gl-go/") {
  190. return nil, fmt.Errorf("x-goog-api-client = %v, expected gl-go key", xg)
  191. }
  192. s.reqs = append(s.reqs, req)
  193. if s.err != nil {
  194. return nil, s.err
  195. }
  196. return s.resps[0].(*loggingpb.LogExclusion), nil
  197. }
  198. func (s *mockConfigServer) CreateExclusion(ctx context.Context, req *loggingpb.CreateExclusionRequest) (*loggingpb.LogExclusion, error) {
  199. md, _ := metadata.FromIncomingContext(ctx)
  200. if xg := md["x-goog-api-client"]; len(xg) == 0 || !strings.Contains(xg[0], "gl-go/") {
  201. return nil, fmt.Errorf("x-goog-api-client = %v, expected gl-go key", xg)
  202. }
  203. s.reqs = append(s.reqs, req)
  204. if s.err != nil {
  205. return nil, s.err
  206. }
  207. return s.resps[0].(*loggingpb.LogExclusion), nil
  208. }
  209. func (s *mockConfigServer) UpdateExclusion(ctx context.Context, req *loggingpb.UpdateExclusionRequest) (*loggingpb.LogExclusion, error) {
  210. md, _ := metadata.FromIncomingContext(ctx)
  211. if xg := md["x-goog-api-client"]; len(xg) == 0 || !strings.Contains(xg[0], "gl-go/") {
  212. return nil, fmt.Errorf("x-goog-api-client = %v, expected gl-go key", xg)
  213. }
  214. s.reqs = append(s.reqs, req)
  215. if s.err != nil {
  216. return nil, s.err
  217. }
  218. return s.resps[0].(*loggingpb.LogExclusion), nil
  219. }
  220. func (s *mockConfigServer) DeleteExclusion(ctx context.Context, req *loggingpb.DeleteExclusionRequest) (*emptypb.Empty, error) {
  221. md, _ := metadata.FromIncomingContext(ctx)
  222. if xg := md["x-goog-api-client"]; len(xg) == 0 || !strings.Contains(xg[0], "gl-go/") {
  223. return nil, fmt.Errorf("x-goog-api-client = %v, expected gl-go key", xg)
  224. }
  225. s.reqs = append(s.reqs, req)
  226. if s.err != nil {
  227. return nil, s.err
  228. }
  229. return s.resps[0].(*emptypb.Empty), nil
  230. }
  231. type mockMetricsServer struct {
  232. // Embed for forward compatibility.
  233. // Tests will keep working if more methods are added
  234. // in the future.
  235. loggingpb.MetricsServiceV2Server
  236. reqs []proto.Message
  237. // If set, all calls return this error.
  238. err error
  239. // responses to return if err == nil
  240. resps []proto.Message
  241. }
  242. func (s *mockMetricsServer) ListLogMetrics(ctx context.Context, req *loggingpb.ListLogMetricsRequest) (*loggingpb.ListLogMetricsResponse, error) {
  243. md, _ := metadata.FromIncomingContext(ctx)
  244. if xg := md["x-goog-api-client"]; len(xg) == 0 || !strings.Contains(xg[0], "gl-go/") {
  245. return nil, fmt.Errorf("x-goog-api-client = %v, expected gl-go key", xg)
  246. }
  247. s.reqs = append(s.reqs, req)
  248. if s.err != nil {
  249. return nil, s.err
  250. }
  251. return s.resps[0].(*loggingpb.ListLogMetricsResponse), nil
  252. }
  253. func (s *mockMetricsServer) GetLogMetric(ctx context.Context, req *loggingpb.GetLogMetricRequest) (*loggingpb.LogMetric, error) {
  254. md, _ := metadata.FromIncomingContext(ctx)
  255. if xg := md["x-goog-api-client"]; len(xg) == 0 || !strings.Contains(xg[0], "gl-go/") {
  256. return nil, fmt.Errorf("x-goog-api-client = %v, expected gl-go key", xg)
  257. }
  258. s.reqs = append(s.reqs, req)
  259. if s.err != nil {
  260. return nil, s.err
  261. }
  262. return s.resps[0].(*loggingpb.LogMetric), nil
  263. }
  264. func (s *mockMetricsServer) CreateLogMetric(ctx context.Context, req *loggingpb.CreateLogMetricRequest) (*loggingpb.LogMetric, error) {
  265. md, _ := metadata.FromIncomingContext(ctx)
  266. if xg := md["x-goog-api-client"]; len(xg) == 0 || !strings.Contains(xg[0], "gl-go/") {
  267. return nil, fmt.Errorf("x-goog-api-client = %v, expected gl-go key", xg)
  268. }
  269. s.reqs = append(s.reqs, req)
  270. if s.err != nil {
  271. return nil, s.err
  272. }
  273. return s.resps[0].(*loggingpb.LogMetric), nil
  274. }
  275. func (s *mockMetricsServer) UpdateLogMetric(ctx context.Context, req *loggingpb.UpdateLogMetricRequest) (*loggingpb.LogMetric, error) {
  276. md, _ := metadata.FromIncomingContext(ctx)
  277. if xg := md["x-goog-api-client"]; len(xg) == 0 || !strings.Contains(xg[0], "gl-go/") {
  278. return nil, fmt.Errorf("x-goog-api-client = %v, expected gl-go key", xg)
  279. }
  280. s.reqs = append(s.reqs, req)
  281. if s.err != nil {
  282. return nil, s.err
  283. }
  284. return s.resps[0].(*loggingpb.LogMetric), nil
  285. }
  286. func (s *mockMetricsServer) DeleteLogMetric(ctx context.Context, req *loggingpb.DeleteLogMetricRequest) (*emptypb.Empty, error) {
  287. md, _ := metadata.FromIncomingContext(ctx)
  288. if xg := md["x-goog-api-client"]; len(xg) == 0 || !strings.Contains(xg[0], "gl-go/") {
  289. return nil, fmt.Errorf("x-goog-api-client = %v, expected gl-go key", xg)
  290. }
  291. s.reqs = append(s.reqs, req)
  292. if s.err != nil {
  293. return nil, s.err
  294. }
  295. return s.resps[0].(*emptypb.Empty), nil
  296. }
  297. // clientOpt is the option tests should use to connect to the test server.
  298. // It is initialized by TestMain.
  299. var clientOpt option.ClientOption
  300. var (
  301. mockLogging mockLoggingServer
  302. mockConfig mockConfigServer
  303. mockMetrics mockMetricsServer
  304. )
  305. func TestMain(m *testing.M) {
  306. flag.Parse()
  307. serv := grpc.NewServer()
  308. loggingpb.RegisterLoggingServiceV2Server(serv, &mockLogging)
  309. loggingpb.RegisterConfigServiceV2Server(serv, &mockConfig)
  310. loggingpb.RegisterMetricsServiceV2Server(serv, &mockMetrics)
  311. lis, err := net.Listen("tcp", "localhost:0")
  312. if err != nil {
  313. log.Fatal(err)
  314. }
  315. go serv.Serve(lis)
  316. conn, err := grpc.Dial(lis.Addr().String(), grpc.WithInsecure())
  317. if err != nil {
  318. log.Fatal(err)
  319. }
  320. clientOpt = option.WithGRPCConn(conn)
  321. os.Exit(m.Run())
  322. }
  323. func TestLoggingServiceV2DeleteLog(t *testing.T) {
  324. var expectedResponse *emptypb.Empty = &emptypb.Empty{}
  325. mockLogging.err = nil
  326. mockLogging.reqs = nil
  327. mockLogging.resps = append(mockLogging.resps[:0], expectedResponse)
  328. var formattedLogName string = fmt.Sprintf("projects/%s/logs/%s", "[PROJECT]", "[LOG]")
  329. var request = &loggingpb.DeleteLogRequest{
  330. LogName: formattedLogName,
  331. }
  332. c, err := NewClient(context.Background(), clientOpt)
  333. if err != nil {
  334. t.Fatal(err)
  335. }
  336. err = c.DeleteLog(context.Background(), request)
  337. if err != nil {
  338. t.Fatal(err)
  339. }
  340. if want, got := request, mockLogging.reqs[0]; !proto.Equal(want, got) {
  341. t.Errorf("wrong request %q, want %q", got, want)
  342. }
  343. }
  344. func TestLoggingServiceV2DeleteLogError(t *testing.T) {
  345. errCode := codes.PermissionDenied
  346. mockLogging.err = gstatus.Error(errCode, "test error")
  347. var formattedLogName string = fmt.Sprintf("projects/%s/logs/%s", "[PROJECT]", "[LOG]")
  348. var request = &loggingpb.DeleteLogRequest{
  349. LogName: formattedLogName,
  350. }
  351. c, err := NewClient(context.Background(), clientOpt)
  352. if err != nil {
  353. t.Fatal(err)
  354. }
  355. err = c.DeleteLog(context.Background(), request)
  356. if st, ok := gstatus.FromError(err); !ok {
  357. t.Errorf("got error %v, expected grpc error", err)
  358. } else if c := st.Code(); c != errCode {
  359. t.Errorf("got error code %q, want %q", c, errCode)
  360. }
  361. }
  362. func TestLoggingServiceV2WriteLogEntries(t *testing.T) {
  363. var expectedResponse *loggingpb.WriteLogEntriesResponse = &loggingpb.WriteLogEntriesResponse{}
  364. mockLogging.err = nil
  365. mockLogging.reqs = nil
  366. mockLogging.resps = append(mockLogging.resps[:0], expectedResponse)
  367. var entries []*loggingpb.LogEntry = nil
  368. var request = &loggingpb.WriteLogEntriesRequest{
  369. Entries: entries,
  370. }
  371. c, err := NewClient(context.Background(), clientOpt)
  372. if err != nil {
  373. t.Fatal(err)
  374. }
  375. resp, err := c.WriteLogEntries(context.Background(), request)
  376. if err != nil {
  377. t.Fatal(err)
  378. }
  379. if want, got := request, mockLogging.reqs[0]; !proto.Equal(want, got) {
  380. t.Errorf("wrong request %q, want %q", got, want)
  381. }
  382. if want, got := expectedResponse, resp; !proto.Equal(want, got) {
  383. t.Errorf("wrong response %q, want %q)", got, want)
  384. }
  385. }
  386. func TestLoggingServiceV2WriteLogEntriesError(t *testing.T) {
  387. errCode := codes.PermissionDenied
  388. mockLogging.err = gstatus.Error(errCode, "test error")
  389. var entries []*loggingpb.LogEntry = nil
  390. var request = &loggingpb.WriteLogEntriesRequest{
  391. Entries: entries,
  392. }
  393. c, err := NewClient(context.Background(), clientOpt)
  394. if err != nil {
  395. t.Fatal(err)
  396. }
  397. resp, err := c.WriteLogEntries(context.Background(), request)
  398. if st, ok := gstatus.FromError(err); !ok {
  399. t.Errorf("got error %v, expected grpc error", err)
  400. } else if c := st.Code(); c != errCode {
  401. t.Errorf("got error code %q, want %q", c, errCode)
  402. }
  403. _ = resp
  404. }
  405. func TestLoggingServiceV2ListLogEntries(t *testing.T) {
  406. var nextPageToken string = ""
  407. var entriesElement *loggingpb.LogEntry = &loggingpb.LogEntry{}
  408. var entries = []*loggingpb.LogEntry{entriesElement}
  409. var expectedResponse = &loggingpb.ListLogEntriesResponse{
  410. NextPageToken: nextPageToken,
  411. Entries: entries,
  412. }
  413. mockLogging.err = nil
  414. mockLogging.reqs = nil
  415. mockLogging.resps = append(mockLogging.resps[:0], expectedResponse)
  416. var formattedResourceNames []string = nil
  417. var request = &loggingpb.ListLogEntriesRequest{
  418. ResourceNames: formattedResourceNames,
  419. }
  420. c, err := NewClient(context.Background(), clientOpt)
  421. if err != nil {
  422. t.Fatal(err)
  423. }
  424. resp, err := c.ListLogEntries(context.Background(), request).Next()
  425. if err != nil {
  426. t.Fatal(err)
  427. }
  428. if want, got := request, mockLogging.reqs[0]; !proto.Equal(want, got) {
  429. t.Errorf("wrong request %q, want %q", got, want)
  430. }
  431. want := (interface{})(expectedResponse.Entries[0])
  432. got := (interface{})(resp)
  433. var ok bool
  434. switch want := (want).(type) {
  435. case proto.Message:
  436. ok = proto.Equal(want, got.(proto.Message))
  437. default:
  438. ok = want == got
  439. }
  440. if !ok {
  441. t.Errorf("wrong response %q, want %q)", got, want)
  442. }
  443. }
  444. func TestLoggingServiceV2ListLogEntriesError(t *testing.T) {
  445. errCode := codes.PermissionDenied
  446. mockLogging.err = gstatus.Error(errCode, "test error")
  447. var formattedResourceNames []string = nil
  448. var request = &loggingpb.ListLogEntriesRequest{
  449. ResourceNames: formattedResourceNames,
  450. }
  451. c, err := NewClient(context.Background(), clientOpt)
  452. if err != nil {
  453. t.Fatal(err)
  454. }
  455. resp, err := c.ListLogEntries(context.Background(), request).Next()
  456. if st, ok := gstatus.FromError(err); !ok {
  457. t.Errorf("got error %v, expected grpc error", err)
  458. } else if c := st.Code(); c != errCode {
  459. t.Errorf("got error code %q, want %q", c, errCode)
  460. }
  461. _ = resp
  462. }
  463. func TestLoggingServiceV2ListMonitoredResourceDescriptors(t *testing.T) {
  464. var nextPageToken string = ""
  465. var resourceDescriptorsElement *monitoredrespb.MonitoredResourceDescriptor = &monitoredrespb.MonitoredResourceDescriptor{}
  466. var resourceDescriptors = []*monitoredrespb.MonitoredResourceDescriptor{resourceDescriptorsElement}
  467. var expectedResponse = &loggingpb.ListMonitoredResourceDescriptorsResponse{
  468. NextPageToken: nextPageToken,
  469. ResourceDescriptors: resourceDescriptors,
  470. }
  471. mockLogging.err = nil
  472. mockLogging.reqs = nil
  473. mockLogging.resps = append(mockLogging.resps[:0], expectedResponse)
  474. var request *loggingpb.ListMonitoredResourceDescriptorsRequest = &loggingpb.ListMonitoredResourceDescriptorsRequest{}
  475. c, err := NewClient(context.Background(), clientOpt)
  476. if err != nil {
  477. t.Fatal(err)
  478. }
  479. resp, err := c.ListMonitoredResourceDescriptors(context.Background(), request).Next()
  480. if err != nil {
  481. t.Fatal(err)
  482. }
  483. if want, got := request, mockLogging.reqs[0]; !proto.Equal(want, got) {
  484. t.Errorf("wrong request %q, want %q", got, want)
  485. }
  486. want := (interface{})(expectedResponse.ResourceDescriptors[0])
  487. got := (interface{})(resp)
  488. var ok bool
  489. switch want := (want).(type) {
  490. case proto.Message:
  491. ok = proto.Equal(want, got.(proto.Message))
  492. default:
  493. ok = want == got
  494. }
  495. if !ok {
  496. t.Errorf("wrong response %q, want %q)", got, want)
  497. }
  498. }
  499. func TestLoggingServiceV2ListMonitoredResourceDescriptorsError(t *testing.T) {
  500. errCode := codes.PermissionDenied
  501. mockLogging.err = gstatus.Error(errCode, "test error")
  502. var request *loggingpb.ListMonitoredResourceDescriptorsRequest = &loggingpb.ListMonitoredResourceDescriptorsRequest{}
  503. c, err := NewClient(context.Background(), clientOpt)
  504. if err != nil {
  505. t.Fatal(err)
  506. }
  507. resp, err := c.ListMonitoredResourceDescriptors(context.Background(), request).Next()
  508. if st, ok := gstatus.FromError(err); !ok {
  509. t.Errorf("got error %v, expected grpc error", err)
  510. } else if c := st.Code(); c != errCode {
  511. t.Errorf("got error code %q, want %q", c, errCode)
  512. }
  513. _ = resp
  514. }
  515. func TestLoggingServiceV2ListLogs(t *testing.T) {
  516. var nextPageToken string = ""
  517. var logNamesElement string = "logNamesElement-1079688374"
  518. var logNames = []string{logNamesElement}
  519. var expectedResponse = &loggingpb.ListLogsResponse{
  520. NextPageToken: nextPageToken,
  521. LogNames: logNames,
  522. }
  523. mockLogging.err = nil
  524. mockLogging.reqs = nil
  525. mockLogging.resps = append(mockLogging.resps[:0], expectedResponse)
  526. var formattedParent string = fmt.Sprintf("projects/%s", "[PROJECT]")
  527. var request = &loggingpb.ListLogsRequest{
  528. Parent: formattedParent,
  529. }
  530. c, err := NewClient(context.Background(), clientOpt)
  531. if err != nil {
  532. t.Fatal(err)
  533. }
  534. resp, err := c.ListLogs(context.Background(), request).Next()
  535. if err != nil {
  536. t.Fatal(err)
  537. }
  538. if want, got := request, mockLogging.reqs[0]; !proto.Equal(want, got) {
  539. t.Errorf("wrong request %q, want %q", got, want)
  540. }
  541. want := (interface{})(expectedResponse.LogNames[0])
  542. got := (interface{})(resp)
  543. var ok bool
  544. switch want := (want).(type) {
  545. case proto.Message:
  546. ok = proto.Equal(want, got.(proto.Message))
  547. default:
  548. ok = want == got
  549. }
  550. if !ok {
  551. t.Errorf("wrong response %q, want %q)", got, want)
  552. }
  553. }
  554. func TestLoggingServiceV2ListLogsError(t *testing.T) {
  555. errCode := codes.PermissionDenied
  556. mockLogging.err = gstatus.Error(errCode, "test error")
  557. var formattedParent string = fmt.Sprintf("projects/%s", "[PROJECT]")
  558. var request = &loggingpb.ListLogsRequest{
  559. Parent: formattedParent,
  560. }
  561. c, err := NewClient(context.Background(), clientOpt)
  562. if err != nil {
  563. t.Fatal(err)
  564. }
  565. resp, err := c.ListLogs(context.Background(), request).Next()
  566. if st, ok := gstatus.FromError(err); !ok {
  567. t.Errorf("got error %v, expected grpc error", err)
  568. } else if c := st.Code(); c != errCode {
  569. t.Errorf("got error code %q, want %q", c, errCode)
  570. }
  571. _ = resp
  572. }
  573. func TestConfigServiceV2ListSinks(t *testing.T) {
  574. var nextPageToken string = ""
  575. var sinksElement *loggingpb.LogSink = &loggingpb.LogSink{}
  576. var sinks = []*loggingpb.LogSink{sinksElement}
  577. var expectedResponse = &loggingpb.ListSinksResponse{
  578. NextPageToken: nextPageToken,
  579. Sinks: sinks,
  580. }
  581. mockConfig.err = nil
  582. mockConfig.reqs = nil
  583. mockConfig.resps = append(mockConfig.resps[:0], expectedResponse)
  584. var formattedParent string = fmt.Sprintf("projects/%s", "[PROJECT]")
  585. var request = &loggingpb.ListSinksRequest{
  586. Parent: formattedParent,
  587. }
  588. c, err := NewConfigClient(context.Background(), clientOpt)
  589. if err != nil {
  590. t.Fatal(err)
  591. }
  592. resp, err := c.ListSinks(context.Background(), request).Next()
  593. if err != nil {
  594. t.Fatal(err)
  595. }
  596. if want, got := request, mockConfig.reqs[0]; !proto.Equal(want, got) {
  597. t.Errorf("wrong request %q, want %q", got, want)
  598. }
  599. want := (interface{})(expectedResponse.Sinks[0])
  600. got := (interface{})(resp)
  601. var ok bool
  602. switch want := (want).(type) {
  603. case proto.Message:
  604. ok = proto.Equal(want, got.(proto.Message))
  605. default:
  606. ok = want == got
  607. }
  608. if !ok {
  609. t.Errorf("wrong response %q, want %q)", got, want)
  610. }
  611. }
  612. func TestConfigServiceV2ListSinksError(t *testing.T) {
  613. errCode := codes.PermissionDenied
  614. mockConfig.err = gstatus.Error(errCode, "test error")
  615. var formattedParent string = fmt.Sprintf("projects/%s", "[PROJECT]")
  616. var request = &loggingpb.ListSinksRequest{
  617. Parent: formattedParent,
  618. }
  619. c, err := NewConfigClient(context.Background(), clientOpt)
  620. if err != nil {
  621. t.Fatal(err)
  622. }
  623. resp, err := c.ListSinks(context.Background(), request).Next()
  624. if st, ok := gstatus.FromError(err); !ok {
  625. t.Errorf("got error %v, expected grpc error", err)
  626. } else if c := st.Code(); c != errCode {
  627. t.Errorf("got error code %q, want %q", c, errCode)
  628. }
  629. _ = resp
  630. }
  631. func TestConfigServiceV2GetSink(t *testing.T) {
  632. var name string = "name3373707"
  633. var destination string = "destination-1429847026"
  634. var filter string = "filter-1274492040"
  635. var writerIdentity string = "writerIdentity775638794"
  636. var includeChildren bool = true
  637. var expectedResponse = &loggingpb.LogSink{
  638. Name: name,
  639. Destination: destination,
  640. Filter: filter,
  641. WriterIdentity: writerIdentity,
  642. IncludeChildren: includeChildren,
  643. }
  644. mockConfig.err = nil
  645. mockConfig.reqs = nil
  646. mockConfig.resps = append(mockConfig.resps[:0], expectedResponse)
  647. var formattedSinkName string = fmt.Sprintf("projects/%s/sinks/%s", "[PROJECT]", "[SINK]")
  648. var request = &loggingpb.GetSinkRequest{
  649. SinkName: formattedSinkName,
  650. }
  651. c, err := NewConfigClient(context.Background(), clientOpt)
  652. if err != nil {
  653. t.Fatal(err)
  654. }
  655. resp, err := c.GetSink(context.Background(), request)
  656. if err != nil {
  657. t.Fatal(err)
  658. }
  659. if want, got := request, mockConfig.reqs[0]; !proto.Equal(want, got) {
  660. t.Errorf("wrong request %q, want %q", got, want)
  661. }
  662. if want, got := expectedResponse, resp; !proto.Equal(want, got) {
  663. t.Errorf("wrong response %q, want %q)", got, want)
  664. }
  665. }
  666. func TestConfigServiceV2GetSinkError(t *testing.T) {
  667. errCode := codes.PermissionDenied
  668. mockConfig.err = gstatus.Error(errCode, "test error")
  669. var formattedSinkName string = fmt.Sprintf("projects/%s/sinks/%s", "[PROJECT]", "[SINK]")
  670. var request = &loggingpb.GetSinkRequest{
  671. SinkName: formattedSinkName,
  672. }
  673. c, err := NewConfigClient(context.Background(), clientOpt)
  674. if err != nil {
  675. t.Fatal(err)
  676. }
  677. resp, err := c.GetSink(context.Background(), request)
  678. if st, ok := gstatus.FromError(err); !ok {
  679. t.Errorf("got error %v, expected grpc error", err)
  680. } else if c := st.Code(); c != errCode {
  681. t.Errorf("got error code %q, want %q", c, errCode)
  682. }
  683. _ = resp
  684. }
  685. func TestConfigServiceV2CreateSink(t *testing.T) {
  686. var name string = "name3373707"
  687. var destination string = "destination-1429847026"
  688. var filter string = "filter-1274492040"
  689. var writerIdentity string = "writerIdentity775638794"
  690. var includeChildren bool = true
  691. var expectedResponse = &loggingpb.LogSink{
  692. Name: name,
  693. Destination: destination,
  694. Filter: filter,
  695. WriterIdentity: writerIdentity,
  696. IncludeChildren: includeChildren,
  697. }
  698. mockConfig.err = nil
  699. mockConfig.reqs = nil
  700. mockConfig.resps = append(mockConfig.resps[:0], expectedResponse)
  701. var formattedParent string = fmt.Sprintf("projects/%s", "[PROJECT]")
  702. var sink *loggingpb.LogSink = &loggingpb.LogSink{}
  703. var request = &loggingpb.CreateSinkRequest{
  704. Parent: formattedParent,
  705. Sink: sink,
  706. }
  707. c, err := NewConfigClient(context.Background(), clientOpt)
  708. if err != nil {
  709. t.Fatal(err)
  710. }
  711. resp, err := c.CreateSink(context.Background(), request)
  712. if err != nil {
  713. t.Fatal(err)
  714. }
  715. if want, got := request, mockConfig.reqs[0]; !proto.Equal(want, got) {
  716. t.Errorf("wrong request %q, want %q", got, want)
  717. }
  718. if want, got := expectedResponse, resp; !proto.Equal(want, got) {
  719. t.Errorf("wrong response %q, want %q)", got, want)
  720. }
  721. }
  722. func TestConfigServiceV2CreateSinkError(t *testing.T) {
  723. errCode := codes.PermissionDenied
  724. mockConfig.err = gstatus.Error(errCode, "test error")
  725. var formattedParent string = fmt.Sprintf("projects/%s", "[PROJECT]")
  726. var sink *loggingpb.LogSink = &loggingpb.LogSink{}
  727. var request = &loggingpb.CreateSinkRequest{
  728. Parent: formattedParent,
  729. Sink: sink,
  730. }
  731. c, err := NewConfigClient(context.Background(), clientOpt)
  732. if err != nil {
  733. t.Fatal(err)
  734. }
  735. resp, err := c.CreateSink(context.Background(), request)
  736. if st, ok := gstatus.FromError(err); !ok {
  737. t.Errorf("got error %v, expected grpc error", err)
  738. } else if c := st.Code(); c != errCode {
  739. t.Errorf("got error code %q, want %q", c, errCode)
  740. }
  741. _ = resp
  742. }
  743. func TestConfigServiceV2UpdateSink(t *testing.T) {
  744. var name string = "name3373707"
  745. var destination string = "destination-1429847026"
  746. var filter string = "filter-1274492040"
  747. var writerIdentity string = "writerIdentity775638794"
  748. var includeChildren bool = true
  749. var expectedResponse = &loggingpb.LogSink{
  750. Name: name,
  751. Destination: destination,
  752. Filter: filter,
  753. WriterIdentity: writerIdentity,
  754. IncludeChildren: includeChildren,
  755. }
  756. mockConfig.err = nil
  757. mockConfig.reqs = nil
  758. mockConfig.resps = append(mockConfig.resps[:0], expectedResponse)
  759. var formattedSinkName string = fmt.Sprintf("projects/%s/sinks/%s", "[PROJECT]", "[SINK]")
  760. var sink *loggingpb.LogSink = &loggingpb.LogSink{}
  761. var request = &loggingpb.UpdateSinkRequest{
  762. SinkName: formattedSinkName,
  763. Sink: sink,
  764. }
  765. c, err := NewConfigClient(context.Background(), clientOpt)
  766. if err != nil {
  767. t.Fatal(err)
  768. }
  769. resp, err := c.UpdateSink(context.Background(), request)
  770. if err != nil {
  771. t.Fatal(err)
  772. }
  773. if want, got := request, mockConfig.reqs[0]; !proto.Equal(want, got) {
  774. t.Errorf("wrong request %q, want %q", got, want)
  775. }
  776. if want, got := expectedResponse, resp; !proto.Equal(want, got) {
  777. t.Errorf("wrong response %q, want %q)", got, want)
  778. }
  779. }
  780. func TestConfigServiceV2UpdateSinkError(t *testing.T) {
  781. errCode := codes.PermissionDenied
  782. mockConfig.err = gstatus.Error(errCode, "test error")
  783. var formattedSinkName string = fmt.Sprintf("projects/%s/sinks/%s", "[PROJECT]", "[SINK]")
  784. var sink *loggingpb.LogSink = &loggingpb.LogSink{}
  785. var request = &loggingpb.UpdateSinkRequest{
  786. SinkName: formattedSinkName,
  787. Sink: sink,
  788. }
  789. c, err := NewConfigClient(context.Background(), clientOpt)
  790. if err != nil {
  791. t.Fatal(err)
  792. }
  793. resp, err := c.UpdateSink(context.Background(), request)
  794. if st, ok := gstatus.FromError(err); !ok {
  795. t.Errorf("got error %v, expected grpc error", err)
  796. } else if c := st.Code(); c != errCode {
  797. t.Errorf("got error code %q, want %q", c, errCode)
  798. }
  799. _ = resp
  800. }
  801. func TestConfigServiceV2DeleteSink(t *testing.T) {
  802. var expectedResponse *emptypb.Empty = &emptypb.Empty{}
  803. mockConfig.err = nil
  804. mockConfig.reqs = nil
  805. mockConfig.resps = append(mockConfig.resps[:0], expectedResponse)
  806. var formattedSinkName string = fmt.Sprintf("projects/%s/sinks/%s", "[PROJECT]", "[SINK]")
  807. var request = &loggingpb.DeleteSinkRequest{
  808. SinkName: formattedSinkName,
  809. }
  810. c, err := NewConfigClient(context.Background(), clientOpt)
  811. if err != nil {
  812. t.Fatal(err)
  813. }
  814. err = c.DeleteSink(context.Background(), request)
  815. if err != nil {
  816. t.Fatal(err)
  817. }
  818. if want, got := request, mockConfig.reqs[0]; !proto.Equal(want, got) {
  819. t.Errorf("wrong request %q, want %q", got, want)
  820. }
  821. }
  822. func TestConfigServiceV2DeleteSinkError(t *testing.T) {
  823. errCode := codes.PermissionDenied
  824. mockConfig.err = gstatus.Error(errCode, "test error")
  825. var formattedSinkName string = fmt.Sprintf("projects/%s/sinks/%s", "[PROJECT]", "[SINK]")
  826. var request = &loggingpb.DeleteSinkRequest{
  827. SinkName: formattedSinkName,
  828. }
  829. c, err := NewConfigClient(context.Background(), clientOpt)
  830. if err != nil {
  831. t.Fatal(err)
  832. }
  833. err = c.DeleteSink(context.Background(), request)
  834. if st, ok := gstatus.FromError(err); !ok {
  835. t.Errorf("got error %v, expected grpc error", err)
  836. } else if c := st.Code(); c != errCode {
  837. t.Errorf("got error code %q, want %q", c, errCode)
  838. }
  839. }
  840. func TestConfigServiceV2ListExclusions(t *testing.T) {
  841. var nextPageToken string = ""
  842. var exclusionsElement *loggingpb.LogExclusion = &loggingpb.LogExclusion{}
  843. var exclusions = []*loggingpb.LogExclusion{exclusionsElement}
  844. var expectedResponse = &loggingpb.ListExclusionsResponse{
  845. NextPageToken: nextPageToken,
  846. Exclusions: exclusions,
  847. }
  848. mockConfig.err = nil
  849. mockConfig.reqs = nil
  850. mockConfig.resps = append(mockConfig.resps[:0], expectedResponse)
  851. var formattedParent string = fmt.Sprintf("projects/%s", "[PROJECT]")
  852. var request = &loggingpb.ListExclusionsRequest{
  853. Parent: formattedParent,
  854. }
  855. c, err := NewConfigClient(context.Background(), clientOpt)
  856. if err != nil {
  857. t.Fatal(err)
  858. }
  859. resp, err := c.ListExclusions(context.Background(), request).Next()
  860. if err != nil {
  861. t.Fatal(err)
  862. }
  863. if want, got := request, mockConfig.reqs[0]; !proto.Equal(want, got) {
  864. t.Errorf("wrong request %q, want %q", got, want)
  865. }
  866. want := (interface{})(expectedResponse.Exclusions[0])
  867. got := (interface{})(resp)
  868. var ok bool
  869. switch want := (want).(type) {
  870. case proto.Message:
  871. ok = proto.Equal(want, got.(proto.Message))
  872. default:
  873. ok = want == got
  874. }
  875. if !ok {
  876. t.Errorf("wrong response %q, want %q)", got, want)
  877. }
  878. }
  879. func TestConfigServiceV2ListExclusionsError(t *testing.T) {
  880. errCode := codes.PermissionDenied
  881. mockConfig.err = gstatus.Error(errCode, "test error")
  882. var formattedParent string = fmt.Sprintf("projects/%s", "[PROJECT]")
  883. var request = &loggingpb.ListExclusionsRequest{
  884. Parent: formattedParent,
  885. }
  886. c, err := NewConfigClient(context.Background(), clientOpt)
  887. if err != nil {
  888. t.Fatal(err)
  889. }
  890. resp, err := c.ListExclusions(context.Background(), request).Next()
  891. if st, ok := gstatus.FromError(err); !ok {
  892. t.Errorf("got error %v, expected grpc error", err)
  893. } else if c := st.Code(); c != errCode {
  894. t.Errorf("got error code %q, want %q", c, errCode)
  895. }
  896. _ = resp
  897. }
  898. func TestConfigServiceV2GetExclusion(t *testing.T) {
  899. var name2 string = "name2-1052831874"
  900. var description string = "description-1724546052"
  901. var filter string = "filter-1274492040"
  902. var disabled bool = true
  903. var expectedResponse = &loggingpb.LogExclusion{
  904. Name: name2,
  905. Description: description,
  906. Filter: filter,
  907. Disabled: disabled,
  908. }
  909. mockConfig.err = nil
  910. mockConfig.reqs = nil
  911. mockConfig.resps = append(mockConfig.resps[:0], expectedResponse)
  912. var formattedName string = fmt.Sprintf("projects/%s/exclusions/%s", "[PROJECT]", "[EXCLUSION]")
  913. var request = &loggingpb.GetExclusionRequest{
  914. Name: formattedName,
  915. }
  916. c, err := NewConfigClient(context.Background(), clientOpt)
  917. if err != nil {
  918. t.Fatal(err)
  919. }
  920. resp, err := c.GetExclusion(context.Background(), request)
  921. if err != nil {
  922. t.Fatal(err)
  923. }
  924. if want, got := request, mockConfig.reqs[0]; !proto.Equal(want, got) {
  925. t.Errorf("wrong request %q, want %q", got, want)
  926. }
  927. if want, got := expectedResponse, resp; !proto.Equal(want, got) {
  928. t.Errorf("wrong response %q, want %q)", got, want)
  929. }
  930. }
  931. func TestConfigServiceV2GetExclusionError(t *testing.T) {
  932. errCode := codes.PermissionDenied
  933. mockConfig.err = gstatus.Error(errCode, "test error")
  934. var formattedName string = fmt.Sprintf("projects/%s/exclusions/%s", "[PROJECT]", "[EXCLUSION]")
  935. var request = &loggingpb.GetExclusionRequest{
  936. Name: formattedName,
  937. }
  938. c, err := NewConfigClient(context.Background(), clientOpt)
  939. if err != nil {
  940. t.Fatal(err)
  941. }
  942. resp, err := c.GetExclusion(context.Background(), request)
  943. if st, ok := gstatus.FromError(err); !ok {
  944. t.Errorf("got error %v, expected grpc error", err)
  945. } else if c := st.Code(); c != errCode {
  946. t.Errorf("got error code %q, want %q", c, errCode)
  947. }
  948. _ = resp
  949. }
  950. func TestConfigServiceV2CreateExclusion(t *testing.T) {
  951. var name string = "name3373707"
  952. var description string = "description-1724546052"
  953. var filter string = "filter-1274492040"
  954. var disabled bool = true
  955. var expectedResponse = &loggingpb.LogExclusion{
  956. Name: name,
  957. Description: description,
  958. Filter: filter,
  959. Disabled: disabled,
  960. }
  961. mockConfig.err = nil
  962. mockConfig.reqs = nil
  963. mockConfig.resps = append(mockConfig.resps[:0], expectedResponse)
  964. var formattedParent string = fmt.Sprintf("projects/%s", "[PROJECT]")
  965. var exclusion *loggingpb.LogExclusion = &loggingpb.LogExclusion{}
  966. var request = &loggingpb.CreateExclusionRequest{
  967. Parent: formattedParent,
  968. Exclusion: exclusion,
  969. }
  970. c, err := NewConfigClient(context.Background(), clientOpt)
  971. if err != nil {
  972. t.Fatal(err)
  973. }
  974. resp, err := c.CreateExclusion(context.Background(), request)
  975. if err != nil {
  976. t.Fatal(err)
  977. }
  978. if want, got := request, mockConfig.reqs[0]; !proto.Equal(want, got) {
  979. t.Errorf("wrong request %q, want %q", got, want)
  980. }
  981. if want, got := expectedResponse, resp; !proto.Equal(want, got) {
  982. t.Errorf("wrong response %q, want %q)", got, want)
  983. }
  984. }
  985. func TestConfigServiceV2CreateExclusionError(t *testing.T) {
  986. errCode := codes.PermissionDenied
  987. mockConfig.err = gstatus.Error(errCode, "test error")
  988. var formattedParent string = fmt.Sprintf("projects/%s", "[PROJECT]")
  989. var exclusion *loggingpb.LogExclusion = &loggingpb.LogExclusion{}
  990. var request = &loggingpb.CreateExclusionRequest{
  991. Parent: formattedParent,
  992. Exclusion: exclusion,
  993. }
  994. c, err := NewConfigClient(context.Background(), clientOpt)
  995. if err != nil {
  996. t.Fatal(err)
  997. }
  998. resp, err := c.CreateExclusion(context.Background(), request)
  999. if st, ok := gstatus.FromError(err); !ok {
  1000. t.Errorf("got error %v, expected grpc error", err)
  1001. } else if c := st.Code(); c != errCode {
  1002. t.Errorf("got error code %q, want %q", c, errCode)
  1003. }
  1004. _ = resp
  1005. }
  1006. func TestConfigServiceV2UpdateExclusion(t *testing.T) {
  1007. var name2 string = "name2-1052831874"
  1008. var description string = "description-1724546052"
  1009. var filter string = "filter-1274492040"
  1010. var disabled bool = true
  1011. var expectedResponse = &loggingpb.LogExclusion{
  1012. Name: name2,
  1013. Description: description,
  1014. Filter: filter,
  1015. Disabled: disabled,
  1016. }
  1017. mockConfig.err = nil
  1018. mockConfig.reqs = nil
  1019. mockConfig.resps = append(mockConfig.resps[:0], expectedResponse)
  1020. var formattedName string = fmt.Sprintf("projects/%s/exclusions/%s", "[PROJECT]", "[EXCLUSION]")
  1021. var exclusion *loggingpb.LogExclusion = &loggingpb.LogExclusion{}
  1022. var updateMask *field_maskpb.FieldMask = &field_maskpb.FieldMask{}
  1023. var request = &loggingpb.UpdateExclusionRequest{
  1024. Name: formattedName,
  1025. Exclusion: exclusion,
  1026. UpdateMask: updateMask,
  1027. }
  1028. c, err := NewConfigClient(context.Background(), clientOpt)
  1029. if err != nil {
  1030. t.Fatal(err)
  1031. }
  1032. resp, err := c.UpdateExclusion(context.Background(), request)
  1033. if err != nil {
  1034. t.Fatal(err)
  1035. }
  1036. if want, got := request, mockConfig.reqs[0]; !proto.Equal(want, got) {
  1037. t.Errorf("wrong request %q, want %q", got, want)
  1038. }
  1039. if want, got := expectedResponse, resp; !proto.Equal(want, got) {
  1040. t.Errorf("wrong response %q, want %q)", got, want)
  1041. }
  1042. }
  1043. func TestConfigServiceV2UpdateExclusionError(t *testing.T) {
  1044. errCode := codes.PermissionDenied
  1045. mockConfig.err = gstatus.Error(errCode, "test error")
  1046. var formattedName string = fmt.Sprintf("projects/%s/exclusions/%s", "[PROJECT]", "[EXCLUSION]")
  1047. var exclusion *loggingpb.LogExclusion = &loggingpb.LogExclusion{}
  1048. var updateMask *field_maskpb.FieldMask = &field_maskpb.FieldMask{}
  1049. var request = &loggingpb.UpdateExclusionRequest{
  1050. Name: formattedName,
  1051. Exclusion: exclusion,
  1052. UpdateMask: updateMask,
  1053. }
  1054. c, err := NewConfigClient(context.Background(), clientOpt)
  1055. if err != nil {
  1056. t.Fatal(err)
  1057. }
  1058. resp, err := c.UpdateExclusion(context.Background(), request)
  1059. if st, ok := gstatus.FromError(err); !ok {
  1060. t.Errorf("got error %v, expected grpc error", err)
  1061. } else if c := st.Code(); c != errCode {
  1062. t.Errorf("got error code %q, want %q", c, errCode)
  1063. }
  1064. _ = resp
  1065. }
  1066. func TestConfigServiceV2DeleteExclusion(t *testing.T) {
  1067. var expectedResponse *emptypb.Empty = &emptypb.Empty{}
  1068. mockConfig.err = nil
  1069. mockConfig.reqs = nil
  1070. mockConfig.resps = append(mockConfig.resps[:0], expectedResponse)
  1071. var formattedName string = fmt.Sprintf("projects/%s/exclusions/%s", "[PROJECT]", "[EXCLUSION]")
  1072. var request = &loggingpb.DeleteExclusionRequest{
  1073. Name: formattedName,
  1074. }
  1075. c, err := NewConfigClient(context.Background(), clientOpt)
  1076. if err != nil {
  1077. t.Fatal(err)
  1078. }
  1079. err = c.DeleteExclusion(context.Background(), request)
  1080. if err != nil {
  1081. t.Fatal(err)
  1082. }
  1083. if want, got := request, mockConfig.reqs[0]; !proto.Equal(want, got) {
  1084. t.Errorf("wrong request %q, want %q", got, want)
  1085. }
  1086. }
  1087. func TestConfigServiceV2DeleteExclusionError(t *testing.T) {
  1088. errCode := codes.PermissionDenied
  1089. mockConfig.err = gstatus.Error(errCode, "test error")
  1090. var formattedName string = fmt.Sprintf("projects/%s/exclusions/%s", "[PROJECT]", "[EXCLUSION]")
  1091. var request = &loggingpb.DeleteExclusionRequest{
  1092. Name: formattedName,
  1093. }
  1094. c, err := NewConfigClient(context.Background(), clientOpt)
  1095. if err != nil {
  1096. t.Fatal(err)
  1097. }
  1098. err = c.DeleteExclusion(context.Background(), request)
  1099. if st, ok := gstatus.FromError(err); !ok {
  1100. t.Errorf("got error %v, expected grpc error", err)
  1101. } else if c := st.Code(); c != errCode {
  1102. t.Errorf("got error code %q, want %q", c, errCode)
  1103. }
  1104. }
  1105. func TestMetricsServiceV2ListLogMetrics(t *testing.T) {
  1106. var nextPageToken string = ""
  1107. var metricsElement *loggingpb.LogMetric = &loggingpb.LogMetric{}
  1108. var metrics = []*loggingpb.LogMetric{metricsElement}
  1109. var expectedResponse = &loggingpb.ListLogMetricsResponse{
  1110. NextPageToken: nextPageToken,
  1111. Metrics: metrics,
  1112. }
  1113. mockMetrics.err = nil
  1114. mockMetrics.reqs = nil
  1115. mockMetrics.resps = append(mockMetrics.resps[:0], expectedResponse)
  1116. var formattedParent string = fmt.Sprintf("projects/%s", "[PROJECT]")
  1117. var request = &loggingpb.ListLogMetricsRequest{
  1118. Parent: formattedParent,
  1119. }
  1120. c, err := NewMetricsClient(context.Background(), clientOpt)
  1121. if err != nil {
  1122. t.Fatal(err)
  1123. }
  1124. resp, err := c.ListLogMetrics(context.Background(), request).Next()
  1125. if err != nil {
  1126. t.Fatal(err)
  1127. }
  1128. if want, got := request, mockMetrics.reqs[0]; !proto.Equal(want, got) {
  1129. t.Errorf("wrong request %q, want %q", got, want)
  1130. }
  1131. want := (interface{})(expectedResponse.Metrics[0])
  1132. got := (interface{})(resp)
  1133. var ok bool
  1134. switch want := (want).(type) {
  1135. case proto.Message:
  1136. ok = proto.Equal(want, got.(proto.Message))
  1137. default:
  1138. ok = want == got
  1139. }
  1140. if !ok {
  1141. t.Errorf("wrong response %q, want %q)", got, want)
  1142. }
  1143. }
  1144. func TestMetricsServiceV2ListLogMetricsError(t *testing.T) {
  1145. errCode := codes.PermissionDenied
  1146. mockMetrics.err = gstatus.Error(errCode, "test error")
  1147. var formattedParent string = fmt.Sprintf("projects/%s", "[PROJECT]")
  1148. var request = &loggingpb.ListLogMetricsRequest{
  1149. Parent: formattedParent,
  1150. }
  1151. c, err := NewMetricsClient(context.Background(), clientOpt)
  1152. if err != nil {
  1153. t.Fatal(err)
  1154. }
  1155. resp, err := c.ListLogMetrics(context.Background(), request).Next()
  1156. if st, ok := gstatus.FromError(err); !ok {
  1157. t.Errorf("got error %v, expected grpc error", err)
  1158. } else if c := st.Code(); c != errCode {
  1159. t.Errorf("got error code %q, want %q", c, errCode)
  1160. }
  1161. _ = resp
  1162. }
  1163. func TestMetricsServiceV2GetLogMetric(t *testing.T) {
  1164. var name string = "name3373707"
  1165. var description string = "description-1724546052"
  1166. var filter string = "filter-1274492040"
  1167. var valueExtractor string = "valueExtractor2047672534"
  1168. var expectedResponse = &loggingpb.LogMetric{
  1169. Name: name,
  1170. Description: description,
  1171. Filter: filter,
  1172. ValueExtractor: valueExtractor,
  1173. }
  1174. mockMetrics.err = nil
  1175. mockMetrics.reqs = nil
  1176. mockMetrics.resps = append(mockMetrics.resps[:0], expectedResponse)
  1177. var formattedMetricName string = fmt.Sprintf("projects/%s/metrics/%s", "[PROJECT]", "[METRIC]")
  1178. var request = &loggingpb.GetLogMetricRequest{
  1179. MetricName: formattedMetricName,
  1180. }
  1181. c, err := NewMetricsClient(context.Background(), clientOpt)
  1182. if err != nil {
  1183. t.Fatal(err)
  1184. }
  1185. resp, err := c.GetLogMetric(context.Background(), request)
  1186. if err != nil {
  1187. t.Fatal(err)
  1188. }
  1189. if want, got := request, mockMetrics.reqs[0]; !proto.Equal(want, got) {
  1190. t.Errorf("wrong request %q, want %q", got, want)
  1191. }
  1192. if want, got := expectedResponse, resp; !proto.Equal(want, got) {
  1193. t.Errorf("wrong response %q, want %q)", got, want)
  1194. }
  1195. }
  1196. func TestMetricsServiceV2GetLogMetricError(t *testing.T) {
  1197. errCode := codes.PermissionDenied
  1198. mockMetrics.err = gstatus.Error(errCode, "test error")
  1199. var formattedMetricName string = fmt.Sprintf("projects/%s/metrics/%s", "[PROJECT]", "[METRIC]")
  1200. var request = &loggingpb.GetLogMetricRequest{
  1201. MetricName: formattedMetricName,
  1202. }
  1203. c, err := NewMetricsClient(context.Background(), clientOpt)
  1204. if err != nil {
  1205. t.Fatal(err)
  1206. }
  1207. resp, err := c.GetLogMetric(context.Background(), request)
  1208. if st, ok := gstatus.FromError(err); !ok {
  1209. t.Errorf("got error %v, expected grpc error", err)
  1210. } else if c := st.Code(); c != errCode {
  1211. t.Errorf("got error code %q, want %q", c, errCode)
  1212. }
  1213. _ = resp
  1214. }
  1215. func TestMetricsServiceV2CreateLogMetric(t *testing.T) {
  1216. var name string = "name3373707"
  1217. var description string = "description-1724546052"
  1218. var filter string = "filter-1274492040"
  1219. var valueExtractor string = "valueExtractor2047672534"
  1220. var expectedResponse = &loggingpb.LogMetric{
  1221. Name: name,
  1222. Description: description,
  1223. Filter: filter,
  1224. ValueExtractor: valueExtractor,
  1225. }
  1226. mockMetrics.err = nil
  1227. mockMetrics.reqs = nil
  1228. mockMetrics.resps = append(mockMetrics.resps[:0], expectedResponse)
  1229. var formattedParent string = fmt.Sprintf("projects/%s", "[PROJECT]")
  1230. var metric *loggingpb.LogMetric = &loggingpb.LogMetric{}
  1231. var request = &loggingpb.CreateLogMetricRequest{
  1232. Parent: formattedParent,
  1233. Metric: metric,
  1234. }
  1235. c, err := NewMetricsClient(context.Background(), clientOpt)
  1236. if err != nil {
  1237. t.Fatal(err)
  1238. }
  1239. resp, err := c.CreateLogMetric(context.Background(), request)
  1240. if err != nil {
  1241. t.Fatal(err)
  1242. }
  1243. if want, got := request, mockMetrics.reqs[0]; !proto.Equal(want, got) {
  1244. t.Errorf("wrong request %q, want %q", got, want)
  1245. }
  1246. if want, got := expectedResponse, resp; !proto.Equal(want, got) {
  1247. t.Errorf("wrong response %q, want %q)", got, want)
  1248. }
  1249. }
  1250. func TestMetricsServiceV2CreateLogMetricError(t *testing.T) {
  1251. errCode := codes.PermissionDenied
  1252. mockMetrics.err = gstatus.Error(errCode, "test error")
  1253. var formattedParent string = fmt.Sprintf("projects/%s", "[PROJECT]")
  1254. var metric *loggingpb.LogMetric = &loggingpb.LogMetric{}
  1255. var request = &loggingpb.CreateLogMetricRequest{
  1256. Parent: formattedParent,
  1257. Metric: metric,
  1258. }
  1259. c, err := NewMetricsClient(context.Background(), clientOpt)
  1260. if err != nil {
  1261. t.Fatal(err)
  1262. }
  1263. resp, err := c.CreateLogMetric(context.Background(), request)
  1264. if st, ok := gstatus.FromError(err); !ok {
  1265. t.Errorf("got error %v, expected grpc error", err)
  1266. } else if c := st.Code(); c != errCode {
  1267. t.Errorf("got error code %q, want %q", c, errCode)
  1268. }
  1269. _ = resp
  1270. }
  1271. func TestMetricsServiceV2UpdateLogMetric(t *testing.T) {
  1272. var name string = "name3373707"
  1273. var description string = "description-1724546052"
  1274. var filter string = "filter-1274492040"
  1275. var valueExtractor string = "valueExtractor2047672534"
  1276. var expectedResponse = &loggingpb.LogMetric{
  1277. Name: name,
  1278. Description: description,
  1279. Filter: filter,
  1280. ValueExtractor: valueExtractor,
  1281. }
  1282. mockMetrics.err = nil
  1283. mockMetrics.reqs = nil
  1284. mockMetrics.resps = append(mockMetrics.resps[:0], expectedResponse)
  1285. var formattedMetricName string = fmt.Sprintf("projects/%s/metrics/%s", "[PROJECT]", "[METRIC]")
  1286. var metric *loggingpb.LogMetric = &loggingpb.LogMetric{}
  1287. var request = &loggingpb.UpdateLogMetricRequest{
  1288. MetricName: formattedMetricName,
  1289. Metric: metric,
  1290. }
  1291. c, err := NewMetricsClient(context.Background(), clientOpt)
  1292. if err != nil {
  1293. t.Fatal(err)
  1294. }
  1295. resp, err := c.UpdateLogMetric(context.Background(), request)
  1296. if err != nil {
  1297. t.Fatal(err)
  1298. }
  1299. if want, got := request, mockMetrics.reqs[0]; !proto.Equal(want, got) {
  1300. t.Errorf("wrong request %q, want %q", got, want)
  1301. }
  1302. if want, got := expectedResponse, resp; !proto.Equal(want, got) {
  1303. t.Errorf("wrong response %q, want %q)", got, want)
  1304. }
  1305. }
  1306. func TestMetricsServiceV2UpdateLogMetricError(t *testing.T) {
  1307. errCode := codes.PermissionDenied
  1308. mockMetrics.err = gstatus.Error(errCode, "test error")
  1309. var formattedMetricName string = fmt.Sprintf("projects/%s/metrics/%s", "[PROJECT]", "[METRIC]")
  1310. var metric *loggingpb.LogMetric = &loggingpb.LogMetric{}
  1311. var request = &loggingpb.UpdateLogMetricRequest{
  1312. MetricName: formattedMetricName,
  1313. Metric: metric,
  1314. }
  1315. c, err := NewMetricsClient(context.Background(), clientOpt)
  1316. if err != nil {
  1317. t.Fatal(err)
  1318. }
  1319. resp, err := c.UpdateLogMetric(context.Background(), request)
  1320. if st, ok := gstatus.FromError(err); !ok {
  1321. t.Errorf("got error %v, expected grpc error", err)
  1322. } else if c := st.Code(); c != errCode {
  1323. t.Errorf("got error code %q, want %q", c, errCode)
  1324. }
  1325. _ = resp
  1326. }
  1327. func TestMetricsServiceV2DeleteLogMetric(t *testing.T) {
  1328. var expectedResponse *emptypb.Empty = &emptypb.Empty{}
  1329. mockMetrics.err = nil
  1330. mockMetrics.reqs = nil
  1331. mockMetrics.resps = append(mockMetrics.resps[:0], expectedResponse)
  1332. var formattedMetricName string = fmt.Sprintf("projects/%s/metrics/%s", "[PROJECT]", "[METRIC]")
  1333. var request = &loggingpb.DeleteLogMetricRequest{
  1334. MetricName: formattedMetricName,
  1335. }
  1336. c, err := NewMetricsClient(context.Background(), clientOpt)
  1337. if err != nil {
  1338. t.Fatal(err)
  1339. }
  1340. err = c.DeleteLogMetric(context.Background(), request)
  1341. if err != nil {
  1342. t.Fatal(err)
  1343. }
  1344. if want, got := request, mockMetrics.reqs[0]; !proto.Equal(want, got) {
  1345. t.Errorf("wrong request %q, want %q", got, want)
  1346. }
  1347. }
  1348. func TestMetricsServiceV2DeleteLogMetricError(t *testing.T) {
  1349. errCode := codes.PermissionDenied
  1350. mockMetrics.err = gstatus.Error(errCode, "test error")
  1351. var formattedMetricName string = fmt.Sprintf("projects/%s/metrics/%s", "[PROJECT]", "[METRIC]")
  1352. var request = &loggingpb.DeleteLogMetricRequest{
  1353. MetricName: formattedMetricName,
  1354. }
  1355. c, err := NewMetricsClient(context.Background(), clientOpt)
  1356. if err != nil {
  1357. t.Fatal(err)
  1358. }
  1359. err = c.DeleteLogMetric(context.Background(), request)
  1360. if st, ok := gstatus.FromError(err); !ok {
  1361. t.Errorf("got error %v, expected grpc error", err)
  1362. } else if c := st.Code(); c != errCode {
  1363. t.Errorf("got error code %q, want %q", c, errCode)
  1364. }
  1365. }