Home / Function/ Test_LBClientTransport_StreamResponseBody() — fiber Function Reference

Test_LBClientTransport_StreamResponseBody() — fiber Function Reference

Architecture documentation for the Test_LBClientTransport_StreamResponseBody() function in transport_test.go from the fiber codebase.

Entity Profile

Dependency Diagram

graph TD
  3bcbb9c7_5451_27c4_3dc0_674150fff172["Test_LBClientTransport_StreamResponseBody()"]
  b137f470_30b5_d002_b6e6_5173073c07e3["transport_test.go"]
  3bcbb9c7_5451_27c4_3dc0_674150fff172 -->|defined in| b137f470_30b5_d002_b6e6_5173073c07e3
  style 3bcbb9c7_5451_27c4_3dc0_674150fff172 fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

client/transport_test.go lines 411–466

func Test_LBClientTransport_StreamResponseBody(t *testing.T) {
	t.Parallel()

	t.Run("empty clients", func(t *testing.T) {
		t.Parallel()
		lbClient := &fasthttp.LBClient{
			Clients: []fasthttp.BalancingClient{},
		}
		transport := newLBClientTransport(lbClient)
		require.False(t, transport.StreamResponseBody())
	})

	t.Run("single host client", func(t *testing.T) {
		t.Parallel()
		hostClient := &fasthttp.HostClient{Addr: "example.com:80"}
		lbClient := &fasthttp.LBClient{
			Clients: []fasthttp.BalancingClient{hostClient},
		}
		transport := newLBClientTransport(lbClient)

		// Test default
		require.False(t, transport.StreamResponseBody())

		// Enable streaming
		transport.SetStreamResponseBody(true)
		require.True(t, transport.StreamResponseBody())
		require.True(t, hostClient.StreamResponseBody)

		// Disable streaming
		transport.SetStreamResponseBody(false)
		require.False(t, transport.StreamResponseBody())
		require.False(t, hostClient.StreamResponseBody)
	})

	t.Run("multiple host clients", func(t *testing.T) {
		t.Parallel()
		hostClient1 := &fasthttp.HostClient{Addr: "example1.com:80"}
		hostClient2 := &fasthttp.HostClient{Addr: "example2.com:80"}
		lbClient := &fasthttp.LBClient{
			Clients: []fasthttp.BalancingClient{hostClient1, hostClient2},
		}
		transport := newLBClientTransport(lbClient)

		// Enable streaming on all clients
		transport.SetStreamResponseBody(true)
		require.True(t, transport.StreamResponseBody())
		require.True(t, hostClient1.StreamResponseBody)
		require.True(t, hostClient2.StreamResponseBody)

		// Disable streaming on all clients
		transport.SetStreamResponseBody(false)
		require.False(t, transport.StreamResponseBody())
		require.False(t, hostClient1.StreamResponseBody)
		require.False(t, hostClient2.StreamResponseBody)
	})
}

Domain

Subdomains

Frequently Asked Questions

What does Test_LBClientTransport_StreamResponseBody() do?
Test_LBClientTransport_StreamResponseBody() is a function in the fiber codebase, defined in client/transport_test.go.
Where is Test_LBClientTransport_StreamResponseBody() defined?
Test_LBClientTransport_StreamResponseBody() is defined in client/transport_test.go at line 411.

Analyze Your Own Codebase

Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.

Try Supermodel Free