| <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN"> |
| <html> |
| <head> |
| <script src="../../resources/js-test-pre.js"></script> |
| </head> |
| <body> |
| <script> |
| description("Tests the RTCPeerConnection Ice functionality."); |
| |
| var pc = null; |
| var iceCandidate = null; |
| |
| function onIceChange2() |
| { |
| if (pc.iceConnectionState === "closed") { |
| testPassed("iceConnectionState is closed."); |
| finishJSTest(); |
| } |
| } |
| |
| function addIceCandidateSuccess() |
| { |
| testPassed("addIceCandidateSuccess was called."); |
| pc.oniceconnectionstatechange = onIceChange2; |
| pc.close(); |
| } |
| |
| function addIceCandidateFailure() |
| { |
| testFailed("addIceCandidateFailue was called."); |
| finishJSTest(); |
| } |
| |
| function onIceChange1() |
| { |
| if (pc.iceConnectionState === "completed") { |
| testPassed("iceConnectionState is completed"); |
| iceCandidate = new RTCIceCandidate({candidate:"nano nano"}); |
| shouldThrow('pc.addIceCandidate(null, null, null);'); |
| shouldThrow('pc.addIceCandidate(iceCandidate, null, null);'); |
| shouldThrow('pc.addIceCandidate(iceCandidate, addIceCandidateSuccess, null);'); |
| shouldNotThrow('pc.addIceCandidate(iceCandidate, addIceCandidateSuccess, addIceCandidateFailure);'); |
| } |
| } |
| |
| shouldNotThrow("pc = new RTCPeerConnection({iceServers:[{urls:'stun:foo.com'}]});"); |
| pc.oniceconnectionstatechange = onIceChange1; |
| |
| window.jsTestIsAsync = true; |
| window.successfullyParsed = true; |
| </script> |
| <script src="../../resources/js-test-post.js"></script> |
| </body> |
| </html> |