mirror of
https://github.com/aler9/gortsplib
synced 2025-10-06 23:52:46 +08:00
simplify tests
This commit is contained in:
@@ -25,6 +25,10 @@ import (
|
|||||||
"github.com/bluenviron/mediacommon/pkg/codecs/mpeg4audio"
|
"github.com/bluenviron/mediacommon/pkg/codecs/mpeg4audio"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
func ipPtr(v net.IP) *net.IP {
|
||||||
|
return &v
|
||||||
|
}
|
||||||
|
|
||||||
func mustMarshalMedias(medias media.Medias) []byte {
|
func mustMarshalMedias(medias media.Medias) []byte {
|
||||||
byts, err := medias.Marshal(false).Marshal()
|
byts, err := medias.Marshal(false).Marshal()
|
||||||
if err != nil {
|
if err != nil {
|
||||||
@@ -2818,10 +2822,7 @@ func TestClientPlayDifferentSource(t *testing.T) {
|
|||||||
Protocol: headers.TransportProtocolUDP,
|
Protocol: headers.TransportProtocolUDP,
|
||||||
ClientPorts: inTH.ClientPorts,
|
ClientPorts: inTH.ClientPorts,
|
||||||
ServerPorts: &[2]int{34556, 34557},
|
ServerPorts: &[2]int{34556, 34557},
|
||||||
Source: func() *net.IP {
|
Source: ipPtr(net.ParseIP("127.0.1.1")),
|
||||||
i := net.ParseIP("127.0.1.1")
|
|
||||||
return &i
|
|
||||||
}(),
|
|
||||||
}
|
}
|
||||||
|
|
||||||
l1, err := net.ListenPacket("udp", "127.0.1.1:34556")
|
l1, err := net.ListenPacket("udp", "127.0.1.1:34556")
|
||||||
|
@@ -8,6 +8,10 @@ import (
|
|||||||
"github.com/bluenviron/gortsplib/v3/pkg/base"
|
"github.com/bluenviron/gortsplib/v3/pkg/base"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
func stringPtr(v string) *string {
|
||||||
|
return &v
|
||||||
|
}
|
||||||
|
|
||||||
var casesAuthenticate = []struct {
|
var casesAuthenticate = []struct {
|
||||||
name string
|
name string
|
||||||
vin base.HeaderValue
|
vin base.HeaderValue
|
||||||
@@ -20,10 +24,7 @@ var casesAuthenticate = []struct {
|
|||||||
base.HeaderValue{`Basic realm="4419b63f5e51"`},
|
base.HeaderValue{`Basic realm="4419b63f5e51"`},
|
||||||
Authenticate{
|
Authenticate{
|
||||||
Method: AuthBasic,
|
Method: AuthBasic,
|
||||||
Realm: func() *string {
|
Realm: stringPtr("4419b63f5e51"),
|
||||||
v := "4419b63f5e51"
|
|
||||||
return &v
|
|
||||||
}(),
|
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@@ -32,18 +33,9 @@ var casesAuthenticate = []struct {
|
|||||||
base.HeaderValue{`Digest realm="4419b63f5e51", nonce="8b84a3b789283a8bea8da7fa7d41f08b", stale="FALSE"`},
|
base.HeaderValue{`Digest realm="4419b63f5e51", nonce="8b84a3b789283a8bea8da7fa7d41f08b", stale="FALSE"`},
|
||||||
Authenticate{
|
Authenticate{
|
||||||
Method: AuthDigest,
|
Method: AuthDigest,
|
||||||
Realm: func() *string {
|
Realm: stringPtr("4419b63f5e51"),
|
||||||
v := "4419b63f5e51"
|
Nonce: stringPtr("8b84a3b789283a8bea8da7fa7d41f08b"),
|
||||||
return &v
|
Stale: stringPtr("FALSE"),
|
||||||
}(),
|
|
||||||
Nonce: func() *string {
|
|
||||||
v := "8b84a3b789283a8bea8da7fa7d41f08b"
|
|
||||||
return &v
|
|
||||||
}(),
|
|
||||||
Stale: func() *string {
|
|
||||||
v := "FALSE"
|
|
||||||
return &v
|
|
||||||
}(),
|
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@@ -52,18 +44,9 @@ var casesAuthenticate = []struct {
|
|||||||
base.HeaderValue{`Digest realm="4419b63f5e51", nonce="8b84a3b789283a8bea8da7fa7d41f08b", stale="FALSE"`},
|
base.HeaderValue{`Digest realm="4419b63f5e51", nonce="8b84a3b789283a8bea8da7fa7d41f08b", stale="FALSE"`},
|
||||||
Authenticate{
|
Authenticate{
|
||||||
Method: AuthDigest,
|
Method: AuthDigest,
|
||||||
Realm: func() *string {
|
Realm: stringPtr("4419b63f5e51"),
|
||||||
v := "4419b63f5e51"
|
Nonce: stringPtr("8b84a3b789283a8bea8da7fa7d41f08b"),
|
||||||
return &v
|
Stale: stringPtr("FALSE"),
|
||||||
}(),
|
|
||||||
Nonce: func() *string {
|
|
||||||
v := "8b84a3b789283a8bea8da7fa7d41f08b"
|
|
||||||
return &v
|
|
||||||
}(),
|
|
||||||
Stale: func() *string {
|
|
||||||
v := "FALSE"
|
|
||||||
return &v
|
|
||||||
}(),
|
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@@ -72,18 +55,9 @@ var casesAuthenticate = []struct {
|
|||||||
base.HeaderValue{`Digest realm="4419b63f5e51", nonce="133767111917411116111311118211673010032", stale="FALSE"`},
|
base.HeaderValue{`Digest realm="4419b63f5e51", nonce="133767111917411116111311118211673010032", stale="FALSE"`},
|
||||||
Authenticate{
|
Authenticate{
|
||||||
Method: AuthDigest,
|
Method: AuthDigest,
|
||||||
Realm: func() *string {
|
Realm: stringPtr("4419b63f5e51"),
|
||||||
v := "4419b63f5e51"
|
Nonce: stringPtr("133767111917411116111311118211673010032"),
|
||||||
return &v
|
Stale: stringPtr("FALSE"),
|
||||||
}(),
|
|
||||||
Nonce: func() *string {
|
|
||||||
v := "133767111917411116111311118211673010032"
|
|
||||||
return &v
|
|
||||||
}(),
|
|
||||||
Stale: func() *string {
|
|
||||||
v := "FALSE"
|
|
||||||
return &v
|
|
||||||
}(),
|
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@@ -92,26 +66,11 @@ var casesAuthenticate = []struct {
|
|||||||
base.HeaderValue{`Digest username="aa", realm="bb", nonce="cc", uri="dd", response="ee"`},
|
base.HeaderValue{`Digest username="aa", realm="bb", nonce="cc", uri="dd", response="ee"`},
|
||||||
Authenticate{
|
Authenticate{
|
||||||
Method: AuthDigest,
|
Method: AuthDigest,
|
||||||
Username: func() *string {
|
Username: stringPtr("aa"),
|
||||||
v := "aa"
|
Realm: stringPtr("bb"),
|
||||||
return &v
|
Nonce: stringPtr("cc"),
|
||||||
}(),
|
URI: stringPtr("dd"),
|
||||||
Realm: func() *string {
|
Response: stringPtr("ee"),
|
||||||
v := "bb"
|
|
||||||
return &v
|
|
||||||
}(),
|
|
||||||
Nonce: func() *string {
|
|
||||||
v := "cc"
|
|
||||||
return &v
|
|
||||||
}(),
|
|
||||||
URI: func() *string {
|
|
||||||
v := "dd"
|
|
||||||
return &v
|
|
||||||
}(),
|
|
||||||
Response: func() *string {
|
|
||||||
v := "ee"
|
|
||||||
return &v
|
|
||||||
}(),
|
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@@ -124,26 +83,11 @@ var casesAuthenticate = []struct {
|
|||||||
`response="c072ae90eb4a27f4cdcb90d62266b2a1"`},
|
`response="c072ae90eb4a27f4cdcb90d62266b2a1"`},
|
||||||
Authenticate{
|
Authenticate{
|
||||||
Method: AuthDigest,
|
Method: AuthDigest,
|
||||||
Username: func() *string {
|
Username: stringPtr(""),
|
||||||
v := ""
|
Realm: stringPtr("IPCAM"),
|
||||||
return &v
|
Nonce: stringPtr("5d17cd12b9fa8a85ac5ceef0926ea5a6"),
|
||||||
}(),
|
URI: stringPtr("rtsp://localhost:8554/mystream"),
|
||||||
Realm: func() *string {
|
Response: stringPtr("c072ae90eb4a27f4cdcb90d62266b2a1"),
|
||||||
v := "IPCAM"
|
|
||||||
return &v
|
|
||||||
}(),
|
|
||||||
Nonce: func() *string {
|
|
||||||
v := "5d17cd12b9fa8a85ac5ceef0926ea5a6"
|
|
||||||
return &v
|
|
||||||
}(),
|
|
||||||
URI: func() *string {
|
|
||||||
v := "rtsp://localhost:8554/mystream"
|
|
||||||
return &v
|
|
||||||
}(),
|
|
||||||
Response: func() *string {
|
|
||||||
v := "c072ae90eb4a27f4cdcb90d62266b2a1"
|
|
||||||
return &v
|
|
||||||
}(),
|
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@@ -154,26 +98,11 @@ var casesAuthenticate = []struct {
|
|||||||
`nonce="752a62306daf32b401a41004555c7663", opaque="", stale="FALSE", algorithm="MD5"`},
|
`nonce="752a62306daf32b401a41004555c7663", opaque="", stale="FALSE", algorithm="MD5"`},
|
||||||
Authenticate{
|
Authenticate{
|
||||||
Method: AuthDigest,
|
Method: AuthDigest,
|
||||||
Realm: func() *string {
|
Realm: stringPtr("Please log in with a valid username"),
|
||||||
v := "Please log in with a valid username"
|
Nonce: stringPtr("752a62306daf32b401a41004555c7663"),
|
||||||
return &v
|
Opaque: stringPtr(""),
|
||||||
}(),
|
Stale: stringPtr("FALSE"),
|
||||||
Nonce: func() *string {
|
Algorithm: stringPtr("MD5"),
|
||||||
v := "752a62306daf32b401a41004555c7663"
|
|
||||||
return &v
|
|
||||||
}(),
|
|
||||||
Opaque: func() *string {
|
|
||||||
v := ""
|
|
||||||
return &v
|
|
||||||
}(),
|
|
||||||
Stale: func() *string {
|
|
||||||
v := "FALSE"
|
|
||||||
return &v
|
|
||||||
}(),
|
|
||||||
Algorithm: func() *string {
|
|
||||||
v := "MD5"
|
|
||||||
return &v
|
|
||||||
}(),
|
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
|
@@ -32,18 +32,9 @@ var casesAuthorization = []struct {
|
|||||||
Method: AuthDigest,
|
Method: AuthDigest,
|
||||||
DigestValues: Authenticate{
|
DigestValues: Authenticate{
|
||||||
Method: AuthDigest,
|
Method: AuthDigest,
|
||||||
Realm: func() *string {
|
Realm: stringPtr("4419b63f5e51"),
|
||||||
v := "4419b63f5e51"
|
Nonce: stringPtr("8b84a3b789283a8bea8da7fa7d41f08b"),
|
||||||
return &v
|
Stale: stringPtr("FALSE"),
|
||||||
}(),
|
|
||||||
Nonce: func() *string {
|
|
||||||
v := "8b84a3b789283a8bea8da7fa7d41f08b"
|
|
||||||
return &v
|
|
||||||
}(),
|
|
||||||
Stale: func() *string {
|
|
||||||
v := "FALSE"
|
|
||||||
return &v
|
|
||||||
}(),
|
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
@@ -9,6 +9,14 @@ import (
|
|||||||
"github.com/bluenviron/gortsplib/v3/pkg/base"
|
"github.com/bluenviron/gortsplib/v3/pkg/base"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
func durationPtr(v time.Duration) *time.Duration {
|
||||||
|
return &v
|
||||||
|
}
|
||||||
|
|
||||||
|
func timePtr(v time.Time) *time.Time {
|
||||||
|
return &v
|
||||||
|
}
|
||||||
|
|
||||||
var casesRange = []struct {
|
var casesRange = []struct {
|
||||||
name string
|
name string
|
||||||
vin base.HeaderValue
|
vin base.HeaderValue
|
||||||
@@ -64,10 +72,7 @@ var casesRange = []struct {
|
|||||||
Range{
|
Range{
|
||||||
Value: &RangeNPT{
|
Value: &RangeNPT{
|
||||||
Start: time.Duration(123.45 * float64(time.Second)),
|
Start: time.Duration(123.45 * float64(time.Second)),
|
||||||
End: func() *time.Duration {
|
End: durationPtr(125 * time.Second),
|
||||||
v := 125 * time.Second
|
|
||||||
return &v
|
|
||||||
}(),
|
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
@@ -88,10 +93,7 @@ var casesRange = []struct {
|
|||||||
Range{
|
Range{
|
||||||
Value: &RangeUTC{
|
Value: &RangeUTC{
|
||||||
Start: time.Date(1996, 11, 8, 14, 23, 0, 0, time.UTC),
|
Start: time.Date(1996, 11, 8, 14, 23, 0, 0, time.UTC),
|
||||||
End: func() *time.Time {
|
End: timePtr(time.Date(1996, 11, 8, 14, 35, 20, 0, time.UTC)),
|
||||||
v := time.Date(1996, 11, 8, 14, 35, 20, 0, time.UTC)
|
|
||||||
return &v
|
|
||||||
}(),
|
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
@@ -113,10 +115,7 @@ var casesRange = []struct {
|
|||||||
Value: &RangeUTC{
|
Value: &RangeUTC{
|
||||||
Start: time.Date(1996, 2, 13, 14, 32, 5, 0, time.UTC),
|
Start: time.Date(1996, 2, 13, 14, 32, 5, 0, time.UTC),
|
||||||
},
|
},
|
||||||
Time: func() *time.Time {
|
Time: timePtr(time.Date(1997, 1, 23, 14, 37, 20, 0, time.UTC)),
|
||||||
v := time.Date(1997, 1, 23, 14, 37, 20, 0, time.UTC)
|
|
||||||
return &v
|
|
||||||
}(),
|
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
|
@@ -9,6 +9,10 @@ import (
|
|||||||
"github.com/bluenviron/gortsplib/v3/pkg/base"
|
"github.com/bluenviron/gortsplib/v3/pkg/base"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
func ipPtr(v net.IP) *net.IP {
|
||||||
|
return &v
|
||||||
|
}
|
||||||
|
|
||||||
var casesTransport = []struct {
|
var casesTransport = []struct {
|
||||||
name string
|
name string
|
||||||
vin base.HeaderValue
|
vin base.HeaderValue
|
||||||
@@ -56,10 +60,7 @@ var casesTransport = []struct {
|
|||||||
v := TransportDeliveryMulticast
|
v := TransportDeliveryMulticast
|
||||||
return &v
|
return &v
|
||||||
}(),
|
}(),
|
||||||
Destination: func() *net.IP {
|
Destination: ipPtr(net.ParseIP("225.219.201.15")),
|
||||||
v := net.ParseIP("225.219.201.15")
|
|
||||||
return &v
|
|
||||||
}(),
|
|
||||||
TTL: uintPtr(127),
|
TTL: uintPtr(127),
|
||||||
Ports: &[2]int{7000, 7001},
|
Ports: &[2]int{7000, 7001},
|
||||||
},
|
},
|
||||||
@@ -108,10 +109,7 @@ var casesTransport = []struct {
|
|||||||
}(),
|
}(),
|
||||||
ClientPorts: &[2]int{14186, 14187},
|
ClientPorts: &[2]int{14186, 14187},
|
||||||
ServerPorts: &[2]int{5000, 5001},
|
ServerPorts: &[2]int{5000, 5001},
|
||||||
Source: func() *net.IP {
|
Source: ipPtr(net.ParseIP("127.0.0.1")),
|
||||||
v := net.ParseIP("127.0.0.1")
|
|
||||||
return &v
|
|
||||||
}(),
|
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@@ -208,10 +206,7 @@ var casesTransport = []struct {
|
|||||||
v := TransportDeliveryUnicast
|
v := TransportDeliveryUnicast
|
||||||
return &v
|
return &v
|
||||||
}(),
|
}(),
|
||||||
Source: func() *net.IP {
|
Source: ipPtr(net.ParseIP("172.16.8.2")),
|
||||||
v := net.ParseIP("172.16.8.2")
|
|
||||||
return &v
|
|
||||||
}(),
|
|
||||||
ClientPorts: &[2]int{14236, 14237},
|
ClientPorts: &[2]int{14236, 14237},
|
||||||
ServerPorts: &[2]int{56002, 56003},
|
ServerPorts: &[2]int{56002, 56003},
|
||||||
},
|
},
|
||||||
|
Reference in New Issue
Block a user