Bug 1231975 - Part 7: Disable trickle for the NAT tests, since trickle delays can cause lower priority pairs to get selected. r=drno
authorByron Campen [:bwc] <docfaraday@gmail.com>
Thu, 28 Apr 2016 09:47:08 -0500
changeset 295560 8dad9ad634a303a6dd5c4715ef348d095a4bf9e4
parent 295559 9384b3767131eee7a8ebedef4ef11c148077e904
child 295561 185040c7902134ebc35abdc8c987c2cdcb789d10
push id30226
push usercbook@mozilla.com
push dateMon, 02 May 2016 09:26:03 +0000
treeherdermozilla-central@77cead2cd203 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersdrno
bugs1231975
milestone49.0a1
first release with
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
last release without
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
Bug 1231975 - Part 7: Disable trickle for the NAT tests, since trickle delays can cause lower priority pairs to get selected. r=drno MozReview-Commit-ID: GaqZQxJ7g2E
dom/media/tests/mochitest/test_peerConnection_basicAudioNATRelay.html
dom/media/tests/mochitest/test_peerConnection_basicAudioNATRelayTCP.html
dom/media/tests/mochitest/test_peerConnection_basicAudioNATSrflx.html
--- a/dom/media/tests/mochitest/test_peerConnection_basicAudioNATRelay.html
+++ b/dom/media/tests/mochitest/test_peerConnection_basicAudioNATRelay.html
@@ -1,11 +1,12 @@
 <!DOCTYPE HTML>
 <html>
 <head>
+  <script type="application/javascript" src="nonTrickleIce.js"></script>
   <script type="application/javascript" src="pc.js"></script>
 </head>
 <body>
 <pre id="test">
 <script type="application/javascript">
   createHTML({
     bug: "1231975",
     title: "Basic audio-only peer connection with port dependent NAT"
@@ -22,16 +23,22 @@
       }, function (options) {
         options = options || {};
         options.expectedLocalCandidateType = "serverreflexive";
         options.expectedRemoteCandidateType = "relayed";
         // If both have TURN, it is a toss-up which one will end up using a
         // relay.
         options.turn_disabled_local = true;
         test = new PeerConnectionTest(options);
+        // Make sure we don't end up choosing the wrong thing due to delays in
+        // trickle. Once we are willing to accept trickle after ICE success, we
+        // can maybe wait a bit to allow things to stabilize.
+        // TODO(bug 1238249)
+        makeOffererNonTrickle(test.chain);
+        makeAnswererNonTrickle(test.chain);
         test.setMediaConstraints([{audio: true}], [{audio: true}]);
         test.run();
       })
   }, { useIceServer: true });
 </script>
 </pre>
 </body>
 </html>
--- a/dom/media/tests/mochitest/test_peerConnection_basicAudioNATRelayTCP.html
+++ b/dom/media/tests/mochitest/test_peerConnection_basicAudioNATRelayTCP.html
@@ -19,16 +19,18 @@
           ['media.peerconnection.nat_simulator.filtering_type', 'PORT_DEPENDENT'],
           ['media.peerconnection.nat_simulator.mapping_type', 'PORT_DEPENDENT'],
           ['media.peerconnection.nat_simulator.block_udp', true]
         ]
       }, function (options) {
         options = options || {};
         options.expectedLocalCandidateType = "relayed-tcp";
         options.expectedRemoteCandidateType = "relayed-tcp";
+        // No reason to wait for gathering to complete like the other NAT tests,
+        // since relayed-tcp is the only thing that can work.
         test = new PeerConnectionTest(options);
         test.setMediaConstraints([{audio: true}], [{audio: true}]);
         test.run();
       })
   }, { useIceServer: true });
 </script>
 </pre>
 </body>
--- a/dom/media/tests/mochitest/test_peerConnection_basicAudioNATSrflx.html
+++ b/dom/media/tests/mochitest/test_peerConnection_basicAudioNATSrflx.html
@@ -1,11 +1,12 @@
 <!DOCTYPE HTML>
 <html>
 <head>
+  <script type="application/javascript" src="nonTrickleIce.js"></script>
   <script type="application/javascript" src="pc.js"></script>
 </head>
 <body>
 <pre id="test">
 <script type="application/javascript">
   createHTML({
     bug: "1231975",
     title: "Basic audio-only peer connection with endpoint independent NAT"
@@ -19,16 +20,22 @@
           ['media.peerconnection.nat_simulator.filtering_type', 'ENDPOINT_INDEPENDENT'],
           ['media.peerconnection.nat_simulator.mapping_type', 'ENDPOINT_INDEPENDENT']
         ]
       }, function (options) {
         options = options || {};
         options.expectedLocalCandidateType = "serverreflexive";
         options.expectedRemoteCandidateType = "serverreflexive";
         test = new PeerConnectionTest(options);
+        // Make sure we don't end up choosing the wrong thing due to delays in
+        // trickle. Once we are willing to accept trickle after ICE success, we
+        // can maybe wait a bit to allow things to stabilize.
+        // TODO(bug 1238249)
+        makeOffererNonTrickle(test.chain);
+        makeAnswererNonTrickle(test.chain);
         test.setMediaConstraints([{audio: true}], [{audio: true}]);
         test.run();
       })
   }, { useIceServer: true });
 </script>
 </pre>
 </body>
 </html>