Bug 1523562 [wpt PR 15038] - Reland "Switch to new ICE state implementation", a=testonly

Automatic update from web-platform-tests
Reland "Switch to new ICE state implementation"

This is a reland of e902e08dc0c67fd7598a4a4e431177f89c00f350

Original change's description:
> Switch to new ICE state implementation
>
> With this change the ice/dtls connection states should finally be compliant to the spec.
>
> Bug: webrtc:6145
> Change-Id: I1e7c13f22e40b534e732ecd3fc103f617306f00a
> Reviewed-on: https://chromium-review.googlesource.com/c/1371392
> Commit-Queue: Jonas Olsson <jonasolsson@chromium.org>
> Reviewed-by: Henrik Boström <hbos@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#617476}

Bug: webrtc:6145
Change-Id: Ie4a09594e8a59c6598a9434c0132c1fd3543c76b
Reviewed-on: https://chromium-review.googlesource.com/c/1433237
Reviewed-by: Henrik Boström <hbos@chromium.org>
Commit-Queue: Jonas Olsson <jonasolsson@chromium.org>
Cr-Commit-Position: refs/heads/master@{#625611}

--

wpt-commits: e8365d71bf3a36ba494fbc96898d09e48f11e021
wpt-pr: 15038
This commit is contained in:
Jonas Olsson 2019-01-31 19:00:17 +00:00 коммит произвёл James Graham
Родитель 76ca1e2278
Коммит 336e02ab4f
1 изменённых файлов: 43 добавлений и 4 удалений

Просмотреть файл

@ -64,6 +64,12 @@
assert_equals(pc.iceConnectionState, 'new'); assert_equals(pc.iceConnectionState, 'new');
}, 'Initial iceConnectionState should be new'); }, 'Initial iceConnectionState should be new');
test(t => {
const pc = new RTCPeerConnection();
pc.close();
assert_equals(pc.iceConnectionState, 'closed');
}, 'Closing the connection should set iceConnectionState to closed');
/* /*
4.4.4 RTCIceConnectionState Enum 4.4.4 RTCIceConnectionState Enum
checking checking
@ -106,6 +112,35 @@
const pc1 = new RTCPeerConnection(); const pc1 = new RTCPeerConnection();
t.add_cleanup(() => pc1.close()); t.add_cleanup(() => pc1.close());
const pc2 = new RTCPeerConnection(); const pc2 = new RTCPeerConnection();
t.add_cleanup(() => pc2.close());
let had_checking = false;
const onIceConnectionStateChange = t.step_func(() => {
const {iceConnectionState} = pc1;
if (iceConnectionState === 'checking') {
had_checking = true;
} else if (iceConnectionState === 'connected' ||
iceConnectionState === 'completed') {
assert_true(had_checking, 'state should pass checking before' +
' reaching connected or completed');
t.done();
}
});
pc1.createDataChannel('test');
pc1.addEventListener('iceconnectionstatechange', onIceConnectionStateChange);
exchangeIceCandidates(pc1, pc2);
doSignalingHandshake(pc1, pc2);
}, 'connection with one data channel should eventually have connected or ' +
'completed connection state');
async_test(t => {
const pc1 = new RTCPeerConnection();
t.add_cleanup(() => pc1.close());
const pc2 = new RTCPeerConnection();
t.add_cleanup(() => pc2.close()); t.add_cleanup(() => pc2.close());
@ -116,19 +151,22 @@
const iceTransport = pc1.sctp.transport.transport; const iceTransport = pc1.sctp.transport.transport;
assert_equals(iceTransport.state, 'checking', assert_equals(iceTransport.state, 'checking',
'Expect ICE transport to be in checking state when iceConnectionState is checking'); 'Expect ICE transport to be in checking state when' +
' iceConnectionState is checking');
} else if(iceConnectionState === 'connected') { } else if(iceConnectionState === 'connected') {
const iceTransport = pc1.sctp.transport.transport; const iceTransport = pc1.sctp.transport.transport;
assert_equals(iceTransport.state, 'connected', assert_equals(iceTransport.state, 'connected',
'Expect ICE transport to be in connected state when iceConnectionState is connected'); 'Expect ICE transport to be in connected state when' +
' iceConnectionState is connected');
} else if(iceConnectionState === 'completed') { } else if(iceConnectionState === 'completed') {
const iceTransport = pc1.sctp.transport.transport; const iceTransport = pc1.sctp.transport.transport;
assert_equals(iceTransport.state, 'completed', assert_equals(iceTransport.state, 'completed',
'Expect ICE transport to be in connected state when iceConnectionState is completed'); 'Expect ICE transport to be in connected state when' +
' iceConnectionState is completed');
} }
}); });
@ -141,7 +179,8 @@
exchangeIceCandidates(pc1, pc2); exchangeIceCandidates(pc1, pc2);
doSignalingHandshake(pc1, pc2); doSignalingHandshake(pc1, pc2);
}, 'connection with one data channel should eventually have connected connection state'); }, 'connection with one data channel should eventually ' +
'have connected connection state');
/* /*
TODO TODO