Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(4358)

Unified Diff: chrome/browser/media/webrtc_browsertest.cc

Issue 1909923002: Making RTCCertificate cloneable (WIP). (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Derp! Created 4 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « no previous file | chrome/browser/media/webrtc_browsertest_base.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/browser/media/webrtc_browsertest.cc
diff --git a/chrome/browser/media/webrtc_browsertest.cc b/chrome/browser/media/webrtc_browsertest.cc
index 8d6398b6a8e2e6c5ab0e6df6d60cae48e2e50d38..f6ec1da19b742cf14fdd00f725dcc06d67440856 100644
--- a/chrome/browser/media/webrtc_browsertest.cc
+++ b/chrome/browser/media/webrtc_browsertest.cc
@@ -23,6 +23,12 @@
static const char kMainWebrtcTestHtmlPage[] =
"/webrtc/webrtc_jsep01_test.html";
+static const char kKeygenAlgorithmRSA[] =
+ "{ name: \"RSASSA-PKCS1-v1_5\", modulusLength: 2048, publicExponent: "
+ "new Uint8Array([1, 0, 1]), hash: \"SHA-256\" }";
+static const char kKeygenAlgorithmECDSA[] =
+ "{ name: \"ECDSA\", namedCurve: \"P-256\" }";
+
// Top-level integration test for WebRTC. It always uses fake devices; see
// WebRtcWebcamBrowserTest for a test that acquires any real webcam on the
// system.
@@ -41,6 +47,8 @@ class WebRtcBrowserTest : public WebRtcTestBase {
// Flag used by TestWebAudioMediaStream to force garbage collection.
command_line->AppendSwitchASCII(switches::kJavaScriptFlags, "--expose-gc");
+
+ // command_line->AppendSwitch("expose-internals-for-testing");
}
void RunsAudioVideoWebRTCCallInTwoTabs(
@@ -77,16 +85,39 @@ class WebRtcBrowserTest : public WebRtcTestBase {
IN_PROC_BROWSER_TEST_F(WebRtcBrowserTest,
RunsAudioVideoWebRTCCallInTwoTabsRSACertificate) {
RunsAudioVideoWebRTCCallInTwoTabs(
- "{ name: \"RSASSA-PKCS1-v1_5\", modulusLength: 2048, publicExponent: "
- "new Uint8Array([1, 0, 1]), hash: \"SHA-256\" }",
- WebRtcTestBase::kUseDefaultVideoCodec);
+ kKeygenAlgorithmRSA, WebRtcTestBase::kUseDefaultVideoCodec);
}
IN_PROC_BROWSER_TEST_F(WebRtcBrowserTest,
RunsAudioVideoWebRTCCallInTwoTabsECDSACertificate) {
RunsAudioVideoWebRTCCallInTwoTabs(
- "{ name: \"ECDSA\", namedCurve: \"P-256\" }",
- WebRtcTestBase::kUseDefaultVideoCodec);
+ kKeygenAlgorithmECDSA, WebRtcTestBase::kUseDefaultVideoCodec);
+}
+
+IN_PROC_BROWSER_TEST_F(WebRtcBrowserTest,
+ RTCCertificateIndexedDBCloningRSA) {
+ ASSERT_TRUE(embedded_test_server()->Start());
+ content::WebContents* tab =
+ OpenTestPageAndGetUserMediaInNewTab(kMainWebrtcTestHtmlPage);
+
+ DeleteDatabase(tab);
+ OpenDatabase(tab);
+ GenerateAndCloneCertificate(tab, kKeygenAlgorithmRSA);
+ CloseDatabase(tab);
+ DeleteDatabase(tab);
+}
+
+IN_PROC_BROWSER_TEST_F(WebRtcBrowserTest,
+ RTCCertificateIndexedDBCloningECDSA) {
+ ASSERT_TRUE(embedded_test_server()->Start());
+ content::WebContents* tab =
+ OpenTestPageAndGetUserMediaInNewTab(kMainWebrtcTestHtmlPage);
+
+ DeleteDatabase(tab);
+ OpenDatabase(tab);
+ GenerateAndCloneCertificate(tab, kKeygenAlgorithmECDSA);
+ CloseDatabase(tab);
+ DeleteDatabase(tab);
}
IN_PROC_BROWSER_TEST_F(WebRtcBrowserTest,
« no previous file with comments | « no previous file | chrome/browser/media/webrtc_browsertest_base.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698