From d8b2e4b6fcfda9eb1c7f62903a8edef0b26ef646 Mon Sep 17 00:00:00 2001 From: Alessandro Ros Date: Tue, 4 Aug 2026 20:44:17 +0200 Subject: [PATCH] add more black-box tests (#6032) --- internal/staticsources/hls/source_test.go | 7 ++++--- internal/staticsources/mpegts/source_test.go | 17 ++++++++-------- internal/staticsources/rtmp/source_test.go | 5 +++-- internal/staticsources/rtp/source_test.go | 7 ++++--- internal/staticsources/rtsp/source_test.go | 15 +++++++------- internal/staticsources/srt/source_test.go | 9 +++++---- internal/staticsources/webrtc/source_test.go | 21 ++++++++++---------- 7 files changed, 44 insertions(+), 37 deletions(-) diff --git a/internal/staticsources/hls/source_test.go b/internal/staticsources/hls/source_test.go index 22d9876b..f7c9c675 100644 --- a/internal/staticsources/hls/source_test.go +++ b/internal/staticsources/hls/source_test.go @@ -1,4 +1,4 @@ -package hls +package hls_test import ( "context" @@ -13,6 +13,7 @@ import ( "github.com/bluenviron/mediamtx/internal/conf" "github.com/bluenviron/mediamtx/internal/defs" + "github.com/bluenviron/mediamtx/internal/staticsources/hls" "github.com/bluenviron/mediamtx/internal/test" ) @@ -93,7 +94,7 @@ func TestSource(t *testing.T) { p.Initialize() defer p.Close() - so := &Source{ + so := &hls.Source{ Parent: p, } @@ -181,7 +182,7 @@ func TestSourceCookie(t *testing.T) { p.Initialize() defer p.Close() - so := &Source{ + so := &hls.Source{ Parent: p, } diff --git a/internal/staticsources/mpegts/source_test.go b/internal/staticsources/mpegts/source_test.go index b9c43988..804052d1 100644 --- a/internal/staticsources/mpegts/source_test.go +++ b/internal/staticsources/mpegts/source_test.go @@ -1,4 +1,4 @@ -package mpegts +package mpegts_test import ( "bufio" @@ -9,12 +9,13 @@ import ( "testing" "time" - "github.com/bluenviron/mediacommon/v2/pkg/formats/mpegts" + mpegtslib "github.com/bluenviron/mediacommon/v2/pkg/formats/mpegts" tscodecs "github.com/bluenviron/mediacommon/v2/pkg/formats/mpegts/codecs" "github.com/stretchr/testify/require" "github.com/bluenviron/mediamtx/internal/conf" "github.com/bluenviron/mediamtx/internal/defs" + "github.com/bluenviron/mediamtx/internal/staticsources/mpegts" "github.com/bluenviron/mediamtx/internal/test" ) @@ -60,7 +61,7 @@ func TestSourceUDP(t *testing.T) { p.Initialize() defer p.Close() - so := &Source{ + so := &mpegts.Source{ ReadTimeout: conf.Duration(10 * time.Second), Parent: p, } @@ -114,12 +115,12 @@ func TestSourceUDP(t *testing.T) { require.NoError(t, err) defer conn.Close() //nolint:errcheck - track := &mpegts.Track{ + track := &mpegtslib.Track{ Codec: &tscodecs.H264{}, } bw := bufio.NewWriter(conn) - w := &mpegts.Writer{W: bw, Tracks: []*mpegts.Track{track}} + w := &mpegtslib.Writer{W: bw, Tracks: []*mpegtslib.Track{track}} err = w.Initialize() require.NoError(t, err) @@ -165,7 +166,7 @@ func TestSourceUnixSocket(t *testing.T) { p.Initialize() defer p.Close() - so := &Source{ + so := &mpegts.Source{ ReadTimeout: conf.Duration(10 * time.Second), Parent: p, } @@ -193,12 +194,12 @@ func TestSourceUnixSocket(t *testing.T) { conn, err := net.Dial("unix", pa) require.NoError(t, err) - track := &mpegts.Track{ + track := &mpegtslib.Track{ Codec: &tscodecs.H264{}, } bw := bufio.NewWriter(conn) - w := &mpegts.Writer{W: bw, Tracks: []*mpegts.Track{track}} + w := &mpegtslib.Writer{W: bw, Tracks: []*mpegtslib.Track{track}} err = w.Initialize() require.NoError(t, err) diff --git a/internal/staticsources/rtmp/source_test.go b/internal/staticsources/rtmp/source_test.go index d65c97c9..fe339cf1 100644 --- a/internal/staticsources/rtmp/source_test.go +++ b/internal/staticsources/rtmp/source_test.go @@ -1,4 +1,4 @@ -package rtmp +package rtmp_test import ( "context" @@ -13,6 +13,7 @@ import ( "github.com/bluenviron/gortmplib/pkg/codecs" "github.com/bluenviron/mediamtx/internal/conf" "github.com/bluenviron/mediamtx/internal/defs" + "github.com/bluenviron/mediamtx/internal/staticsources/rtmp" "github.com/bluenviron/mediamtx/internal/test" ) @@ -64,7 +65,7 @@ func TestSource(t *testing.T) { p.Initialize() defer p.Close() - so := &Source{ + so := &rtmp.Source{ ReadTimeout: conf.Duration(10 * time.Second), WriteTimeout: conf.Duration(10 * time.Second), Parent: p, diff --git a/internal/staticsources/rtp/source_test.go b/internal/staticsources/rtp/source_test.go index 669feac9..93955eb6 100644 --- a/internal/staticsources/rtp/source_test.go +++ b/internal/staticsources/rtp/source_test.go @@ -1,4 +1,4 @@ -package rtp +package rtp_test import ( "context" @@ -13,6 +13,7 @@ import ( "github.com/bluenviron/mediamtx/internal/conf" "github.com/bluenviron/mediamtx/internal/defs" + "github.com/bluenviron/mediamtx/internal/staticsources/rtp" "github.com/bluenviron/mediamtx/internal/test" ) @@ -58,7 +59,7 @@ func TestSourceUDP(t *testing.T) { p.Initialize() defer p.Close() - so := &Source{ + so := &rtp.Source{ ReadTimeout: conf.Duration(10 * time.Second), Parent: p, } @@ -168,7 +169,7 @@ func TestSourceUnixSocket(t *testing.T) { p.Initialize() defer p.Close() - so := &Source{ + so := &rtp.Source{ ReadTimeout: conf.Duration(10 * time.Second), Parent: p, } diff --git a/internal/staticsources/rtsp/source_test.go b/internal/staticsources/rtsp/source_test.go index e928a012..3109e39d 100644 --- a/internal/staticsources/rtsp/source_test.go +++ b/internal/staticsources/rtsp/source_test.go @@ -1,4 +1,4 @@ -package rtsp +package rtsp_test import ( "context" @@ -16,6 +16,7 @@ import ( "github.com/bluenviron/mediamtx/internal/conf" "github.com/bluenviron/mediamtx/internal/defs" + "github.com/bluenviron/mediamtx/internal/staticsources/rtsp" "github.com/bluenviron/mediamtx/internal/test" ) @@ -170,7 +171,7 @@ func TestSource(t *testing.T) { p.Initialize() defer p.Close() - so := &Source{ + so := &rtsp.Source{ ReadTimeout: conf.Duration(10 * time.Second), WriteTimeout: conf.Duration(10 * time.Second), WriteQueueSize: 2048, @@ -277,7 +278,7 @@ func TestNoPassword(t *testing.T) { p.Initialize() defer p.Close() - so := &Source{ + so := &rtsp.Source{ ReadTimeout: conf.Duration(10 * time.Second), WriteTimeout: conf.Duration(10 * time.Second), WriteQueueSize: 2048, @@ -370,7 +371,7 @@ func TestScale(t *testing.T) { p.Initialize() defer p.Close() - so := &Source{ + so := &rtsp.Source{ ReadTimeout: conf.Duration(10 * time.Second), WriteTimeout: conf.Duration(10 * time.Second), WriteQueueSize: 2048, @@ -484,7 +485,7 @@ func TestRange(t *testing.T) { p.Initialize() defer p.Close() - so := &Source{ + so := &rtsp.Source{ ReadTimeout: conf.Duration(10 * time.Second), WriteTimeout: conf.Duration(10 * time.Second), WriteQueueSize: 2048, @@ -580,7 +581,7 @@ func TestSkipBackChannel(t *testing.T) { p.Initialize() defer p.Close() - so := &Source{ + so := &rtsp.Source{ ReadTimeout: conf.Duration(10 * time.Second), WriteTimeout: conf.Duration(10 * time.Second), WriteQueueSize: 2048, @@ -660,7 +661,7 @@ func TestOnlyBackChannelsError(t *testing.T) { p := &test.StaticSourceParent{} p.Initialize() - so := &Source{ + so := &rtsp.Source{ ReadTimeout: conf.Duration(10 * time.Second), WriteTimeout: conf.Duration(10 * time.Second), WriteQueueSize: 2048, diff --git a/internal/staticsources/srt/source_test.go b/internal/staticsources/srt/source_test.go index d6ce1dd6..aabcdfb0 100644 --- a/internal/staticsources/srt/source_test.go +++ b/internal/staticsources/srt/source_test.go @@ -1,4 +1,4 @@ -package srt +package srt_test import ( "bufio" @@ -8,23 +8,24 @@ import ( "github.com/bluenviron/mediacommon/v2/pkg/formats/mpegts" tscodecs "github.com/bluenviron/mediacommon/v2/pkg/formats/mpegts/codecs" - srt "github.com/datarhei/gosrt" + srtlib "github.com/datarhei/gosrt" "github.com/stretchr/testify/require" "github.com/bluenviron/mediamtx/internal/conf" "github.com/bluenviron/mediamtx/internal/defs" + "github.com/bluenviron/mediamtx/internal/staticsources/srt" "github.com/bluenviron/mediamtx/internal/test" ) func TestSource(t *testing.T) { - ln, err := srt.Listen("srt", "127.0.0.1:9002", srt.DefaultConfig()) + ln, err := srtlib.Listen("srt", "127.0.0.1:9002", srtlib.DefaultConfig()) require.NoError(t, err) defer ln.Close() p := &test.StaticSourceParent{} p.Initialize() - so := &Source{ + so := &srt.Source{ ReadTimeout: conf.Duration(10 * time.Second), Parent: p, } diff --git a/internal/staticsources/webrtc/source_test.go b/internal/staticsources/webrtc/source_test.go index 74344b7c..9efcae64 100644 --- a/internal/staticsources/webrtc/source_test.go +++ b/internal/staticsources/webrtc/source_test.go @@ -1,4 +1,4 @@ -package webrtc +package webrtc_test import ( "context" @@ -9,25 +9,26 @@ import ( "time" "github.com/pion/rtp" - pwebrtc "github.com/pion/webrtc/v4" "github.com/stretchr/testify/require" "github.com/bluenviron/mediamtx/internal/conf" "github.com/bluenviron/mediamtx/internal/defs" - "github.com/bluenviron/mediamtx/internal/protocols/webrtc" + pwebrtc "github.com/bluenviron/mediamtx/internal/protocols/webrtc" + "github.com/bluenviron/mediamtx/internal/staticsources/webrtc" "github.com/bluenviron/mediamtx/internal/test" + webrtclib "github.com/pion/webrtc/v4" ) -func whipOffer(body []byte) *pwebrtc.SessionDescription { - return &pwebrtc.SessionDescription{ - Type: pwebrtc.SDPTypeOffer, +func whipOffer(body []byte) *webrtclib.SessionDescription { + return &webrtclib.SessionDescription{ + Type: webrtclib.SDPTypeOffer, SDP: string(body), } } func TestSource(t *testing.T) { - outboundTracks := []*webrtc.OutboundTrack{{ - Caps: pwebrtc.RTPCodecCapability{ + outboundTracks := []*pwebrtc.OutboundTrack{{ + Caps: webrtclib.RTPCodecCapability{ MimeType: "audio/opus", ClockRate: 48000, Channels: 2, @@ -35,7 +36,7 @@ func TestSource(t *testing.T) { }, }} - pc := &webrtc.PeerConnection{ + pc := &pwebrtc.PeerConnection{ LocalRandomUDP: true, IPsFromInterfaces: true, Publish: true, @@ -123,7 +124,7 @@ func TestSource(t *testing.T) { p.Initialize() defer p.Close() - so := &Source{ + so := &webrtc.Source{ ReadTimeout: conf.Duration(10 * time.Second), Parent: p, }