78 lines
2.8 KiB
HTML
78 lines
2.8 KiB
HTML
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
|
|
<html>
|
|
<head>
|
|
<script src="../../resources/js-test-pre.js"></script>
|
|
</head>
|
|
<body>
|
|
<script>
|
|
var pc;
|
|
var result;
|
|
var desc;
|
|
var candidate;
|
|
|
|
description("Test which overloaded RTCPeerConnection function that gets invoked (by return value)");
|
|
|
|
shouldNotThrow("pc = new RTCPeerConnection({iceServers:[{urls:'stun:foo.com'}]});");
|
|
|
|
// Test createOffer/Answer()
|
|
testCreateOfferOrAnswer("createOffer");
|
|
testCreateOfferOrAnswer("createAnswer");
|
|
|
|
function testCreateOfferOrAnswer(functionName) {
|
|
shouldNotThrow("result = pc." + functionName + "()");
|
|
shouldBeType("result", "Promise");
|
|
|
|
shouldNotThrow("result = pc." + functionName + "({})");
|
|
shouldBeType("result", "Promise");
|
|
|
|
shouldNotThrow("result = pc." + functionName + "(emptyFunc, emptyFunc)");
|
|
shouldBeType("result", "Promise");
|
|
result.then(() => { }, () => { });
|
|
|
|
shouldNotThrow("result = pc." + functionName + "(emptyFunc, emptyFunc, {})");
|
|
shouldBeType("result", "Promise");
|
|
result.then(() => { }, () => { });
|
|
}
|
|
|
|
// Test setLocal/RemoteDescription()
|
|
shouldNotThrow("desc = new RTCSessionDescription({ type: 'offer', sdp: 'x' });");
|
|
|
|
testSetLocalOrRemoteDescription("setLocalDescription")
|
|
testSetLocalOrRemoteDescription("setRemoteDescription")
|
|
|
|
function testSetLocalOrRemoteDescription(functionName) {
|
|
shouldNotThrow("result = pc." + functionName + "(desc)");
|
|
shouldBeType("result", "Promise");
|
|
|
|
shouldNotThrow("result = pc." + functionName + "(desc, emptyFunc, emptyFunc)");
|
|
shouldBeType("result", "Promise");
|
|
}
|
|
|
|
// Test addIceCandidate()
|
|
candidate = new RTCIceCandidate({ "candidate": "foo", "sdpMid": "bar" });
|
|
|
|
shouldNotThrow("result = pc.addIceCandidate(candidate)");
|
|
shouldBeType("result", "Promise");
|
|
|
|
shouldNotThrow("result = pc.addIceCandidate(candidate, emptyFunc, emptyFunc)");
|
|
shouldBeType("result", "Promise");
|
|
|
|
// Test getStats()
|
|
shouldNotThrow("result = pc.getStats()");
|
|
shouldBeType("result", "Promise");
|
|
|
|
shouldNotThrow("result = pc.getStats(null)");
|
|
shouldBeType("result", "Promise");
|
|
|
|
shouldNotThrow("result = pc.getStats(null, emptyFunc, emptyFunc)");
|
|
shouldBeType("result", "Promise");
|
|
|
|
function emptyFunc() { }
|
|
|
|
window.successfullyParsed = true;
|
|
|
|
</script>
|
|
<script src="../../resources/js-test-post.js"></script>
|
|
</body>
|
|
</html>
|