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

Side by Side Diff: media/blink/buffered_data_source_unittest.cc

Issue 1409123005: Add methods for telling V8 how much memory audio/video is using. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Fix html viewer. Created 5 years, 1 month 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 unified diff | Download patch
« no previous file with comments | « media/blink/buffered_data_source.cc ('k') | media/blink/buffered_resource_loader.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2013 The Chromium Authors. All rights reserved. 1 // Copyright 2013 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "base/bind.h" 5 #include "base/bind.h"
6 #include "base/message_loop/message_loop.h" 6 #include "base/message_loop/message_loop.h"
7 #include "base/run_loop.h" 7 #include "base/run_loop.h"
8 #include "media/base/media_log.h" 8 #include "media/base/media_log.h"
9 #include "media/base/mock_filters.h" 9 #include "media/base/mock_filters.h"
10 #include "media/base/test_helpers.h" 10 #include "media/base/test_helpers.h"
(...skipping 100 matching lines...) Expand 10 before | Expand all | Expand 10 after
111 static const char kFileUrl[] = "file:///tmp/bar.webm"; 111 static const char kFileUrl[] = "file:///tmp/bar.webm";
112 static const char kHttpDifferentPathUrl[] = "http://localhost/bar.webm"; 112 static const char kHttpDifferentPathUrl[] = "http://localhost/bar.webm";
113 static const char kHttpDifferentOriginUrl[] = "http://127.0.0.1/foo.webm"; 113 static const char kHttpDifferentOriginUrl[] = "http://127.0.0.1/foo.webm";
114 114
115 class BufferedDataSourceTest : public testing::Test { 115 class BufferedDataSourceTest : public testing::Test {
116 public: 116 public:
117 BufferedDataSourceTest() 117 BufferedDataSourceTest()
118 : view_(WebView::create(NULL)), 118 : view_(WebView::create(NULL)),
119 frame_( 119 frame_(
120 WebLocalFrame::create(blink::WebTreeScopeType::Document, &client_)), 120 WebLocalFrame::create(blink::WebTreeScopeType::Document, &client_)),
121 bytes_received_(0),
121 preload_(BufferedDataSource::AUTO) { 122 preload_(BufferedDataSource::AUTO) {
122 view_->setMainFrame(frame_); 123 view_->setMainFrame(frame_);
123 } 124 }
124 125
125 virtual ~BufferedDataSourceTest() { 126 virtual ~BufferedDataSourceTest() {
126 view_->close(); 127 view_->close();
127 frame_->close(); 128 frame_->close();
128 } 129 }
129 130
130 MOCK_METHOD1(OnInitialize, void(bool)); 131 MOCK_METHOD1(OnInitialize, void(bool));
(...skipping 59 matching lines...) Expand 10 before | Expand all | Expand 10 after
190 191
191 data_source_->Stop(); 192 data_source_->Stop();
192 message_loop_.RunUntilIdle(); 193 message_loop_.RunUntilIdle();
193 } 194 }
194 195
195 void ExpectCreateResourceLoader() { 196 void ExpectCreateResourceLoader() {
196 EXPECT_CALL(*data_source_, CreateResourceLoader(_, _)) 197 EXPECT_CALL(*data_source_, CreateResourceLoader(_, _))
197 .WillOnce(Invoke(data_source_.get(), 198 .WillOnce(Invoke(data_source_.get(),
198 &MockBufferedDataSource::CreateMockResourceLoader)); 199 &MockBufferedDataSource::CreateMockResourceLoader));
199 message_loop_.RunUntilIdle(); 200 message_loop_.RunUntilIdle();
201 bytes_received_ = 0;
200 } 202 }
201 203
202 void Respond(const WebURLResponse& response) { 204 void Respond(const WebURLResponse& response) {
203 loader()->didReceiveResponse(url_loader(), response); 205 loader()->didReceiveResponse(url_loader(), response);
204 message_loop_.RunUntilIdle(); 206 message_loop_.RunUntilIdle();
205 } 207 }
206 208
207 void ReceiveData(int size) { 209 void ReceiveData(int size) {
208 scoped_ptr<char[]> data(new char[size]); 210 scoped_ptr<char[]> data(new char[size]);
209 memset(data.get(), 0xA5, size); // Arbitrary non-zero value. 211 memset(data.get(), 0xA5, size); // Arbitrary non-zero value.
210 212
211 loader()->didReceiveData(url_loader(), data.get(), size, size); 213 loader()->didReceiveData(url_loader(), data.get(), size, size);
212 message_loop_.RunUntilIdle(); 214 message_loop_.RunUntilIdle();
215 bytes_received_ += size;
216 EXPECT_EQ(bytes_received_, data_source_->GetMemoryUsage());
213 } 217 }
214 218
215 void FinishLoading() { 219 void FinishLoading() {
216 data_source_->set_loading(false); 220 data_source_->set_loading(false);
217 loader()->didFinishLoading(url_loader(), 0, -1); 221 loader()->didFinishLoading(url_loader(), 0, -1);
218 message_loop_.RunUntilIdle(); 222 message_loop_.RunUntilIdle();
219 } 223 }
220 224
221 MOCK_METHOD1(ReadCallback, void(int size)); 225 MOCK_METHOD1(ReadCallback, void(int size));
222 226
(...skipping 69 matching lines...) Expand 10 before | Expand all | Expand 10 after
292 296
293 scoped_ptr<MockBufferedDataSource> data_source_; 297 scoped_ptr<MockBufferedDataSource> data_source_;
294 298
295 scoped_ptr<TestResponseGenerator> response_generator_; 299 scoped_ptr<TestResponseGenerator> response_generator_;
296 MockWebFrameClient client_; 300 MockWebFrameClient client_;
297 WebView* view_; 301 WebView* view_;
298 WebLocalFrame* frame_; 302 WebLocalFrame* frame_;
299 303
300 StrictMock<MockBufferedDataSourceHost> host_; 304 StrictMock<MockBufferedDataSourceHost> host_;
301 base::MessageLoop message_loop_; 305 base::MessageLoop message_loop_;
306 int bytes_received_;
302 307
303 private: 308 private:
304 // Used for calling BufferedDataSource::Read(). 309 // Used for calling BufferedDataSource::Read().
305 uint8 buffer_[kDataSize]; 310 uint8 buffer_[kDataSize];
306 311
307 BufferedDataSource::Preload preload_; 312 BufferedDataSource::Preload preload_;
308 313
309 DISALLOW_COPY_AND_ASSIGN(BufferedDataSourceTest); 314 DISALLOW_COPY_AND_ASSIGN(BufferedDataSourceTest);
310 }; 315 };
311 316
(...skipping 162 matching lines...) Expand 10 before | Expand all | Expand 10 after
474 // Issue a pending read but trigger an error to force a retry. 479 // Issue a pending read but trigger an error to force a retry.
475 EXPECT_CALL(*this, ReadCallback(kDataSize)); 480 EXPECT_CALL(*this, ReadCallback(kDataSize));
476 EXPECT_CALL(host_, AddBufferedByteRange(kDataSize, (kDataSize * 2) - 1)); 481 EXPECT_CALL(host_, AddBufferedByteRange(kDataSize, (kDataSize * 2) - 1));
477 ReadAt(kDataSize); 482 ReadAt(kDataSize);
478 base::RunLoop run_loop; 483 base::RunLoop run_loop;
479 EXPECT_CALL(*data_source_, CreateResourceLoader(_, _)) 484 EXPECT_CALL(*data_source_, CreateResourceLoader(_, _))
480 .WillOnce( 485 .WillOnce(
481 DoAll(InvokeWithoutArgs(&run_loop, &base::RunLoop::Quit), 486 DoAll(InvokeWithoutArgs(&run_loop, &base::RunLoop::Quit),
482 Invoke(data_source_.get(), 487 Invoke(data_source_.get(),
483 &MockBufferedDataSource::CreateMockResourceLoader))); 488 &MockBufferedDataSource::CreateMockResourceLoader)));
489 bytes_received_ = 0;
484 loader()->didFail(url_loader(), response_generator_->GenerateError()); 490 loader()->didFail(url_loader(), response_generator_->GenerateError());
485 run_loop.Run(); 491 run_loop.Run();
486 Respond(response_generator_->Generate206(kDataSize)); 492 Respond(response_generator_->Generate206(kDataSize));
487 ReceiveData(kDataSize); 493 ReceiveData(kDataSize);
488 FinishLoading(); 494 FinishLoading();
489 EXPECT_FALSE(data_source_->loading()); 495 EXPECT_FALSE(data_source_->loading());
490 Stop(); 496 Stop();
491 } 497 }
492 498
493 TEST_F(BufferedDataSourceTest, Http_PartialResponse) { 499 TEST_F(BufferedDataSourceTest, Http_PartialResponse) {
(...skipping 503 matching lines...) Expand 10 before | Expand all | Expand 10 after
997 // Read a bit from the beginning. 1003 // Read a bit from the beginning.
998 ReadAt(0); 1004 ReadAt(0);
999 EXPECT_CALL(*this, ReadCallback(kDataSize)); 1005 EXPECT_CALL(*this, ReadCallback(kDataSize));
1000 EXPECT_CALL(host_, AddBufferedByteRange(0, kDataSize - 1)); 1006 EXPECT_CALL(host_, AddBufferedByteRange(0, kDataSize - 1));
1001 ReceiveData(kDataSize); 1007 ReceiveData(kDataSize);
1002 1008
1003 EXPECT_FALSE(active_loader()); 1009 EXPECT_FALSE(active_loader());
1004 } 1010 }
1005 1011
1006 } // namespace media 1012 } // namespace media
OLDNEW
« no previous file with comments | « media/blink/buffered_data_source.cc ('k') | media/blink/buffered_resource_loader.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698