Diff
Modified: trunk/LayoutTests/ChangeLog (160435 => 160436)
--- trunk/LayoutTests/ChangeLog 2013-12-11 16:40:43 UTC (rev 160435)
+++ trunk/LayoutTests/ChangeLog 2013-12-11 16:43:08 UTC (rev 160436)
@@ -1,3 +1,18 @@
+2013-12-11 Thiago de Barros Lacerda <[email protected]>
+
+ Improving createOffer and createAnswer LayoutTests
+ https://bugs.webkit.org/show_bug.cgi?id=125568
+
+ Reviewed by Philippe Normand.
+
+ The constraints parameter should be optional in both. Also adding tests to check if we already have a local SDP
+ when creating an answer.
+
+ * fast/mediastream/RTCPeerConnection-createAnswer-expected.txt:
+ * fast/mediastream/RTCPeerConnection-createAnswer.html:
+ * fast/mediastream/RTCPeerConnection-createOffer-expected.txt:
+ * fast/mediastream/RTCPeerConnection-createOffer.html:
+
2013-12-11 Michał Pakuła vel Rutka <[email protected]>
Unreviewed EFL gardening
Modified: trunk/LayoutTests/fast/mediastream/RTCPeerConnection-createAnswer-expected.txt (160435 => 160436)
--- trunk/LayoutTests/fast/mediastream/RTCPeerConnection-createAnswer-expected.txt 2013-12-11 16:40:43 UTC (rev 160435)
+++ trunk/LayoutTests/fast/mediastream/RTCPeerConnection-createAnswer-expected.txt 2013-12-11 16:43:08 UTC (rev 160436)
@@ -3,11 +3,18 @@
On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
-PASS createOffer request failed.
-PASS pc.setRemoteDescription(sessionDescription, requestSucceeded2, requestFailed2); did not throw exception.
-PASS setRemoteDescription request succeeded.
+PASS pc.createAnswer(requestSucceeded1, requestFailed1); did not throw exception.
+PASS createAnswer request succeeded.
+PASS pc.setRemoteDescription(sessionDescription, setDescriptionSucceeded, setDescriptionFailed); did not throw exception.
+PASS setRemoteDescription succeeded.
+PASS pc.createAnswer(requestSucceeded2, requestFailed2, {mandatory:{"succeed":false}}); did not throw exception.
+PASS createAnswer request failed.
PASS pc.createAnswer(requestSucceeded3, requestFailed3); did not throw exception.
PASS createAnswer request succeeded.
+PASS sessionDescription.type is "answer"
+PASS pc.createAnswer(requestSucceeded4, requestFailed3, {mandatory:{"succeed":true}}); did not throw exception.
+PASS createAnswer request succeeded.
+PASS sessionDescription.type is "answer"
PASS successfullyParsed is true
TEST COMPLETE
Modified: trunk/LayoutTests/fast/mediastream/RTCPeerConnection-createAnswer.html (160435 => 160436)
--- trunk/LayoutTests/fast/mediastream/RTCPeerConnection-createAnswer.html 2013-12-11 16:40:43 UTC (rev 160435)
+++ trunk/LayoutTests/fast/mediastream/RTCPeerConnection-createAnswer.html 2013-12-11 16:43:08 UTC (rev 160436)
@@ -9,6 +9,16 @@
var pc = null;
+ function requestSucceeded4(sd)
+ {
+ testPassed('createAnswer request succeeded.');
+
+ sessionDescription = sd;
+ shouldBe('sessionDescription.type', '"answer"');
+
+ finishJSTest();
+ }
+
function requestFailed3(reason)
{
testFailed('createAnswer request failed.');
@@ -16,43 +26,60 @@
finishJSTest();
}
- function requestSucceeded3()
+ function requestSucceeded3(sd)
{
testPassed('createAnswer request succeeded.');
- finishJSTest();
+ sessionDescription = sd;
+ shouldBe('sessionDescription.type', '"answer"');
+
+ shouldNotThrow('pc.createAnswer(requestSucceeded4, requestFailed3, {mandatory:{"succeed":true}});');
}
function requestFailed2(reason)
{
- testFailed('setRemoteDescription request failed.');
+ testPassed('createAnswer request failed.');
- finishJSTest();
+ shouldNotThrow('pc.createAnswer(requestSucceeded3, requestFailed3);');
}
function requestSucceeded2()
{
- testPassed('setRemoteDescription request succeeded.');
+ testFailed('createAnswer request succeeded.');
- shouldNotThrow('pc.createAnswer(requestSucceeded3, requestFailed3);');
+ finishJSTest();
}
- function requestFailed1()
+ function requestFailed1(reason)
{
- testPassed('createOffer request failed.');
+ testFailed('createAnswer request failed.');
- sessionDescription = new RTCSessionDescription({type:"answer", sdp:"remote"});
- shouldNotThrow('pc.setRemoteDescription(sessionDescription, requestSucceeded2, requestFailed2);');
+ finishJSTest();
}
- function requestSucceeded1(sd)
+ function requestSucceeded1()
{
- testFailed('createOffer request succeeded.');
+ testPassed('createAnswer request succeeded.');
+
+ sessionDescription = new RTCSessionDescription({type:"offer", sdp:"remote"});
+ shouldNotThrow('pc.setRemoteDescription(sessionDescription, setDescriptionSucceeded, setDescriptionFailed);');
+ }
+
+ function setDescriptionFailed()
+ {
+ testFailed('setRemoteDescription failed.');
+
finishJSTest();
}
+ function setDescriptionSucceeded()
+ {
+ testPassed('setRemoteDescription succeeded.');
+ shouldNotThrow('pc.createAnswer(requestSucceeded2, requestFailed2, {mandatory:{"succeed":false}});');
+ }
+
pc = new webkitRTCPeerConnection({iceServers:[]});
- pc.createOffer(requestSucceeded1, requestFailed1);
+ shouldNotThrow('pc.createAnswer(requestSucceeded1, requestFailed1);');
window.jsTestIsAsync = true;
window.successfullyParsed = true;
Modified: trunk/LayoutTests/fast/mediastream/RTCPeerConnection-createOffer-expected.txt (160435 => 160436)
--- trunk/LayoutTests/fast/mediastream/RTCPeerConnection-createOffer-expected.txt 2013-12-11 16:40:43 UTC (rev 160435)
+++ trunk/LayoutTests/fast/mediastream/RTCPeerConnection-createOffer-expected.txt 2013-12-11 16:43:08 UTC (rev 160436)
@@ -3,10 +3,15 @@
On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
-PASS requestSucceeded was called.
+PASS pc.createOffer(requestSucceeded1, requestFailed1, {mandatory:{"succeed":true}}); did not throw exception.
+PASS createOffer request succeeded.
PASS sessionDescription.type is "offer"
-PASS requestFailed was called.
+PASS pc.createOffer(requestSucceeded2, requestFailed2, {mandatory:{"succeed":false}}); did not throw exception.
+PASS createOffer request failed.
PASS errorReason is "TEST_ERROR"
+PASS pc.createOffer(requestSucceeded3, requestFailed1); did not throw exception.
+PASS createOffer request succeeded.
+PASS sessionDescription.type is "offer"
PASS successfullyParsed is true
TEST COMPLETE
Modified: trunk/LayoutTests/fast/mediastream/RTCPeerConnection-createOffer.html (160435 => 160436)
--- trunk/LayoutTests/fast/mediastream/RTCPeerConnection-createOffer.html 2013-12-11 16:40:43 UTC (rev 160435)
+++ trunk/LayoutTests/fast/mediastream/RTCPeerConnection-createOffer.html 2013-12-11 16:43:08 UTC (rev 160436)
@@ -9,40 +9,49 @@
var pc = null;
+ function requestSucceeded3(sd)
+ {
+ testPassed('createOffer request succeeded.');
+
+ sessionDescription = sd;
+ shouldBe('sessionDescription.type', '"offer"');
+ finishJSTest();
+ }
+
function requestFailed2(reason)
{
- testPassed('requestFailed was called.');
+ testPassed('createOffer request failed.');
errorReason = reason;
shouldBe('errorReason', '"TEST_ERROR"');
- finishJSTest();
+ shouldNotThrow('pc.createOffer(requestSucceeded3, requestFailed1);');
}
function requestSucceeded2(sd)
{
- testFailed('requestSucceeded was called.');
+ testFailed('createOffer request succeeded.');
finishJSTest();
}
function requestFailed1()
{
- testFailed('requestFailed was called.');
+ testFailed('createOffer request failed.');
finishJSTest();
}
function requestSucceeded1(sd)
{
- testPassed('requestSucceeded was called.');
+ testPassed('createOffer request succeeded.');
sessionDescription = sd;
shouldBe('sessionDescription.type', '"offer"');
- pc.createOffer(requestSucceeded2, requestFailed2, {mandatory:{"succeed":false}});
+ shouldNotThrow('pc.createOffer(requestSucceeded2, requestFailed2, {mandatory:{"succeed":false}});');
}
pc = new webkitRTCPeerConnection({iceServers:[]});
- pc.createOffer(requestSucceeded1, requestFailed1, {mandatory:{"succeed":true}});
+ shouldNotThrow('pc.createOffer(requestSucceeded1, requestFailed1, {mandatory:{"succeed":true}});');
window.jsTestIsAsync = true;
window.successfullyParsed = true;
Modified: trunk/Source/WebCore/ChangeLog (160435 => 160436)
--- trunk/Source/WebCore/ChangeLog 2013-12-11 16:40:43 UTC (rev 160435)
+++ trunk/Source/WebCore/ChangeLog 2013-12-11 16:43:08 UTC (rev 160436)
@@ -1,3 +1,18 @@
+2013-12-11 Thiago de Barros Lacerda <[email protected]>
+
+ Improving createOffer and createAnswer LayoutTests
+ https://bugs.webkit.org/show_bug.cgi?id=125568
+
+ Reviewed by Philippe Normand.
+
+ The constraints parameter should be optional in both. Also adding tests to check if we already have a local SDP
+ when creating an answer.
+
+ Existing tests were updated.
+
+ * platform/mock/RTCPeerConnectionHandlerMock.cpp:
+ (WebCore::RTCPeerConnectionHandlerMock::createOffer):
+
2013-12-11 Michał Pakuła vel Rutka <[email protected]>
[EFL] Fix build with CONTEXT_MENUS flag set OFF
Modified: trunk/Source/WebCore/platform/mock/RTCPeerConnectionHandlerMock.cpp (160435 => 160436)
--- trunk/Source/WebCore/platform/mock/RTCPeerConnectionHandlerMock.cpp 2013-12-11 16:40:43 UTC (rev 160435)
+++ trunk/Source/WebCore/platform/mock/RTCPeerConnectionHandlerMock.cpp 2013-12-11 16:43:08 UTC (rev 160436)
@@ -66,10 +66,10 @@
{
String succeedValue;
RefPtr<SessionRequestNotifier> notifier;
- if (constraints->getMandatoryConstraintValue("succeed", succeedValue) && succeedValue == "true")
+ if (constraints->getMandatoryConstraintValue("succeed", succeedValue) && succeedValue == "false")
+ notifier = adoptRef(new SessionRequestNotifier(request, 0));
+ else
notifier = adoptRef(new SessionRequestNotifier(request, RTCSessionDescriptionDescriptor::create("offer", "local")));
- else
- notifier = adoptRef(new SessionRequestNotifier(request, 0));
m_timerEvents.append(adoptRef(new TimerEvent(this, notifier)));
}
@@ -79,7 +79,7 @@
RefPtr<SessionRequestNotifier> notifier;
// We can only create an answer if we have already had an offer and the remote session description is stored.
String succeedValue;
- if (!m_remoteSessionDescription.get() || (constraints->getMandatoryConstraintValue("succeed", succeedValue) && succeedValue == "false"))
+ if (constraints->getMandatoryConstraintValue("succeed", succeedValue) && succeedValue == "false")
notifier = adoptRef(new SessionRequestNotifier(request, 0));
else
notifier = adoptRef(new SessionRequestNotifier(request, RTCSessionDescriptionDescriptor::create("answer", "local")));