mirror of
https://github.com/pion/webrtc.git
synced 2025-09-27 11:32:19 +08:00
2
sdp.go
2
sdp.go
@@ -538,7 +538,7 @@ func populateSDP(d *sdp.SessionDescription, isPlanB bool, dtlsFingerprints []DTL
|
||||
|
||||
if isICELite {
|
||||
// RFC 5245 S15.3
|
||||
d = d.WithValueAttribute(sdp.AttrKeyICELite, sdp.AttrKeyICELite)
|
||||
d = d.WithValueAttribute(sdp.AttrKeyICELite, "")
|
||||
}
|
||||
|
||||
return d.WithValueAttribute(sdp.AttrKeyGroup, bundleValue), nil
|
||||
|
20
sdp_test.go
20
sdp_test.go
@@ -449,6 +449,26 @@ func TestPopulateSDP(t *testing.T) {
|
||||
}
|
||||
assert.Equal(t, true, foundVP8, "vp8 should be present in sdp")
|
||||
})
|
||||
t.Run("ice-lite", func(t *testing.T) {
|
||||
se := SettingEngine{}
|
||||
se.SetLite(true)
|
||||
|
||||
offerSdp, err := populateSDP(&sdp.SessionDescription{}, false, []DTLSFingerprint{}, se.sdpMediaLevelFingerprints, se.candidates.ICELite, &MediaEngine{}, connectionRoleFromDtlsRole(defaultDtlsRoleOffer), []ICECandidate{}, ICEParameters{}, []mediaSection{}, ICEGatheringStateComplete)
|
||||
assert.Nil(t, err)
|
||||
|
||||
var found bool
|
||||
// ice-lite is an session-level attribute
|
||||
for _, a := range offerSdp.Attributes {
|
||||
if a.Key == sdp.AttrKeyICELite {
|
||||
// ice-lite does not have value (e.g. ":<value>") and it should be an empty string
|
||||
if a.Value == "" {
|
||||
found = true
|
||||
break
|
||||
}
|
||||
}
|
||||
}
|
||||
assert.Equal(t, true, found, "ICELite key should be present")
|
||||
})
|
||||
}
|
||||
|
||||
func TestGetRIDs(t *testing.T) {
|
||||
|
Reference in New Issue
Block a user