mirror of
https://github.com/pion/webrtc.git
synced 2025-12-24 11:51:03 +08:00
Move negotation test out of peerconnection_test
No functional change
This commit is contained in:
@@ -1285,3 +1285,38 @@ func TestPeerConnection_Regegotiation_AnswerAddsTrack(t *testing.T) {
|
||||
|
||||
closePairNow(t, pcOffer, pcAnswer)
|
||||
}
|
||||
|
||||
func TestNegotiationNeededWithRecvonlyTrack(t *testing.T) {
|
||||
lim := test.TimeOut(time.Second * 30)
|
||||
defer lim.Stop()
|
||||
|
||||
report := test.CheckRoutines(t)
|
||||
defer report()
|
||||
|
||||
pcOffer, pcAnswer, err := newPair()
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
||||
var wg sync.WaitGroup
|
||||
wg.Add(1)
|
||||
pcAnswer.OnNegotiationNeeded(wg.Done)
|
||||
|
||||
_, err = pcOffer.AddTransceiverFromKind(RTPCodecTypeVideo, RTPTransceiverInit{Direction: RTPTransceiverDirectionRecvonly})
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
||||
if err := signalPair(pcOffer, pcAnswer); err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
||||
onDataChannel, onDataChannelCancel := context.WithCancel(context.Background())
|
||||
pcAnswer.OnDataChannel(func(d *DataChannel) {
|
||||
onDataChannelCancel()
|
||||
})
|
||||
<-onDataChannel.Done()
|
||||
wg.Wait()
|
||||
|
||||
closePairNow(t, pcOffer, pcAnswer)
|
||||
}
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
package webrtc
|
||||
|
||||
import (
|
||||
"context"
|
||||
"reflect"
|
||||
"sync"
|
||||
"sync/atomic"
|
||||
@@ -752,38 +751,3 @@ func TestTransportChain(t *testing.T) {
|
||||
|
||||
closePairNow(t, offer, answer)
|
||||
}
|
||||
|
||||
func TestNegotiationNeededWithRecvonlyTrack(t *testing.T) {
|
||||
lim := test.TimeOut(time.Second * 30)
|
||||
defer lim.Stop()
|
||||
|
||||
report := test.CheckRoutines(t)
|
||||
defer report()
|
||||
|
||||
pcOffer, pcAnswer, err := newPair()
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
||||
var wg sync.WaitGroup
|
||||
wg.Add(1)
|
||||
pcAnswer.OnNegotiationNeeded(wg.Done)
|
||||
|
||||
_, err = pcOffer.AddTransceiverFromKind(RTPCodecTypeVideo, RTPTransceiverInit{Direction: RTPTransceiverDirectionRecvonly})
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
||||
if err := signalPair(pcOffer, pcAnswer); err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
||||
onDataChannel, onDataChannelCancel := context.WithCancel(context.Background())
|
||||
pcAnswer.OnDataChannel(func(d *DataChannel) {
|
||||
onDataChannelCancel()
|
||||
})
|
||||
<-onDataChannel.Done()
|
||||
wg.Wait()
|
||||
|
||||
closePairNow(t, pcOffer, pcAnswer)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user