diff --git a/client_publish_test.go b/client_publish_test.go index c3240034..ab4b0eb4 100644 --- a/client_publish_test.go +++ b/client_publish_test.go @@ -36,8 +36,7 @@ func TestClientPublishSerial(t *testing.T) { defer conn.Close() bconn := bufio.NewReadWriter(bufio.NewReader(conn), bufio.NewWriter(conn)) - var req base.Request - err = req.Read(bconn.Reader) + req, err := readRequest(bconn.Reader) require.NoError(t, err) require.Equal(t, base.Options, req.Method) require.Equal(t, base.MustParseURL("rtsp://localhost:8554/teststream"), req.URL) @@ -54,7 +53,7 @@ func TestClientPublishSerial(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - err = req.Read(bconn.Reader) + req, err = readRequest(bconn.Reader) require.NoError(t, err) require.Equal(t, base.Announce, req.Method) require.Equal(t, base.MustParseURL("rtsp://localhost:8554/teststream"), req.URL) @@ -64,7 +63,7 @@ func TestClientPublishSerial(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - err = req.Read(bconn.Reader) + req, err = readRequest(bconn.Reader) require.NoError(t, err) require.Equal(t, base.Setup, req.Method) require.Equal(t, base.MustParseURL("rtsp://localhost:8554/teststream/trackID=0"), req.URL) @@ -110,7 +109,7 @@ func TestClientPublishSerial(t *testing.T) { defer l2.Close() } - err = req.Read(bconn.Reader) + req, err = readRequest(bconn.Reader) require.NoError(t, err) require.Equal(t, base.Record, req.Method) require.Equal(t, base.MustParseURL("rtsp://localhost:8554/teststream"), req.URL) @@ -152,7 +151,7 @@ func TestClientPublishSerial(t *testing.T) { require.NoError(t, err) } - err = req.Read(bconn.Reader) + req, err = readRequest(bconn.Reader) require.NoError(t, err) require.Equal(t, base.Teardown, req.Method) require.Equal(t, base.MustParseURL("rtsp://localhost:8554/teststream"), req.URL) @@ -224,8 +223,7 @@ func TestClientPublishParallel(t *testing.T) { defer conn.Close() bconn := bufio.NewReadWriter(bufio.NewReader(conn), bufio.NewWriter(conn)) - var req base.Request - err = req.Read(bconn.Reader) + req, err := readRequest(bconn.Reader) require.NoError(t, err) require.Equal(t, base.Options, req.Method) @@ -241,7 +239,7 @@ func TestClientPublishParallel(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - err = req.Read(bconn.Reader) + req, err = readRequest(bconn.Reader) require.NoError(t, err) require.Equal(t, base.Announce, req.Method) @@ -250,7 +248,7 @@ func TestClientPublishParallel(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - err = req.Read(bconn.Reader) + req, err = readRequest(bconn.Reader) require.NoError(t, err) require.Equal(t, base.Setup, req.Method) @@ -283,7 +281,7 @@ func TestClientPublishParallel(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - err = req.Read(bconn.Reader) + req, err = readRequest(bconn.Reader) require.NoError(t, err) require.Equal(t, base.Record, req.Method) @@ -292,8 +290,7 @@ func TestClientPublishParallel(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - buf := make([]byte, 2048) - err = req.ReadIgnoreFrames(bconn.Reader, buf) + req, err = readRequestIgnoreFrames(bconn.Reader) require.NoError(t, err) require.Equal(t, base.Teardown, req.Method) @@ -365,8 +362,7 @@ func TestClientPublishPauseSerial(t *testing.T) { defer conn.Close() bconn := bufio.NewReadWriter(bufio.NewReader(conn), bufio.NewWriter(conn)) - var req base.Request - err = req.Read(bconn.Reader) + req, err := readRequest(bconn.Reader) require.NoError(t, err) require.Equal(t, base.Options, req.Method) @@ -383,7 +379,7 @@ func TestClientPublishPauseSerial(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - err = req.Read(bconn.Reader) + req, err = readRequest(bconn.Reader) require.NoError(t, err) require.Equal(t, base.Announce, req.Method) @@ -392,7 +388,7 @@ func TestClientPublishPauseSerial(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - err = req.Read(bconn.Reader) + req, err = readRequest(bconn.Reader) require.NoError(t, err) require.Equal(t, base.Setup, req.Method) @@ -425,7 +421,7 @@ func TestClientPublishPauseSerial(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - err = req.Read(bconn.Reader) + req, err = readRequest(bconn.Reader) require.NoError(t, err) require.Equal(t, base.Record, req.Method) @@ -434,8 +430,7 @@ func TestClientPublishPauseSerial(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - buf := make([]byte, 2048) - err = req.ReadIgnoreFrames(bconn.Reader, buf) + req, err = readRequestIgnoreFrames(bconn.Reader) require.NoError(t, err) require.Equal(t, base.Pause, req.Method) @@ -444,7 +439,7 @@ func TestClientPublishPauseSerial(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - err = req.Read(bconn.Reader) + req, err = readRequest(bconn.Reader) require.NoError(t, err) require.Equal(t, base.Record, req.Method) @@ -453,8 +448,7 @@ func TestClientPublishPauseSerial(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - buf = make([]byte, 2048) - err = req.ReadIgnoreFrames(bconn.Reader, buf) + req, err = readRequestIgnoreFrames(bconn.Reader) require.NoError(t, err) require.Equal(t, base.Teardown, req.Method) @@ -524,8 +518,7 @@ func TestClientPublishPauseParallel(t *testing.T) { defer conn.Close() bconn := bufio.NewReadWriter(bufio.NewReader(conn), bufio.NewWriter(conn)) - var req base.Request - err = req.Read(bconn.Reader) + req, err := readRequest(bconn.Reader) require.NoError(t, err) require.Equal(t, base.Options, req.Method) @@ -542,7 +535,7 @@ func TestClientPublishPauseParallel(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - err = req.Read(bconn.Reader) + req, err = readRequest(bconn.Reader) require.NoError(t, err) require.Equal(t, base.Announce, req.Method) @@ -551,7 +544,7 @@ func TestClientPublishPauseParallel(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - err = req.Read(bconn.Reader) + req, err = readRequest(bconn.Reader) require.NoError(t, err) require.Equal(t, base.Setup, req.Method) @@ -584,7 +577,7 @@ func TestClientPublishPauseParallel(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - err = req.Read(bconn.Reader) + req, err = readRequest(bconn.Reader) require.NoError(t, err) require.Equal(t, base.Record, req.Method) @@ -593,8 +586,7 @@ func TestClientPublishPauseParallel(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - buf := make([]byte, 2048) - err = req.ReadIgnoreFrames(bconn.Reader, buf) + req, err = readRequestIgnoreFrames(bconn.Reader) require.NoError(t, err) require.Equal(t, base.Pause, req.Method) @@ -664,8 +656,7 @@ func TestClientPublishAutomaticProtocol(t *testing.T) { defer conn.Close() bconn := bufio.NewReadWriter(bufio.NewReader(conn), bufio.NewWriter(conn)) - var req base.Request - err = req.Read(bconn.Reader) + req, err := readRequest(bconn.Reader) require.NoError(t, err) require.Equal(t, base.Options, req.Method) require.Equal(t, base.MustParseURL("rtsp://localhost:8554/teststream"), req.URL) @@ -682,7 +673,7 @@ func TestClientPublishAutomaticProtocol(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - err = req.Read(bconn.Reader) + req, err = readRequest(bconn.Reader) require.NoError(t, err) require.Equal(t, base.Announce, req.Method) require.Equal(t, base.MustParseURL("rtsp://localhost:8554/teststream"), req.URL) @@ -692,7 +683,7 @@ func TestClientPublishAutomaticProtocol(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - err = req.Read(bconn.Reader) + req, err = readRequest(bconn.Reader) require.NoError(t, err) require.Equal(t, base.Setup, req.Method) @@ -701,7 +692,7 @@ func TestClientPublishAutomaticProtocol(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - err = req.Read(bconn.Reader) + req, err = readRequest(bconn.Reader) require.NoError(t, err) require.Equal(t, base.Setup, req.Method) @@ -727,7 +718,7 @@ func TestClientPublishAutomaticProtocol(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - err = req.Read(bconn.Reader) + req, err = readRequest(bconn.Reader) require.NoError(t, err) require.Equal(t, base.Record, req.Method) require.Equal(t, base.MustParseURL("rtsp://localhost:8554/teststream"), req.URL) @@ -744,7 +735,7 @@ func TestClientPublishAutomaticProtocol(t *testing.T) { require.Equal(t, StreamTypeRTP, f.StreamType) require.Equal(t, []byte{0x01, 0x02, 0x03, 0x04}, f.Payload) - err = req.Read(bconn.Reader) + req, err = readRequest(bconn.Reader) require.NoError(t, err) require.Equal(t, base.Teardown, req.Method) @@ -782,8 +773,7 @@ func TestClientPublishRTCPReport(t *testing.T) { defer conn.Close() bconn := bufio.NewReadWriter(bufio.NewReader(conn), bufio.NewWriter(conn)) - var req base.Request - err = req.Read(bconn.Reader) + req, err := readRequest(bconn.Reader) require.NoError(t, err) require.Equal(t, base.Options, req.Method) @@ -799,7 +789,7 @@ func TestClientPublishRTCPReport(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - err = req.Read(bconn.Reader) + req, err = readRequest(bconn.Reader) require.NoError(t, err) require.Equal(t, base.Announce, req.Method) @@ -808,7 +798,7 @@ func TestClientPublishRTCPReport(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - err = req.Read(bconn.Reader) + req, err = readRequest(bconn.Reader) require.NoError(t, err) require.Equal(t, base.Setup, req.Method) @@ -833,7 +823,7 @@ func TestClientPublishRTCPReport(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - err = req.Read(bconn.Reader) + req, err = readRequest(bconn.Reader) require.NoError(t, err) require.Equal(t, base.Record, req.Method) @@ -880,7 +870,7 @@ func TestClientPublishRTCPReport(t *testing.T) { require.NoError(t, err) require.Equal(t, StreamTypeRTP, f.StreamType) - err = req.Read(bconn.Reader) + req, err = readRequest(bconn.Reader) require.NoError(t, err) require.Equal(t, base.Teardown, req.Method) diff --git a/client_read_test.go b/client_read_test.go index 28dc4832..ad657370 100644 --- a/client_read_test.go +++ b/client_read_test.go @@ -44,8 +44,7 @@ func TestClientReadTracks(t *testing.T) { defer conn.Close() bconn := bufio.NewReadWriter(bufio.NewReader(conn), bufio.NewWriter(conn)) - var req base.Request - err = req.Read(bconn.Reader) + req, err := readRequest(bconn.Reader) require.NoError(t, err) require.Equal(t, base.Options, req.Method) @@ -61,7 +60,7 @@ func TestClientReadTracks(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - err = req.Read(bconn.Reader) + req, err = readRequest(bconn.Reader) require.NoError(t, err) require.Equal(t, base.Describe, req.Method) require.Equal(t, base.MustParseURL("rtsp://localhost:8554/teststream"), req.URL) @@ -77,7 +76,7 @@ func TestClientReadTracks(t *testing.T) { require.NoError(t, err) for i := 0; i < 3; i++ { - err = req.Read(bconn.Reader) + req, err := readRequest(bconn.Reader) require.NoError(t, err) require.Equal(t, base.Setup, req.Method) require.Equal(t, base.MustParseURL(fmt.Sprintf("rtsp://localhost:8554/teststream/trackID=%d", i)), req.URL) @@ -105,7 +104,7 @@ func TestClientReadTracks(t *testing.T) { require.NoError(t, err) } - err = req.Read(bconn.Reader) + req, err = readRequest(bconn.Reader) require.NoError(t, err) require.Equal(t, base.Play, req.Method) require.Equal(t, base.MustParseURL("rtsp://localhost:8554/teststream/"), req.URL) @@ -115,7 +114,7 @@ func TestClientReadTracks(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - err = req.Read(bconn.Reader) + req, err = readRequest(bconn.Reader) require.NoError(t, err) require.Equal(t, base.Teardown, req.Method) require.Equal(t, base.MustParseURL("rtsp://localhost:8554/teststream/"), req.URL) @@ -216,8 +215,7 @@ func TestClientRead(t *testing.T) { defer conn.Close() bconn := bufio.NewReadWriter(bufio.NewReader(conn), bufio.NewWriter(conn)) - var req base.Request - err = req.Read(bconn.Reader) + req, err := readRequest(bconn.Reader) require.NoError(t, err) require.Equal(t, base.Options, req.Method) require.Equal(t, base.MustParseURL(scheme+"://localhost:8554/teststream"), req.URL) @@ -234,7 +232,7 @@ func TestClientRead(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - err = req.Read(bconn.Reader) + req, err = readRequest(bconn.Reader) require.NoError(t, err) require.Equal(t, base.Describe, req.Method) require.Equal(t, base.MustParseURL(scheme+"://localhost:8554/teststream"), req.URL) @@ -252,7 +250,7 @@ func TestClientRead(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - err = req.Read(bconn.Reader) + req, err = readRequest(bconn.Reader) require.NoError(t, err) require.Equal(t, base.Setup, req.Method) require.Equal(t, base.MustParseURL(scheme+"://localhost:8554/teststream/trackID=0"), req.URL) @@ -297,7 +295,7 @@ func TestClientRead(t *testing.T) { defer l2.Close() } - err = req.Read(bconn.Reader) + req, err = readRequest(bconn.Reader) require.NoError(t, err) require.Equal(t, base.Play, req.Method) require.Equal(t, base.MustParseURL(scheme+"://localhost:8554/teststream/"), req.URL) @@ -346,7 +344,7 @@ func TestClientRead(t *testing.T) { close(frameRecv) - err = req.Read(bconn.Reader) + req, err = readRequest(bconn.Reader) require.NoError(t, err) require.Equal(t, base.Teardown, req.Method) require.Equal(t, base.MustParseURL(scheme+"://localhost:8554/teststream/"), req.URL) @@ -402,8 +400,7 @@ func TestClientReadNoContentBase(t *testing.T) { defer conn.Close() bconn := bufio.NewReadWriter(bufio.NewReader(conn), bufio.NewWriter(conn)) - var req base.Request - err = req.Read(bconn.Reader) + req, err := readRequest(bconn.Reader) require.NoError(t, err) require.Equal(t, base.Options, req.Method) @@ -419,7 +416,7 @@ func TestClientReadNoContentBase(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - err = req.Read(bconn.Reader) + req, err = readRequest(bconn.Reader) require.NoError(t, err) require.Equal(t, base.Describe, req.Method) require.Equal(t, base.MustParseURL("rtsp://localhost:8554/teststream"), req.URL) @@ -436,7 +433,7 @@ func TestClientReadNoContentBase(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - err = req.Read(bconn.Reader) + req, err = readRequest(bconn.Reader) require.NoError(t, err) require.Equal(t, base.Setup, req.Method) require.Equal(t, base.MustParseURL("rtsp://localhost:8554/teststream/trackID=0"), req.URL) @@ -463,7 +460,7 @@ func TestClientReadNoContentBase(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - err = req.Read(bconn.Reader) + req, err = readRequest(bconn.Reader) require.NoError(t, err) require.Equal(t, base.Play, req.Method) require.Equal(t, base.MustParseURL("rtsp://localhost:8554/teststream"), req.URL) @@ -473,7 +470,7 @@ func TestClientReadNoContentBase(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - err = req.Read(bconn.Reader) + req, err = readRequest(bconn.Reader) require.NoError(t, err) require.Equal(t, base.Teardown, req.Method) require.Equal(t, base.MustParseURL("rtsp://localhost:8554/teststream"), req.URL) @@ -509,8 +506,7 @@ func TestClientReadAnyPort(t *testing.T) { defer conn.Close() bconn := bufio.NewReadWriter(bufio.NewReader(conn), bufio.NewWriter(conn)) - var req base.Request - err = req.Read(bconn.Reader) + req, err := readRequest(bconn.Reader) require.NoError(t, err) require.Equal(t, base.Options, req.Method) @@ -526,7 +522,7 @@ func TestClientReadAnyPort(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - err = req.Read(bconn.Reader) + req, err = readRequest(bconn.Reader) require.NoError(t, err) require.Equal(t, base.Describe, req.Method) @@ -543,7 +539,7 @@ func TestClientReadAnyPort(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - err = req.Read(bconn.Reader) + req, err = readRequest(bconn.Reader) require.NoError(t, err) require.Equal(t, base.Setup, req.Method) @@ -572,7 +568,7 @@ func TestClientReadAnyPort(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - err = req.Read(bconn.Reader) + req, err = readRequest(bconn.Reader) require.NoError(t, err) require.Equal(t, base.Play, req.Method) @@ -628,8 +624,7 @@ func TestClientReadAutomaticProtocol(t *testing.T) { defer conn.Close() bconn := bufio.NewReadWriter(bufio.NewReader(conn), bufio.NewWriter(conn)) - var req base.Request - err = req.Read(bconn.Reader) + req, err := readRequest(bconn.Reader) require.NoError(t, err) require.Equal(t, base.Options, req.Method) @@ -645,7 +640,7 @@ func TestClientReadAutomaticProtocol(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - err = req.Read(bconn.Reader) + req, err = readRequest(bconn.Reader) require.NoError(t, err) require.Equal(t, base.Describe, req.Method) @@ -662,7 +657,7 @@ func TestClientReadAutomaticProtocol(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - err = req.Read(bconn.Reader) + req, err = readRequest(bconn.Reader) require.NoError(t, err) require.Equal(t, base.Setup, req.Method) @@ -671,7 +666,7 @@ func TestClientReadAutomaticProtocol(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - err = req.Read(bconn.Reader) + req, err = readRequest(bconn.Reader) require.NoError(t, err) require.Equal(t, base.Setup, req.Method) @@ -695,7 +690,7 @@ func TestClientReadAutomaticProtocol(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - err = req.Read(bconn.Reader) + req, err = readRequest(bconn.Reader) require.NoError(t, err) require.Equal(t, base.Play, req.Method) @@ -739,8 +734,7 @@ func TestClientReadAutomaticProtocol(t *testing.T) { require.NoError(t, err) bconn := bufio.NewReadWriter(bufio.NewReader(conn), bufio.NewWriter(conn)) - var req base.Request - err = req.Read(bconn.Reader) + req, err := readRequest(bconn.Reader) require.NoError(t, err) require.Equal(t, base.Options, req.Method) @@ -756,7 +750,7 @@ func TestClientReadAutomaticProtocol(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - err = req.Read(bconn.Reader) + req, err = readRequest(bconn.Reader) require.NoError(t, err) require.Equal(t, base.Describe, req.Method) @@ -773,7 +767,7 @@ func TestClientReadAutomaticProtocol(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - err = req.Read(bconn.Reader) + req, err = readRequest(bconn.Reader) require.NoError(t, err) require.Equal(t, base.Setup, req.Method) require.Equal(t, base.MustParseURL("rtsp://localhost:8554/teststream/trackID=0"), req.URL) @@ -800,7 +794,7 @@ func TestClientReadAutomaticProtocol(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - err = req.Read(bconn.Reader) + req, err = readRequest(bconn.Reader) require.NoError(t, err) require.Equal(t, base.Play, req.Method) @@ -809,7 +803,7 @@ func TestClientReadAutomaticProtocol(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - err = req.Read(bconn.Reader) + req, err = readRequest(bconn.Reader) require.NoError(t, err) require.Equal(t, base.Teardown, req.Method) @@ -824,7 +818,7 @@ func TestClientReadAutomaticProtocol(t *testing.T) { require.NoError(t, err) bconn = bufio.NewReadWriter(bufio.NewReader(conn), bufio.NewWriter(conn)) - err = req.Read(bconn.Reader) + req, err = readRequest(bconn.Reader) require.NoError(t, err) require.Equal(t, base.Setup, req.Method) require.Equal(t, base.MustParseURL("rtsp://localhost:8554/teststream/trackID=0"), req.URL) @@ -850,7 +844,7 @@ func TestClientReadAutomaticProtocol(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - err = req.Read(bconn.Reader) + req, err = readRequest(bconn.Reader) require.NoError(t, err) require.Equal(t, base.Play, req.Method) @@ -865,7 +859,7 @@ func TestClientReadAutomaticProtocol(t *testing.T) { Payload: []byte("\x00\x00\x00\x00"), }.Write(bconn.Writer) - err = req.Read(bconn.Reader) + req, err = readRequest(bconn.Reader) require.NoError(t, err) require.Equal(t, base.Teardown, req.Method) @@ -909,8 +903,7 @@ func TestClientReadRedirect(t *testing.T) { require.NoError(t, err) bconn := bufio.NewReadWriter(bufio.NewReader(conn), bufio.NewWriter(conn)) - var req base.Request - err = req.Read(bconn.Reader) + req, err := readRequest(bconn.Reader) require.NoError(t, err) require.Equal(t, base.Options, req.Method) @@ -926,7 +919,7 @@ func TestClientReadRedirect(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - err = req.Read(bconn.Reader) + req, err = readRequest(bconn.Reader) require.NoError(t, err) require.Equal(t, base.Describe, req.Method) @@ -945,7 +938,7 @@ func TestClientReadRedirect(t *testing.T) { defer conn.Close() bconn = bufio.NewReadWriter(bufio.NewReader(conn), bufio.NewWriter(conn)) - err = req.Read(bconn.Reader) + req, err = readRequest(bconn.Reader) require.NoError(t, err) require.Equal(t, base.Options, req.Method) @@ -961,7 +954,7 @@ func TestClientReadRedirect(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - err = req.Read(bconn.Reader) + req, err = readRequest(bconn.Reader) require.NoError(t, err) require.Equal(t, base.Describe, req.Method) @@ -978,7 +971,7 @@ func TestClientReadRedirect(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - err = req.Read(bconn.Reader) + req, err = readRequest(bconn.Reader) require.NoError(t, err) require.Equal(t, base.Setup, req.Method) @@ -1002,7 +995,7 @@ func TestClientReadRedirect(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - err = req.Read(bconn.Reader) + req, err = readRequest(bconn.Reader) require.NoError(t, err) require.Equal(t, base.Play, req.Method) @@ -1099,8 +1092,7 @@ func TestClientReadPause(t *testing.T) { defer conn.Close() bconn := bufio.NewReadWriter(bufio.NewReader(conn), bufio.NewWriter(conn)) - var req base.Request - err = req.Read(bconn.Reader) + req, err := readRequest(bconn.Reader) require.NoError(t, err) require.Equal(t, base.Options, req.Method) @@ -1116,7 +1108,7 @@ func TestClientReadPause(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - err = req.Read(bconn.Reader) + req, err = readRequest(bconn.Reader) require.NoError(t, err) require.Equal(t, base.Describe, req.Method) @@ -1133,7 +1125,7 @@ func TestClientReadPause(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - err = req.Read(bconn.Reader) + req, err = readRequest(bconn.Reader) require.NoError(t, err) require.Equal(t, base.Setup, req.Method) @@ -1166,7 +1158,7 @@ func TestClientReadPause(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - err = req.Read(bconn.Reader) + req, err = readRequest(bconn.Reader) require.NoError(t, err) require.Equal(t, base.Play, req.Method) @@ -1177,7 +1169,7 @@ func TestClientReadPause(t *testing.T) { writerTerminate, writerDone := writeFrames(&inTH, bconn) - err = req.Read(bconn.Reader) + req, err = readRequest(bconn.Reader) require.NoError(t, err) require.Equal(t, base.Pause, req.Method) @@ -1189,7 +1181,7 @@ func TestClientReadPause(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - err = req.Read(bconn.Reader) + req, err = readRequest(bconn.Reader) require.NoError(t, err) require.Equal(t, base.Play, req.Method) @@ -1200,7 +1192,7 @@ func TestClientReadPause(t *testing.T) { writerTerminate, writerDone = writeFrames(&inTH, bconn) - err = req.Read(bconn.Reader) + req, err = readRequest(bconn.Reader) require.NoError(t, err) require.Equal(t, base.Teardown, req.Method) @@ -1273,8 +1265,7 @@ func TestClientReadRTCPReport(t *testing.T) { defer conn.Close() bconn := bufio.NewReadWriter(bufio.NewReader(conn), bufio.NewWriter(conn)) - var req base.Request - err = req.Read(bconn.Reader) + req, err := readRequest(bconn.Reader) require.NoError(t, err) require.Equal(t, base.Options, req.Method) @@ -1290,7 +1281,7 @@ func TestClientReadRTCPReport(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - err = req.Read(bconn.Reader) + req, err = readRequest(bconn.Reader) require.NoError(t, err) require.Equal(t, base.Describe, req.Method) @@ -1307,7 +1298,7 @@ func TestClientReadRTCPReport(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - err = req.Read(bconn.Reader) + req, err = readRequest(bconn.Reader) require.NoError(t, err) require.Equal(t, base.Setup, req.Method) @@ -1331,7 +1322,7 @@ func TestClientReadRTCPReport(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - err = req.Read(bconn.Reader) + req, err = readRequest(bconn.Reader) require.NoError(t, err) require.Equal(t, base.Play, req.Method) @@ -1446,8 +1437,7 @@ func TestClientReadErrorTimeout(t *testing.T) { defer conn.Close() bconn := bufio.NewReadWriter(bufio.NewReader(conn), bufio.NewWriter(conn)) - var req base.Request - err = req.Read(bconn.Reader) + req, err := readRequest(bconn.Reader) require.NoError(t, err) require.Equal(t, base.Options, req.Method) @@ -1463,7 +1453,7 @@ func TestClientReadErrorTimeout(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - err = req.Read(bconn.Reader) + req, err = readRequest(bconn.Reader) require.NoError(t, err) require.Equal(t, base.Describe, req.Method) @@ -1480,7 +1470,7 @@ func TestClientReadErrorTimeout(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - err = req.Read(bconn.Reader) + req, err = readRequest(bconn.Reader) require.NoError(t, err) require.Equal(t, base.Setup, req.Method) @@ -1519,7 +1509,7 @@ func TestClientReadErrorTimeout(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - err = req.Read(bconn.Reader) + req, err = readRequest(bconn.Reader) require.NoError(t, err) require.Equal(t, base.Play, req.Method) @@ -1542,7 +1532,7 @@ func TestClientReadErrorTimeout(t *testing.T) { }) } - err = req.Read(bconn.Reader) + req, err = readRequest(bconn.Reader) require.NoError(t, err) require.Equal(t, base.Teardown, req.Method) @@ -1602,8 +1592,7 @@ func TestClientReadIgnoreTCPInvalidTrack(t *testing.T) { defer conn.Close() bconn := bufio.NewReadWriter(bufio.NewReader(conn), bufio.NewWriter(conn)) - var req base.Request - err = req.Read(bconn.Reader) + req, err := readRequest(bconn.Reader) require.NoError(t, err) require.Equal(t, base.Options, req.Method) @@ -1619,7 +1608,7 @@ func TestClientReadIgnoreTCPInvalidTrack(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - err = req.Read(bconn.Reader) + req, err = readRequest(bconn.Reader) require.NoError(t, err) require.Equal(t, base.Describe, req.Method) @@ -1636,7 +1625,7 @@ func TestClientReadIgnoreTCPInvalidTrack(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - err = req.Read(bconn.Reader) + req, err = readRequest(bconn.Reader) require.NoError(t, err) require.Equal(t, base.Setup, req.Method) @@ -1661,7 +1650,7 @@ func TestClientReadIgnoreTCPInvalidTrack(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - err = req.Read(bconn.Reader) + req, err = readRequest(bconn.Reader) require.NoError(t, err) require.Equal(t, base.Play, req.Method) @@ -1684,7 +1673,7 @@ func TestClientReadIgnoreTCPInvalidTrack(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - err = req.Read(bconn.Reader) + req, err = readRequest(bconn.Reader) require.NoError(t, err) require.Equal(t, base.Teardown, req.Method) diff --git a/client_test.go b/client_test.go index 59c6cf07..f96292ae 100644 --- a/client_test.go +++ b/client_test.go @@ -12,6 +12,19 @@ import ( "github.com/aler9/gortsplib/pkg/base" ) +func readRequest(br *bufio.Reader) (*base.Request, error) { + var req base.Request + err := req.Read(br) + return &req, err +} + +func readRequestIgnoreFrames(br *bufio.Reader) (*base.Request, error) { + buf := make([]byte, 2048) + var req base.Request + err := req.ReadIgnoreFrames(br, buf) + return &req, err +} + func TestClientSession(t *testing.T) { l, err := net.Listen("tcp", "localhost:8554") require.NoError(t, err) @@ -27,8 +40,7 @@ func TestClientSession(t *testing.T) { bconn := bufio.NewReadWriter(bufio.NewReader(conn), bufio.NewWriter(conn)) defer conn.Close() - var req base.Request - err = req.Read(bconn.Reader) + req, err := readRequest(bconn.Reader) require.NoError(t, err) require.Equal(t, base.Options, req.Method) @@ -43,7 +55,7 @@ func TestClientSession(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - err = req.Read(bconn.Reader) + req, err = readRequest(bconn.Reader) require.NoError(t, err) require.Equal(t, base.Describe, req.Method) @@ -92,8 +104,7 @@ func TestClientAuth(t *testing.T) { bconn := bufio.NewReadWriter(bufio.NewReader(conn), bufio.NewWriter(conn)) defer conn.Close() - var req base.Request - err = req.Read(bconn.Reader) + req, err := readRequest(bconn.Reader) require.NoError(t, err) require.Equal(t, base.Options, req.Method) @@ -107,7 +118,7 @@ func TestClientAuth(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - err = req.Read(bconn.Reader) + req, err = readRequest(bconn.Reader) require.NoError(t, err) require.Equal(t, base.Describe, req.Method) @@ -121,7 +132,7 @@ func TestClientAuth(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - err = req.Read(bconn.Reader) + req, err = readRequest(bconn.Reader) require.NoError(t, err) require.Equal(t, base.Describe, req.Method) diff --git a/server_publish_test.go b/server_publish_test.go index ef6cfcba..5c423558 100644 --- a/server_publish_test.go +++ b/server_publish_test.go @@ -135,8 +135,7 @@ func TestServerPublishSetupPath(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - var res base.Response - err = res.Read(bconn.Reader) + res, err := readResponse(bconn.Reader) require.NoError(t, err) require.Equal(t, base.StatusOK, res.StatusCode) @@ -166,7 +165,7 @@ func TestServerPublishSetupPath(t *testing.T) { <-setupDone - err = res.Read(bconn.Reader) + res, err = readResponse(bconn.Reader) require.NoError(t, err) require.Equal(t, base.StatusOK, res.StatusCode) }) @@ -225,8 +224,7 @@ func TestServerPublishErrorSetupDifferentPaths(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - var res base.Response - err = res.Read(bconn.Reader) + res, err := readResponse(bconn.Reader) require.NoError(t, err) require.Equal(t, base.StatusOK, res.StatusCode) @@ -254,7 +252,7 @@ func TestServerPublishErrorSetupDifferentPaths(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - err = res.Read(bconn.Reader) + res, err = readResponse(bconn.Reader) require.NoError(t, err) require.Equal(t, base.StatusBadRequest, res.StatusCode) @@ -314,8 +312,7 @@ func TestServerPublishErrorSetupTrackTwice(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - var res base.Response - err = res.Read(bconn.Reader) + res, err := readResponse(bconn.Reader) require.NoError(t, err) require.Equal(t, base.StatusOK, res.StatusCode) @@ -343,7 +340,7 @@ func TestServerPublishErrorSetupTrackTwice(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - err = res.Read(bconn.Reader) + res, err = readResponse(bconn.Reader) require.NoError(t, err) require.Equal(t, base.StatusOK, res.StatusCode) @@ -358,7 +355,7 @@ func TestServerPublishErrorSetupTrackTwice(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - err = res.Read(bconn.Reader) + res, err = readResponse(bconn.Reader) require.NoError(t, err) require.Equal(t, base.StatusBadRequest, res.StatusCode) @@ -426,8 +423,7 @@ func TestServerPublishErrorRecordPartialTracks(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - var res base.Response - err = res.Read(bconn.Reader) + res, err := readResponse(bconn.Reader) require.NoError(t, err) require.Equal(t, base.StatusOK, res.StatusCode) @@ -455,7 +451,7 @@ func TestServerPublishErrorRecordPartialTracks(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - err = res.Read(bconn.Reader) + res, err = readResponse(bconn.Reader) require.NoError(t, err) require.Equal(t, base.StatusOK, res.StatusCode) @@ -469,7 +465,7 @@ func TestServerPublishErrorRecordPartialTracks(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - err = res.Read(bconn.Reader) + res, err = readResponse(bconn.Reader) require.NoError(t, err) require.Equal(t, base.StatusBadRequest, res.StatusCode) @@ -586,8 +582,7 @@ func TestServerPublish(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - var res base.Response - err = res.Read(bconn.Reader) + res, err := readResponse(bconn.Reader) require.NoError(t, err) require.Equal(t, base.StatusOK, res.StatusCode) @@ -623,7 +618,7 @@ func TestServerPublish(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - err = res.Read(bconn.Reader) + res, err = readResponse(bconn.Reader) require.NoError(t, err) require.Equal(t, base.StatusOK, res.StatusCode) @@ -653,7 +648,7 @@ func TestServerPublish(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - err = res.Read(bconn.Reader) + res, err = readResponse(bconn.Reader) require.NoError(t, err) require.Equal(t, base.StatusOK, res.StatusCode) @@ -720,7 +715,7 @@ func TestServerPublish(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - err = res.Read(bconn.Reader) + res, err = readResponse(bconn.Reader) require.NoError(t, err) require.Equal(t, base.StatusOK, res.StatusCode) @@ -789,8 +784,7 @@ func TestServerPublishErrorWrongProtocol(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - var res base.Response - err = res.Read(bconn.Reader) + res, err := readResponse(bconn.Reader) require.NoError(t, err) require.Equal(t, base.StatusOK, res.StatusCode) @@ -818,7 +812,7 @@ func TestServerPublishErrorWrongProtocol(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - err = res.Read(bconn.Reader) + res, err = readResponse(bconn.Reader) require.NoError(t, err) require.Equal(t, base.StatusOK, res.StatusCode) @@ -836,7 +830,7 @@ func TestServerPublishErrorWrongProtocol(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - err = res.Read(bconn.Reader) + res, err = readResponse(bconn.Reader) require.NoError(t, err) require.Equal(t, base.StatusOK, res.StatusCode) @@ -901,8 +895,7 @@ func TestServerPublishRTCPReport(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - var res base.Response - err = res.Read(bconn.Reader) + res, err := readResponse(bconn.Reader) require.NoError(t, err) require.Equal(t, base.StatusOK, res.StatusCode) @@ -930,7 +923,7 @@ func TestServerPublishRTCPReport(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - err = res.Read(bconn.Reader) + res, err = readResponse(bconn.Reader) require.NoError(t, err) require.Equal(t, base.StatusOK, res.StatusCode) @@ -948,7 +941,7 @@ func TestServerPublishRTCPReport(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - err = res.Read(bconn.Reader) + res, err = readResponse(bconn.Reader) require.NoError(t, err) require.Equal(t, base.StatusOK, res.StatusCode) @@ -1072,8 +1065,7 @@ func TestServerPublishTimeout(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - var res base.Response - err = res.Read(bconn.Reader) + res, err := readResponse(bconn.Reader) require.NoError(t, err) require.Equal(t, base.StatusOK, res.StatusCode) @@ -1107,7 +1099,7 @@ func TestServerPublishTimeout(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - err = res.Read(bconn.Reader) + res, err = readResponse(bconn.Reader) require.NoError(t, err) require.Equal(t, base.StatusOK, res.StatusCode) @@ -1125,7 +1117,7 @@ func TestServerPublishTimeout(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - err = res.Read(bconn.Reader) + res, err = readResponse(bconn.Reader) require.NoError(t, err) require.Equal(t, base.StatusOK, res.StatusCode) @@ -1209,8 +1201,7 @@ func TestServerPublishWithoutTeardown(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - var res base.Response - err = res.Read(bconn.Reader) + res, err := readResponse(bconn.Reader) require.NoError(t, err) require.Equal(t, base.StatusOK, res.StatusCode) @@ -1244,7 +1235,7 @@ func TestServerPublishWithoutTeardown(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - err = res.Read(bconn.Reader) + res, err = readResponse(bconn.Reader) require.NoError(t, err) require.Equal(t, base.StatusOK, res.StatusCode) @@ -1262,7 +1253,7 @@ func TestServerPublishWithoutTeardown(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - err = res.Read(bconn.Reader) + res, err = readResponse(bconn.Reader) require.NoError(t, err) require.Equal(t, base.StatusOK, res.StatusCode) diff --git a/server_read_test.go b/server_read_test.go index e2946fb5..6d54fe49 100644 --- a/server_read_test.go +++ b/server_read_test.go @@ -108,8 +108,7 @@ func TestServerReadSetupPath(t *testing.T) { <-setupDone - var res base.Response - err = res.Read(bconn.Reader) + res, err := readResponse(bconn.Reader) require.NoError(t, err) require.Equal(t, base.StatusOK, res.StatusCode) }) @@ -165,8 +164,7 @@ func TestServerReadErrorSetupDifferentPaths(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - var res base.Response - err = res.Read(bconn.Reader) + res, err := readResponse(bconn.Reader) require.NoError(t, err) require.Equal(t, base.StatusOK, res.StatusCode) @@ -183,7 +181,7 @@ func TestServerReadErrorSetupDifferentPaths(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - err = res.Read(bconn.Reader) + res, err = readResponse(bconn.Reader) require.NoError(t, err) require.Equal(t, base.StatusBadRequest, res.StatusCode) @@ -239,8 +237,7 @@ func TestServerReadErrorSetupTrackTwice(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - var res base.Response - err = res.Read(bconn.Reader) + res, err := readResponse(bconn.Reader) require.NoError(t, err) require.Equal(t, base.StatusOK, res.StatusCode) @@ -257,7 +254,7 @@ func TestServerReadErrorSetupTrackTwice(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - err = res.Read(bconn.Reader) + res, err = readResponse(bconn.Reader) require.NoError(t, err) require.Equal(t, base.StatusBadRequest, res.StatusCode) @@ -375,8 +372,7 @@ func TestServerRead(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - var res base.Response - err = res.Read(bconn.Reader) + res, err := readResponse(bconn.Reader) require.NoError(t, err) require.Equal(t, base.StatusOK, res.StatusCode) @@ -408,7 +404,7 @@ func TestServerRead(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - err = res.Read(bconn.Reader) + res, err = readResponse(bconn.Reader) require.NoError(t, err) require.Equal(t, base.StatusOK, res.StatusCode) @@ -470,7 +466,7 @@ func TestServerRead(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - err = res.Read(bconn.Reader) + res, err = readResponse(bconn.Reader) require.NoError(t, err) require.Equal(t, base.StatusOK, res.StatusCode) @@ -485,7 +481,7 @@ func TestServerRead(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - err = res.Read(bconn.Reader) + res, err = readResponse(bconn.Reader) require.NoError(t, err) require.Equal(t, base.StatusOK, res.StatusCode) } @@ -500,7 +496,7 @@ func TestServerRead(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - err = res.Read(bconn.Reader) + res, err = readResponse(bconn.Reader) require.NoError(t, err) require.Equal(t, base.StatusOK, res.StatusCode) @@ -585,8 +581,7 @@ func TestServerReadTCPResponseBeforeFrames(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - var res base.Response - err = res.Read(bconn.Reader) + res, err := readResponse(bconn.Reader) require.NoError(t, err) require.Equal(t, base.StatusOK, res.StatusCode) @@ -600,7 +595,7 @@ func TestServerReadTCPResponseBeforeFrames(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - err = res.Read(bconn.Reader) + res, err = readResponse(bconn.Reader) require.NoError(t, err) require.Equal(t, base.StatusOK, res.StatusCode) @@ -658,8 +653,7 @@ func TestServerReadPlayPlay(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - var res base.Response - err = res.Read(bconn.Reader) + res, err := readResponse(bconn.Reader) require.NoError(t, err) require.Equal(t, base.StatusOK, res.StatusCode) @@ -673,7 +667,7 @@ func TestServerReadPlayPlay(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - err = res.Read(bconn.Reader) + res, err = readResponse(bconn.Reader) require.NoError(t, err) require.Equal(t, base.StatusOK, res.StatusCode) @@ -687,7 +681,7 @@ func TestServerReadPlayPlay(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - err = res.Read(bconn.Reader) + res, err = readResponse(bconn.Reader) require.NoError(t, err) require.Equal(t, base.StatusOK, res.StatusCode) } @@ -770,8 +764,7 @@ func TestServerReadPlayPausePlay(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - var res base.Response - err = res.Read(bconn.Reader) + res, err := readResponse(bconn.Reader) require.NoError(t, err) require.Equal(t, base.StatusOK, res.StatusCode) @@ -785,7 +778,7 @@ func TestServerReadPlayPausePlay(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - err = res.Read(bconn.Reader) + res, err = readResponse(bconn.Reader) require.NoError(t, err) require.Equal(t, base.StatusOK, res.StatusCode) @@ -799,7 +792,7 @@ func TestServerReadPlayPausePlay(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - err = res.Read(bconn.Reader) + res, err = readResponse(bconn.Reader) require.NoError(t, err) require.Equal(t, base.StatusOK, res.StatusCode) @@ -813,7 +806,7 @@ func TestServerReadPlayPausePlay(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - err = res.Read(bconn.Reader) + res, err = readResponse(bconn.Reader) require.NoError(t, err) require.Equal(t, base.StatusOK, res.StatusCode) } @@ -892,8 +885,7 @@ func TestServerReadPlayPausePause(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - var res base.Response - err = res.Read(bconn.Reader) + res, err := readResponse(bconn.Reader) require.NoError(t, err) require.Equal(t, base.StatusOK, res.StatusCode) @@ -907,7 +899,7 @@ func TestServerReadPlayPausePause(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - err = res.Read(bconn.Reader) + res, err = readResponse(bconn.Reader) require.NoError(t, err) require.Equal(t, base.StatusOK, res.StatusCode) @@ -921,8 +913,7 @@ func TestServerReadPlayPausePause(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - buf := make([]byte, 2048) - err = res.ReadIgnoreFrames(bconn.Reader, buf) + res, err = readResponseIgnoreFrames(bconn.Reader) require.NoError(t, err) require.Equal(t, base.StatusOK, res.StatusCode) @@ -936,8 +927,7 @@ func TestServerReadPlayPausePause(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - buf = make([]byte, 2048) - err = res.ReadIgnoreFrames(bconn.Reader, buf) + res, err = readResponseIgnoreFrames(bconn.Reader) require.NoError(t, err) require.Equal(t, base.StatusOK, res.StatusCode) } @@ -1011,8 +1001,7 @@ func TestServerReadTimeout(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - var res base.Response - err = res.Read(bconn.Reader) + res, err := readResponse(bconn.Reader) require.NoError(t, err) require.Equal(t, base.StatusOK, res.StatusCode) @@ -1026,7 +1015,7 @@ func TestServerReadTimeout(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - err = res.Read(bconn.Reader) + res, err = readResponse(bconn.Reader) require.NoError(t, err) require.Equal(t, base.StatusOK, res.StatusCode) @@ -1115,8 +1104,7 @@ func TestServerReadWithoutTeardown(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - var res base.Response - err = res.Read(bconn.Reader) + res, err := readResponse(bconn.Reader) require.NoError(t, err) require.Equal(t, base.StatusOK, res.StatusCode) @@ -1130,7 +1118,7 @@ func TestServerReadWithoutTeardown(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - err = res.Read(bconn.Reader) + res, err = readResponse(bconn.Reader) require.NoError(t, err) require.Equal(t, base.StatusOK, res.StatusCode) diff --git a/server_test.go b/server_test.go index 465f8fba..20fe46cd 100644 --- a/server_test.go +++ b/server_test.go @@ -15,6 +15,19 @@ import ( "github.com/aler9/gortsplib/pkg/headers" ) +func readResponse(br *bufio.Reader) (*base.Response, error) { + var res base.Response + err := res.Read(br) + return &res, err +} + +func readResponseIgnoreFrames(br *bufio.Reader) (*base.Response, error) { + buf := make([]byte, 2048) + var res base.Response + err := res.ReadIgnoreFrames(br, buf) + return &res, err +} + type testServerHandler struct { onConnOpen func(*ServerConn) onConnClose func(*ServerConn, error) @@ -472,8 +485,7 @@ func TestServerCSeq(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - var res base.Response - err = res.Read(bconn.Reader) + res, err := readResponse(bconn.Reader) require.NoError(t, err) require.Equal(t, base.StatusOK, res.StatusCode) @@ -507,8 +519,7 @@ func TestServerErrorCSeqMissing(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - var res base.Response - err = res.Read(bconn.Reader) + res, err := readResponse(bconn.Reader) require.NoError(t, err) require.Equal(t, base.StatusBadRequest, res.StatusCode) @@ -541,8 +552,7 @@ func TestServerErrorInvalidMethod(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - var res base.Response - err = res.Read(bconn.Reader) + res, err := readResponse(bconn.Reader) require.NoError(t, err) require.Equal(t, base.StatusBadRequest, res.StatusCode) } @@ -598,8 +608,7 @@ func TestServerErrorTCPTwoConnOneSession(t *testing.T) { }.Write(bconn1.Writer) require.NoError(t, err) - var res base.Response - err = res.Read(bconn1.Reader) + res, err := readResponse(bconn1.Reader) require.NoError(t, err) require.Equal(t, base.StatusOK, res.StatusCode) @@ -613,7 +622,7 @@ func TestServerErrorTCPTwoConnOneSession(t *testing.T) { }.Write(bconn1.Writer) require.NoError(t, err) - err = res.Read(bconn1.Reader) + res, err = readResponse(bconn1.Reader) require.NoError(t, err) require.Equal(t, base.StatusOK, res.StatusCode) @@ -644,7 +653,7 @@ func TestServerErrorTCPTwoConnOneSession(t *testing.T) { }.Write(bconn2.Writer) require.NoError(t, err) - err = res.Read(bconn2.Reader) + res, err = readResponse(bconn2.Reader) require.NoError(t, err) require.Equal(t, base.StatusBadRequest, res.StatusCode) } @@ -700,8 +709,7 @@ func TestServerErrorTCPOneConnTwoSessions(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - var res base.Response - err = res.Read(bconn.Reader) + res, err := readResponse(bconn.Reader) require.NoError(t, err) require.Equal(t, base.StatusOK, res.StatusCode) @@ -715,7 +723,7 @@ func TestServerErrorTCPOneConnTwoSessions(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - err = res.Read(bconn.Reader) + res, err = readResponse(bconn.Reader) require.NoError(t, err) require.Equal(t, base.StatusOK, res.StatusCode) @@ -740,7 +748,7 @@ func TestServerErrorTCPOneConnTwoSessions(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - err = res.Read(bconn.Reader) + res, err = readResponse(bconn.Reader) require.NoError(t, err) require.Equal(t, base.StatusBadRequest, res.StatusCode) } @@ -783,8 +791,7 @@ func TestServerGetSetParameter(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - var res base.Response - err = res.Read(bconn.Reader) + res, err := readResponse(bconn.Reader) require.NoError(t, err) require.Equal(t, base.StatusOK, res.StatusCode) @@ -798,7 +805,7 @@ func TestServerGetSetParameter(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - err = res.Read(bconn.Reader) + res, err = readResponse(bconn.Reader) require.NoError(t, err) require.Equal(t, base.StatusOK, res.StatusCode) @@ -812,7 +819,7 @@ func TestServerGetSetParameter(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - err = res.Read(bconn.Reader) + res, err = readResponse(bconn.Reader) require.NoError(t, err) require.Equal(t, base.StatusOK, res.StatusCode) require.Equal(t, []byte("param1: 123456\r\n"), res.Body) @@ -864,8 +871,7 @@ func TestServerErrorInvalidSession(t *testing.T) { }.Write(bconn.Writer) require.NoError(t, err) - var res base.Response - err = res.Read(bconn.Reader) + res, err := readResponse(bconn.Reader) require.NoError(t, err) require.Equal(t, base.StatusBadRequest, res.StatusCode) })