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

Unified Diff: talk/app/webrtc/dtlsidentitystore_unittest.cc

Issue 1151943005: Ability to specify KeyType (RSA, ECDSA) for SSLIdentity generation in libjingle (Closed) Base URL: https://chromium.googlesource.com/external/webrtc.git@master
Patch Set: Addressing ASAN, LSAN issues in unittests Created 5 years, 6 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
Index: talk/app/webrtc/dtlsidentitystore_unittest.cc
diff --git a/talk/app/webrtc/dtlsidentitystore_unittest.cc b/talk/app/webrtc/dtlsidentitystore_unittest.cc
index c0b204a85f9d93de9cff2ae1059fd21969a7dea3..370b3687363e4679efbfe125f7c3fe4f1b18ca28 100644
--- a/talk/app/webrtc/dtlsidentitystore_unittest.cc
+++ b/talk/app/webrtc/dtlsidentitystore_unittest.cc
@@ -32,13 +32,13 @@
#include "webrtc/base/logging.h"
#include "webrtc/base/ssladapter.h"
-using webrtc::DtlsIdentityStore;
+using webrtc::DtlsIdentityStoreImpl;
using webrtc::WebRtcSessionDescriptionFactory;
static const int kTimeoutMs = 10000;
class MockDtlsIdentityRequestObserver :
- public webrtc::DTLSIdentityRequestObserver {
+ public webrtc::DtlsIdentityRequestObserver {
public:
MockDtlsIdentityRequestObserver()
: call_back_called_(false), last_request_success_(false) {}
@@ -81,8 +81,8 @@ class DtlsIdentityStoreTest : public testing::Test {
protected:
DtlsIdentityStoreTest()
: worker_thread_(new rtc::Thread()),
- store_(new DtlsIdentityStore(rtc::Thread::Current(),
- worker_thread_.get())),
+ store_(new DtlsIdentityStoreImpl(rtc::Thread::Current(),
+ worker_thread_.get())),
observer_(
new rtc::RefCountedObject<MockDtlsIdentityRequestObserver>()) {
CHECK(worker_thread_->Start());
@@ -98,14 +98,14 @@ class DtlsIdentityStoreTest : public testing::Test {
}
rtc::scoped_ptr<rtc::Thread> worker_thread_;
- rtc::scoped_ptr<DtlsIdentityStore> store_;
+ rtc::scoped_ptr<DtlsIdentityStoreImpl> store_;
rtc::scoped_refptr<MockDtlsIdentityRequestObserver> observer_;
};
-TEST_F(DtlsIdentityStoreTest, RequestIdentitySuccess) {
+TEST_F(DtlsIdentityStoreTest, RequestIdentitySuccessRSA) {
EXPECT_TRUE_WAIT(store_->HasFreeIdentityForTesting(), kTimeoutMs);
- store_->RequestIdentity(observer_.get());
+ store_->RequestIdentity(rtc::KT_RSA, observer_.get());
EXPECT_TRUE_WAIT(observer_->LastRequestSucceeded(), kTimeoutMs);
EXPECT_TRUE_WAIT(store_->HasFreeIdentityForTesting(), kTimeoutMs);
@@ -113,15 +113,41 @@ TEST_F(DtlsIdentityStoreTest, RequestIdentitySuccess) {
observer_->Reset();
// Verifies that the callback is async when a free identity is ready.
- store_->RequestIdentity(observer_.get());
+ store_->RequestIdentity(rtc::KT_RSA, observer_.get());
EXPECT_FALSE(observer_->call_back_called());
EXPECT_TRUE_WAIT(observer_->LastRequestSucceeded(), kTimeoutMs);
}
-TEST_F(DtlsIdentityStoreTest, DeleteStoreEarlyNoCrash) {
+TEST_F(DtlsIdentityStoreTest, RequestIdentitySuccessECDSA) {
+ EXPECT_TRUE_WAIT(store_->HasFreeIdentityForTesting(), kTimeoutMs);
+
+ store_->RequestIdentity(rtc::KT_ECDSA, observer_.get());
+ EXPECT_TRUE_WAIT(observer_->LastRequestSucceeded(), kTimeoutMs);
+
+ EXPECT_TRUE_WAIT(store_->HasFreeIdentityForTesting(), kTimeoutMs);
+
+ observer_->Reset();
+
+ // Verifies that the callback is async when a free identity is ready.
+ store_->RequestIdentity(rtc::KT_RSA, observer_.get());
+ EXPECT_FALSE(observer_->call_back_called());
+ EXPECT_TRUE_WAIT(observer_->LastRequestSucceeded(), kTimeoutMs);
+}
+
+TEST_F(DtlsIdentityStoreTest, DeleteStoreEarlyNoCrashRSA) {
+ EXPECT_FALSE(store_->HasFreeIdentityForTesting());
+
+ store_->RequestIdentity(rtc::KT_RSA, observer_.get());
+ store_.reset();
+
+ worker_thread_->Stop();
+ EXPECT_FALSE(observer_->call_back_called());
+}
+
+TEST_F(DtlsIdentityStoreTest, DeleteStoreEarlyNoCrashECDSA) {
EXPECT_FALSE(store_->HasFreeIdentityForTesting());
- store_->RequestIdentity(observer_.get());
+ store_->RequestIdentity(rtc::KT_ECDSA, observer_.get());
store_.reset();
worker_thread_->Stop();

Powered by Google App Engine
This is Rietveld 408576698