diff options
author | Alex Deymo <deymo@google.com> | 2016-02-10 11:55:06 -0800 |
---|---|---|
committer | Alex Deymo <deymo@google.com> | 2016-02-10 11:57:55 -0800 |
commit | 3f9df0d3c7c771b124c8d4eac127cba8e4ad59eb (patch) | |
tree | f7bcd47d794e51130fa301ad68daa9616ae05fe7 | |
parent | 1c82fec48baf0041d66494c9a3748f34fbbee20c (diff) | |
download | metricsd-3f9df0d3c7c771b124c8d4eac127cba8e4ad59eb.tar.gz |
Fix UploadService unittests.
The unittest was creating a brillo::Daemon in a smart pointer and then
resetting it to a newly created different brillo::Daemon instance. This
creates two brillo::Daemon instances for a short period of time, which
both setup global context (the default message loop).
This patch fixes this situation by deleting the service before creating
a new one.
Bug: 27121855
TEST=`/data/nativetest/metricsd_tests/metricsd_tests` on edison-eng
Change-Id: I3b60cbfcdba77febbfa6104aa0ecad60a29afec5
-rw-r--r-- | uploader/upload_service_test.cc | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/uploader/upload_service_test.cc b/uploader/upload_service_test.cc index 70112f4..0f77fe4 100644 --- a/uploader/upload_service_test.cc +++ b/uploader/upload_service_test.cc @@ -304,6 +304,8 @@ TEST_F(UploadServiceTest, CurrentLogSavedAndResumed) { upload_service_->PersistToDisk(); EXPECT_EQ( 1, upload_service_->current_log_->uma_proto()->histogram_event().size()); + // Destroy the old service before creating a new one. + upload_service_.reset(); upload_service_.reset(new UploadService( "", base::TimeDelta(), base::TimeDelta(), private_dir_, shared_dir_)); upload_service_->InitForTest(nullptr); @@ -325,6 +327,8 @@ TEST_F(UploadServiceTest, CorruptedSavedLog) { // Write a bogus saved log. EXPECT_EQ(5, base::WriteFile(upload_service_->saved_log_path_, "hello", 5)); + // Destroy the old service before creating a new one. + upload_service_.reset(); upload_service_.reset(new UploadService( "", base::TimeDelta(), base::TimeDelta(), private_dir_, shared_dir_)); |