(t *testing.T, e env)
| 1715 | } |
| 1716 | |
| 1717 | func testPreloaderClientSend(t *testing.T, e env) { |
| 1718 | te := newTest(t, e) |
| 1719 | te.userAgent = testAppUA |
| 1720 | te.declareLogNoise( |
| 1721 | "Failed to dial : context canceled; please retry.", |
| 1722 | ) |
| 1723 | te.startServer(&testServer{security: e.security}) |
| 1724 | |
| 1725 | defer te.tearDown() |
| 1726 | tc := testgrpc.NewTestServiceClient(te.clientConn()) |
| 1727 | |
| 1728 | // Test for streaming RPC recv. |
| 1729 | // Set context for send with proper RPC Information |
| 1730 | stream, err := tc.FullDuplexCall(te.ctx, grpc.UseCompressor("gzip")) |
| 1731 | if err != nil { |
| 1732 | t.Fatalf("%v.FullDuplexCall(_) = _, %v, want <nil>", tc, err) |
| 1733 | } |
| 1734 | var index int |
| 1735 | for index < len(reqSizes) { |
| 1736 | respParam := []*testpb.ResponseParameters{ |
| 1737 | { |
| 1738 | Size: int32(respSizes[index]), |
| 1739 | }, |
| 1740 | } |
| 1741 | |
| 1742 | payload, err := newPayload(testpb.PayloadType_COMPRESSABLE, int32(reqSizes[index])) |
| 1743 | if err != nil { |
| 1744 | t.Fatal(err) |
| 1745 | } |
| 1746 | |
| 1747 | req := &testpb.StreamingOutputCallRequest{ |
| 1748 | ResponseType: testpb.PayloadType_COMPRESSABLE, |
| 1749 | ResponseParameters: respParam, |
| 1750 | Payload: payload, |
| 1751 | } |
| 1752 | preparedMsg := &grpc.PreparedMsg{} |
| 1753 | err = preparedMsg.Encode(stream, req) |
| 1754 | if err != nil { |
| 1755 | t.Fatalf("PrepareMsg failed for size %d : %v", reqSizes[index], err) |
| 1756 | } |
| 1757 | if err := stream.SendMsg(preparedMsg); err != nil { |
| 1758 | t.Fatalf("%v.Send(%v) = %v, want <nil>", stream, req, err) |
| 1759 | } |
| 1760 | reply, err := stream.Recv() |
| 1761 | if err != nil { |
| 1762 | t.Fatalf("%v.Recv() = %v, want <nil>", stream, err) |
| 1763 | } |
| 1764 | pt := reply.GetPayload().GetType() |
| 1765 | if pt != testpb.PayloadType_COMPRESSABLE { |
| 1766 | t.Fatalf("Got the reply of type %d, want %d", pt, testpb.PayloadType_COMPRESSABLE) |
| 1767 | } |
| 1768 | size := len(reply.GetPayload().GetBody()) |
| 1769 | if size != int(respSizes[index]) { |
| 1770 | t.Fatalf("Got reply body of length %d, want %d", size, respSizes[index]) |
| 1771 | } |
| 1772 | index++ |
| 1773 | } |
| 1774 | if err := stream.CloseSend(); err != nil { |
no test coverage detected