Memory Leak in CertificateProvisioningTest

(This is a merge of http://go/wvgerrit/102084.)

No one was claiming ownership of the metrics object in
CertificateProvisioningTest, resulting in a leak. This patch makes the
test hold onto ownership.

Bug: 159486086
Test: CE CDM Unit Tests
Test: Android Unit Tests
Change-Id: I84710782b7a60d6bd3a7eda981de4f0af877fc39
This commit is contained in:
John W. Bruce
2020-07-07 15:07:16 -07:00
parent 37b8b51a22
commit 5f232c5436

View File

@@ -65,18 +65,19 @@ class TestStubCryptoSessionFactory : public CryptoSessionFactory {
using ::testing::_; using ::testing::_;
class CertificateProvisioningTest : public WvCdmTestBase { class CertificateProvisioningTest : public WvCdmTestBase {
public:
protected: protected:
void SetUp() override { void SetUp() override {
WvCdmTestBase::SetUp(); WvCdmTestBase::SetUp();
CryptoSession::SetCryptoSessionFactory(new TestStubCryptoSessionFactory()); CryptoSession::SetCryptoSessionFactory(new TestStubCryptoSessionFactory());
metrics_.reset(new metrics::CryptoMetrics());
certificate_provisioning_.reset( certificate_provisioning_.reset(
new CertificateProvisioning(new metrics::CryptoMetrics())); new CertificateProvisioning(metrics_.get()));
} }
void TearDown() override {} void TearDown() override {}
std::unique_ptr<metrics::CryptoMetrics> metrics_;
std::unique_ptr<CertificateProvisioning> certificate_provisioning_; std::unique_ptr<CertificateProvisioning> certificate_provisioning_;
}; };