1// Copyright 2014 The Chromium Authors. All rights reserved. 2// Use of this source code is governed by a BSD-style license that can be 3// found in the LICENSE file. 4 5#include "base/thread_task_runner_handle.h" 6#include "content/browser/fileapi/mock_file_update_observer.h" 7#include "testing/gtest/include/gtest/gtest.h" 8 9namespace storage { 10 11MockFileUpdateObserver::MockFileUpdateObserver() : is_ready_(false) { 12} 13 14MockFileUpdateObserver::~MockFileUpdateObserver() { 15} 16 17// static 18UpdateObserverList MockFileUpdateObserver::CreateList( 19 MockFileUpdateObserver* observer) { 20 UpdateObserverList list; 21 return list.AddObserver(observer, base::ThreadTaskRunnerHandle::Get().get()); 22} 23 24void MockFileUpdateObserver::OnStartUpdate(const FileSystemURL& url) { 25 if (is_ready_) 26 ++start_update_count_[url]; 27} 28 29void MockFileUpdateObserver::OnUpdate(const FileSystemURL& url, int64 delta) { 30 if (!is_ready_) 31 return; 32 int start = start_update_count_[url]; 33 int end = end_update_count_[url]; 34 EXPECT_LT(0, start - end); 35} 36 37void MockFileUpdateObserver::OnEndUpdate(const FileSystemURL& url) { 38 if (is_ready_) 39 ++end_update_count_[url]; 40} 41 42} // namespace storage 43